当前位置: 首页 > article >正文

系统看门狗配置--以ubuntu为例

linux系统配置看门狗

以 ubuntu 系统配置看门狗为例
配置看门狗使用的脚本文件,需要使用管理员权限来执行:
配置是:系统每 30S 喂一次狗,超过 60S 不进行投喂,就会自动重启。

1. 系统脚本内容:

#!/bin/bash

# 1. 设置要修改的参数
RUNTIME_WATCHDOG="RuntimeWatchdogSec=30s"
REBOOT_WATCHDOG="RebootWatchdogSec=60s"

# 2. 修改 /etc/systemd/system.conf 文件
# 如果 RuntimeWatchdogSec 和 RebootWatchdogSec 存在且已注释,去掉注释并修改它们;如果不存在,则添加。

# 修改 RuntimeWatchdogSec
if grep -q "^#RuntimeWatchdogSec=" /etc/systemd/system.conf; then
    sudo sed -i "s/^#RuntimeWatchdogSec=.*/$RUNTIME_WATCHDOG/" /etc/systemd/system.conf
elif grep -q "^RuntimeWatchdogSec=" /etc/systemd/system.conf; then
    sudo sed -i "s/^RuntimeWatchdogSec=.*/$RUNTIME_WATCHDOG/" /etc/systemd/system.conf
else
    echo "$RUNTIME_WATCHDOG" | sudo tee -a /etc/systemd/system.conf
fi

# 修改 RebootWatchdogSec
if grep -q "^#RebootWatchdogSec=" /etc/systemd/system.conf; then
    sudo sed -i "s/^#RebootWatchdogSec=.*/$REBOOT_WATCHDOG/" /etc/systemd/system.conf
elif grep -q "^RebootWatchdogSec=" /etc/systemd/system.conf; then
    sudo sed -i "s/^RebootWatchdogSec=.*/$REBOOT_WATCHDOG/" /etc/systemd/system.conf
else
    echo "$REBOOT_WATCHDOG" | sudo tee -a /etc/systemd/system.conf
fi

# 3. 重新加载 systemd 配置
sudo systemctl daemon-reload

# 4. 提示用户脚本已完成并准备重启
echo "systemd watchdog settings updated. System will reboot in 5 seconds..."

# 5. 等待并重启系统
sleep 5
sudo reboot

可以直接放置在系统启动脚本中,也可以第一次执行以后,放置在系统的某个配置文件中,方便后续的自动修改与维护。可以创建一个文件夹几种统一存放,而不是放在启动服务中,也还是只执行一次。

2. 设备树配置部分

设备树中搜索wdt可以看到位于rk3588s.dtsi文件中:
在这里插入图片描述

在包含rk3588s.dtsi文件的自定义配置设备树文件中使能即可

3. 看门狗 (Watchdog) 原理

看门狗通过不断地定期检查系统的健康状况来工作。具体来说,系统在正常工作时会定期“喂养”(或称“重置”)看门狗计时器,向看门狗发送一个“心跳信号”或“喂狗信号”。如果系统未能在规定时间内喂狗(即未能重置计时器),则看门狗认为系统已经出现故障,采取自动复位(重启)等措施。  

3.1 工作机制

● 喂狗:当系统正常运行时,软件或硬件定期向看门狗发送“喂狗信号”。
● 超时:如果系统出现卡死、崩溃或其他异常,未能在规定时间内发送喂狗信号,则看门狗计时器会溢出。
● 复位或纠错:当看门狗计时器溢出时,它会触发一个复位信号,通常会让系统重启,恢复到一个已知的稳定状态。

4. 看门狗类型

看门狗可以分为两种类型:硬件看门狗和软件看门狗。

4.1 硬件看门狗

硬件看门狗是专门的硬件模块,在嵌入式系统中独立运行。其主要特点是:
● 独立性:硬件看门狗通常与系统主处理器分开工作,因此即使系统软件崩溃或卡死,硬件看门狗仍然能够发挥作用。
● 高可靠性:由于是独立的硬件模块,硬件看门狗不容易受到系统问题的影响。
● 自动复位:当系统没有按时喂狗时,硬件看门狗会自动发出复位信号,强制重启系统。

4.2 软件看门狗

软件看门狗是一种基于软件实现的机制,它依赖于操作系统和软件代码来定期检查和重置计时器。其特点是:
● 灵活性:软件看门狗可以根据实际需要进行灵活配置,可以与操作系统紧密集成。
● 受限性:如果系统的操作系统或关键任务发生问题,软件看门狗可能会失效,因为它依赖于系统的正常运行。


http://www.kler.cn/a/502401.html

相关文章:

  • 【机器学习案列】学生抑郁可视化及预测分析
  • Docker Desktop 构建java8基础镜像jdk安装配置失效解决
  • 【Linux系统】—— vim 的使用
  • 备战蓝桥杯:树的存储与遍历(dfs和bfs)
  • spring boot 支持jsonp请求
  • 30天开发操作系统 第 12 天 -- 定时器 v1.0
  • 数据分析-使用Excel透视图/表分析禅道数据
  • linux网络 | 深度理解https加密过程 | 模拟设计方案
  • Springcloudgateway 请求无响应,要怎么处理
  • 在 Alpine Linux 下通过 Docker 部署 PostgreSQL 服务器
  • FFmpeg硬件解码
  • Redis HyperLogLog
  • linux 安装docker-compose
  • 黑马linux笔记(03)在Linux上部署各类软件 MySQL5.7/8.0 Tomcat(JDK) Nginx RabbitMQ
  • 基于单片机的数字气压计设计
  • 《零基础Go语言算法实战》【题目 2-25】goroutine 的执行权问题
  • 全网首发:嵌入式交叉编译libssh,正确编译脚本
  • LLM进化下的Agent演变及软件重构下的一点思考
  • Golang学习笔记_22——Reader示例
  • java项目之在线文档管理系统源码(springboot+mysql+vue+文档)
  • 从光子到图像——相机如何捕获世界?
  • 53_多级缓存基础环境搭建
  • doris:数据类型
  • win10电脑 定时关机
  • 5、波分复用 WDM
  • java项目之房屋租赁系统源码(springboot+mysql+vue)