系统看门狗配置--以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; thensudo sed -i "s/^#RuntimeWatchdogSec=.*/$RUNTIME_WATCHDOG/" /etc/systemd/system.conf
elif grep -q "^RuntimeWatchdogSec=" /etc/systemd/system.conf; thensudo sed -i "s/^RuntimeWatchdogSec=.*/$RUNTIME_WATCHDOG/" /etc/systemd/system.conf
elseecho "$RUNTIME_WATCHDOG" | sudo tee -a /etc/systemd/system.conf
fi# 修改 RebootWatchdogSec
if grep -q "^#RebootWatchdogSec=" /etc/systemd/system.conf; thensudo sed -i "s/^#RebootWatchdogSec=.*/$REBOOT_WATCHDOG/" /etc/systemd/system.conf
elif grep -q "^RebootWatchdogSec=" /etc/systemd/system.conf; thensudo sed -i "s/^RebootWatchdogSec=.*/$REBOOT_WATCHDOG/" /etc/systemd/system.conf
elseecho "$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.mzph.cn/bicheng/67913.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Stable Diffusion本地部署教程(附安装包)

想使用Stable Diffusion需要的环境有哪些呢? python3.10.11(至少也得3.10.6以上):依赖python环境NVIDIA:GPUgit:从github上下载包(可选,由于我已提供安装包,你可以不用git)Stable Diffusion安装包工具包: NVIDIA:https://developer.nvidia.com/cuda-toolkit-archiv…

opencv的NLM去噪算法

NLM(Non-Local Means)去噪算法是一种基于图像块(patch)相似性的去噪方法。其基本原理是: 图像块相似性:算法首先定义了一个搜索窗口(search window),然后在该窗口内寻找…

Docker运维高级容器技术知识点总结

1、虚拟机部署和容器化部署的区别是什么&#xff1f; 1、技术基础&#xff1a; <1>.虚拟化技术在物理硬件上创建虚拟机&#xff0c;每台虚拟机运行自己完整的操作系统、从而实现资源隔离。 <2>.容器化技术&#xff1a;将应用程序打包在容器内&#xff0c;在进程空间…

双模充电桩发展前景:解锁新能源汽车未来的金钥匙,市场潜力无限

随着全球能源转型的浪潮席卷而来&#xff0c;新能源汽车行业正以前所未有的速度蓬勃发展&#xff0c;而作为其坚实后盾的充电基础设施&#xff0c;特别是双模充电桩&#xff0c;正逐渐成为推动这一变革的关键力量。本文将从多维度深入剖析双模充电桩的市场现状、显著优势、驱动…

python3GUI--大屏可视化-传染病督导平台 By:PyQt5

文章目录 一&#xff0e;前言二&#xff0e;预览三&#xff0e;软件组成&开发心得1.样式&使用方法2.左侧表格实现3.设计4.学习5.体验效果 四&#xff0e;代码分享1.环形渐变进度组件2.自定义图片的背景组件 五&#xff0e;总结 大小&#xff1a;60.9 M&#xff0c;软件…

某漫画网站JS逆向反混淆流程分析

文章目录 1. 写在前面1. 接口分析2. 反混淆分析 【&#x1f3e0;作者主页】&#xff1a;吴秋霖 【&#x1f4bc;作者介绍】&#xff1a;擅长爬虫与JS加密逆向分析&#xff01;Python领域优质创作者、CSDN博客专家、阿里云博客专家、华为云享专家。一路走来长期坚守并致力于Pyth…

ffmpeg aac s16 encode_audio.c

用ffmpeg库时&#xff0c;用代码对pcm内容采用aac编码进行压缩&#xff0c;出现如下错误。 [aac 000002bc5edc6e40] Format aac detected only with low score of 1, misdetection possible! [aac 000002bc5edc8140] Error decoding AAC frame header. [aac 000002bc5edc81…

Vue.js组件开发,AI时代的前端新玩法

AI可不只是写写小说、聊聊天&#xff0c;现在它的触角已经伸到了程序员的代码世界里。特别是前端开发&#xff0c;很多人都在尝试用ChatGPT或者类似的AI工具来写代码&#xff0c;甚至直接生成Vue.js组件。有些人感叹&#xff0c;"写代码的时代是不是要结束了&#xff1f;&…

深度学习的原理和应用

