gzncpcc

人生如逆旅,我亦是行人

0%

树莓派系统中一些常见的问题与解决方法

vim打开写入命令时提示E212

运行环境:在wm虚拟机的Linux中运行sudo命令时,在编写需要root权限的配置文件过程

出错原因:没有切换到root用户权限,文件编辑完毕后入输入:wq 时,出现 E212:无法打开并写入文件的错误提示信息,因为在该目录下当前用户没有写的权限。
在这里插入图片描述

解决办法如下:

第一步:保存文件时用 :w ! sudo tee % (tee 用于读取输入文件,同时保存 ,%表示当前编辑文件)
在这里插入图片描述

第二步:输入自己的虚拟机Linux的密码

vim报错 E37: No write since last change (add ! to override)

用 vi 命令编辑文本文件,没有文件写入权限的时候会报这个错。:q :wq 怎么都不能退出。
这时只需 ctrl+z 即可,或者在退出命令后加 ! 忽略提示 :q!

树莓派启动一段时间后报错

1
2
3
4
5
6
/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卡问题

树莓派新建桌面快捷程序

新建xxx.desktop文件

1
vim /usr/share/applications/XueXi.desktop

键入以下内容

1
2
3
4
5
6
7
8
[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为自定义图标图片

```保存退出后在树莓派的图形化界面中的开始菜单就能看到,点击图标右键可以添加到桌面
1
2
3
4
![在这里插入图片描述](https://img-blog.csdnimg.cn/603d765f03244faa8c3149b3bed27a87.png)
**注意:** shell 文件需要先给可执行权限,否则会报错
```shell
chmod +x /home/pi/Downloads/TechXueXi-20220126/run.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
![在这里插入图片描述](https://img-blog.csdnimg.cn/266a109567b941499b8d473130d20d99.png)
这样就能实现傻瓜式双击桌面图标运行python程序/shell命令。


## shell脚本监测程序是否挂掉然后重新运行
```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 &

树莓派安装docker

  1. 一键脚本:

    1
    sudo curl -sSL https://get.docker.com | sh
  2. 测试是否安装成功:

    1
    sudo docker run hello-world

    如果 Docker 安装成功,你会看到一条消息:“Hello from Docker!”

  3. 修改国为内镜像源–清华源

    1
    2
    3
    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

    设置开机自启

    1
    2
    3
    sudo systemctl daemon-reload  #重启 systemctl 守护进程
    sudo systemctl enable docker #设置 Docker 开机启动
    sudo systemctl start docker #开启 Docker 服务

树莓派docker安装motioneye

1
2
3
4
5
6
7
8
9
10
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

树莓派学习强国

更改系统镜像源,推荐清华镜像,速度快
编辑/etc/apt/sources.list文件:

1
2
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文件:

1
2
deb http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui
deb-src http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui

更新源
···shell
sudo update
sudo upgrade

1
2
3
4
安装包
```shell
sudo apt-get install libzbar0 chromium-driver
pip install -r requirements.txt

直接运行源码

1
python pandalearning.py #注意修改路径
坚持原创技术分享,您的支持将鼓励我继续创作!

欢迎关注我的其它发布渠道