树莓派的CPU是保护有硬件看门狗的,可以通过安装模块和值守程序来实现看门狗防止树莓派死机。
安装方法一:
watchdog.sh的源码:
#!/usr/bin/env bash echo "[+] Activating Temperature Sensor" modprobe bcm2708_wdog echo "bcm2708_wdog" >> /etc/modules echo "[+]Installing Watchdog" apt-get -y install watchdog chkconfig echo "[+]Setting Up Watchdog" chkconfig watchdog on sed -i 's/#max-load-1[^5]/max-load-1\ /g' /etc/watchdog.conf sed -i 's/#\(watchdog-device\t[\ ]*\)\=/\1\t\=/g' /etc/watchdog.conf sed -i 's/#\(temperature-device[\ ]*\)\=/\1\ \= \/sys\/class\/thermal\/thermal\_zone0\/temp/g' /etc/watchdog.conf sed -i 's/#\(max-temperature[\ ]*\)\=\ 120/\1\ \=\ 75000/g' /etc/watchdog.conf sed -i 's/#\(interval[\ ]*\)\=\ 1/\1\ \=\ 10 /g' /etc/watchdog.conf /etc/init.d/watchdog start
运行:
sudo sh watchdog.sh
安装方法二:
1.加载看门狗模块,编辑/etc/modules文件,添加一行“bcm2708_wdog”
sudo modprobe bcm2708_wdog sudo nano /etc/modules
添加一行”bcm2708_wdog”
2.安装系统配置软件和看门狗程序
sudo apt-get install chkconfig watchdog
3.配置看门狗程序,编辑“/etc/watchdog.conf”文件
sudo nano /etc/watchdog.conf
去掉 watchdog-device = /dev/watchdog 前的#号,让看门狗设备对应树莓派的硬件看门狗
去掉 max-load-1 = 24 前的#号,当1分钟load进程超过24个的时候就会重启
还可以设置高温复位:
去掉
temperature-device =
max-temperature = 120
前的#号,改为
temperature-device = /sys/class/thermal/thermal_zone0/temp
max-temperature = 80000
温度超过80度就会引起重启,保护CPU。
配置完后,保存(Ctrl+O),退出(ctrl+x)。
4.配置看门狗程序,开机自动运行
chkconfig watchdog on
5.启动看门狗
sudo /etc/init.d/watchdog start