一、深度学习的原理 深度学习是机器学习领域的一个重要分支&#xff0c;其原理基于多层神经网络结构和优化算法。以下是深度学习的核心原理&#xff1a; 多层神经网络结构&#xff1a;深度学习模型通常由多层神经元组成&#xff0c;这些神经元通过权重和偏置相互连接。输入数据…

mv指令详解

&#x1f3dd;️专栏&#xff1a;计算机操作系统 &#x1f305;主页&#xff1a;猫咪-9527-CSDN博客 “欲穷千里目&#xff0c;更上一层楼。会当凌绝顶&#xff0c;一览众山小。” 目录 基本语法 主要功能 常用选项详解 1. 移动文件或目录 2. 重命名文件或目录 3. -i&am…

vue3树形组件+封装+应用

文章目录 概要应用场景代码注释综合评价注意事项功能拓展代码说明概要 创建一个基于Vue 3的树形结构组件,用于展示具有层级关系的数据,并提供了节点展开/折叠、点击等交互功能。以下是对其应用场景、代码注释以及综合评价和注意事项的详细说明。 应用场景 这个组件适用于需…

5 分布式ID

这里讲一个比较常用的分布式防重复的ID生成策略&#xff0c;雪花算法 一个用户体量比较大的分布式系统必然伴随着分表分库&#xff0c;分机房部署&#xff0c;单体的部署方式肯定是承载不了这么大的体量。 雪花算法的结构说明 如下图所示: 雪花算法组成 从上图我们可以看…

怎么实现Redis的高可用?

大家好&#xff0c;我是锋哥。今天分享关于【怎么实现Redis的高可用&#xff1f;】面试题。希望对大家有帮助&#xff1b; 怎么实现Redis的高可用&#xff1f; 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 为了实现 Redis 的高可用性&#xff0c;我们需要保证在发…

牛客网刷题 ——C语言初阶(6指针)——BC106 上三角矩阵判定

1. 题目描述——BC106 上三角矩阵判定 牛客网OJ题链接 描述 KiKi想知道一个n阶方矩是否为上三角矩阵&#xff0c;请帮他编程判定。上三角矩阵即主对角线以下的元素都为0的矩阵&#xff0c;主对角线为从矩阵的左上角至右下角的连线。 示例 输入&#xff1a; 3 1 2 3 0 4 5 0 0…

H266/VVC 帧内预测中 ISP 技术

帧内子划分 ISP ISP 技术是在 JVET-2002-v3 提案中详细介绍其原理&#xff0c;在 VTM8 中完整展示算法。ISP是线基内预测&#xff08;LIP&#xff09;模式的更新版本&#xff0c;它改善了原始方法在编码增益和复杂度之间的权衡&#xff0c;ISP 算法的核心原理就是利用较近的像…

了解npm:JavaScript包管理工具

在JavaScript的生态系统中&#xff0c;npm&#xff08;Node Package Manager&#xff09;无疑是一个举足轻重的存在。它不仅是Node.js的包管理器&#xff0c;更是前端开发不可或缺的一部分&#xff0c;为开发者提供了丰富的包资源、便捷的包管理以及强大的社区支持。本文将深入…

CNN Test Data

由于数据量过大&#xff0c;打不开了 搞一组小的吧。收工睡觉 https://download.csdn.net/download/spencer_tseng/90256048

自动化测试脚本实践:基于 Bash 的模块化测试框架

前言 在现代软件开发中&#xff0c;测试自动化是确保软件质量和稳定性的核心手段之一。随着开发周期的缩短和功能模块的增多&#xff0c;手动测试逐渐无法满足高效性和准确性的需求。因此&#xff0c;测试人员需要依赖自动化工具来提升测试效率&#xff0c;减少人为干预和错误。…

verilogHDL仿真详解

前言 Verilog HDL中提供了丰富的系统任务和系统函数&#xff0c;用于对仿真环境、文件操作、时间控制等进行操作。&#xff08;后续会进行补充&#xff09; 正文 一、verilogHDL仿真详解 timescale 1ns/1ps //时间单位为1ns&#xff0c;精度为1ps&#xff0c; //编译…

Nginx 配置支持 HTTPS 代理

个人博客地址&#xff1a;Nginx 配置支持 HTTPS 代理 | 一张假钞的真实世界 本文描述的是Nginx HTTPS反向代理的情况&#xff08;即后端服务是HTTP的&#xff09;。 使用openssl配置ssl证书 生成服务器端的私钥&#xff08;key 文件&#xff09;&#xff1a; # openssl gen…