1、vim打开写入命令时提示E212
运行环境:在wm虚拟机的Linux中运行sudo命令时,在编写需要root权限的配置文件过程
出错原因:没有切换到root用户权限,文件编辑完毕后入输入:wq 时,出现 E212:无法打开并写入文件的错误提示信息,因为在该目录下当前用户没有写的权限。
解决办法如下:
第一步:保存文件时用 :w ! sudo tee %
(tee 用于读取输入文件,同时保存 ,%表示当前编辑文件)
第二步:输入自己的虚拟机Linux的密码
2、vim报错 E37: No write since last change (add ! to override)
用 vi 命令编辑文本文件,没有文件写入权限的时候会报这个错。:q :wq
怎么都不能退出。
这时只需 ctrl+z 即可,或者在退出命令后加 ! 忽略提示 :q!
3 、树莓派启动一段时间后报错
/usr/bin/xauth: error in locking authority file /home/pi/.Xauthority
sudo: unable to execute /usr/sbin/service: Input/output error
Failed to open initctl fifo: No such device or address
Failed to talk to init daemon.
ls: reading directory '.': Input/output error
sh: 1: /usr/bin/xauth: Input/output error
SSH可以正常连接
vim
sudo
都用不了
命令重启也不行
只能手动重启。。。造孽啊!!!
暂未找到解决办法,怀疑是SD卡问题
4、树莓派新建桌面快捷程序
新建xxx.desktop文件
vim /usr/share/applications/XueXi.desktop
键入以下内容
[Desktop Entry]
Encoding=UTF-8
Name=XueXi
Exec=/home/pi/Downloads/TechXueXi-20220126/run.sh
Icon=/home/pi/Downloads/TechXueXi-20220126/log.jpg
Terminal=true
Type=Application
StartupNotify=true
其中Exec为执行shell脚本文件
Icon为自定义图标图片
:wq
保存退出后在树莓派的图形化界面中的开始菜单就能看到,点击图标右键可以添加到桌面
注意: shell 文件需要先给可执行权限,否则会报错
chmod +x /home/pi/Downloads/TechXueXi-20220126/run.sh
run.sh
文件则为shell
脚本,里面可以写一些terminal
命令或者c/c++
语言
这样就能实现傻瓜式双击桌面图标运行python程序/shell命令。
5、shell脚本监测程序是否挂掉然后重新运行
#!/bin/sh
while true
do
ps -ef | grep "mainpy" | grep -v "grep"
if [ "$?" -eq 1 ] #上一条命令返回值0成功,1失败
then
python /home/pi/Desktop/motion_video/mainpy.py #要运行的应用程序、脚本等
echo "process has been restarted!"
else
echo "process already started!"
fi
sleep 10
done
最后不要忘记了修改新增脚本的权限,执行chmod 777 checkpython.sh
后台运行:nohup sh checkpython.sh &
6、树莓派安装docker
- 一键脚本:
sudo curl -sSL https://get.docker.com | sh
- 测试是否安装成功:
sudo docker run hello-world
如果 Docker 安装成功,你会看到一条消息:“Hello from Docker!”
- 修改国为内镜像源–清华源
echo "deb [arch=armhf] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian \
$(lsb_release -cs) stable" | \
sudo tee /etc/apt/sources.list.d/docker.list
设置开机自启
sudo systemctl daemon-reload #重启 systemctl 守护进程
sudo systemctl enable docker #设置 Docker 开机启动
sudo systemctl start docker #开启 Docker 服务
7、树莓派docker安装motioneye
sudo docker run --name="motioneye" \
-p 80:8081 \
-p 8765:8765 \
--hostname="motioneye" \
-v /etc/localtime:/etc/localtime:ro \
-v /etc/motioneye:/etc/motioneye \
-v /var/lib/motioneye:/var/lib/motioneye \
--restart="always" \
--detach=true \
ccrisan/motioneye:master-armhf
访问方式: http://ip地址:8765
添加网络摄像头rstp
8、树莓派学习强国
更改系统镜像源,推荐清华镜像,速度快
编辑/etc/apt/sources.list文件:
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi
编辑/etc/apt/sources.list.d/raspi.list文件:
deb http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui
deb-src http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui
更新源
sudo update
sudo upgrade
安装包
sudo apt-get install libzbar0 chromium-driver
pip install -r requirements.txt
直接运行源码
python pandalearning.py #注意修改路径
9、永久解决树莓派Vim无法复制(右键显示可视)的问题
这个问题网上找了好多都是临时解决的版本,是在命令模式输入:set mouse=v,然而每次打开vim都要输入这个命令,甚是麻烦。
因此使用如下方法一劳永逸的解决vim右键显示可视的问题
安装Vim
sudo apt-get install vim
打开Vim默认配置文件
sudo vim /usr/share/vim/vim82/defaults.vim
找到以下代码的位置 (大概在82行)
if has('mouse')
if &term =~ 'xterm'
set mouse=a
else
set mouse=nvi
endif
endif
将set mouse=a
改为 set mouse-=a
,保存后立即生效。