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

系统看门狗配置--以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 软件看门狗

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

相关文章:

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

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

阅读笔记——《A survey of protocol fuzzing》

【参考文献】Zhang X, Zhang C, Li X, et al. A survey of protocol fuzzing[J]. ACM Computing Surveys, 2024, 57(2): 1-36.【注】本文仅为作者个人学习笔记,如有冒犯,请联系作者删除。 目录 1、Introduction 2、Background 2.1、Communication Pro…...

C# 语法中级

总目录 C# 语法总目录 C# 语法中级 lambda 表达式1. 捕获外部变量2. 捕获迭代变量 匿名类型匿名方法异常相关1. 枚举器2. 可枚举对象3. 迭代器3. 迭代器语义4. yield break 语句5. 组合序列 可空类型1. Nullable< T > 结构体 lambda 表达式 编译器在内部将lambda表达式编…...

STORM:从多时间点2D图像中快速重建动态3D场景的技术突破

随着计算机视觉和机器学习技术的迅猛发展,我们已经能够利用AI来解决许多复杂的问题。然而,在处理大规模室外动态3D场景重建时,现有的方法往往面临着诸多挑战,如需要大量人工标注数据、处理速度慢以及难以准确捕捉移动物体等。为了解决这些问题,研究者们开发了STORM(Spati…...

excel前缀和(递增求和)

方法一&#xff1a;https://www.zhihu.com/zvideo/1382164996659515392?utm_id0 假设输入数据在B2:B10&#xff0c;选中单元格C2&#xff0c;输入SUM(B2:B2&#xff0c;然后选中其中的B2&#xff0c;按F4&#xff08;或者直接输入SUM(B$2:B2&#xff09;&#xff0c;回车确认&…...

【AI日记】25.01.11 Weights Biases | AI 笔记 notion

【AI论文解读】【AI知识点】【AI小项目】【AI战略思考】【AI日记】【读书与思考】 AI kaggle 比赛&#xff1a;Forecasting Sticker Sales笔记&#xff1a;我的 AI 笔记主要记在两个地方 有道云笔记&#xff1a;数学公式和符号比较多的笔记notion&#xff1a;没什么数学公式的…...

P8772 [蓝桥杯 2022 省 A] 求和

题目描述 给定 &#x1d45b; 个整数 &#x1d44e;1,&#x1d44e;2,⋯ ,&#x1d44e;&#x1d45b; 求它们两两相乘再相加的和&#xff0c;即 &#x1d446;&#x1d44e;1⋅&#x1d44e;2&#x1d44e;1⋅&#x1d44e;3⋯&#x1d44e;1⋅&#x1d44e;&#x1d45b;&…...

【Oracle篇】深入了解执行计划中的访问路径(含表级别、B树索引、位图索引、簇表四大类访问路径)

&#x1f4ab;《博主介绍》&#xff1a;✨又是一天没白过&#xff0c;我是奈斯&#xff0c;从事IT领域✨ &#x1f4ab;《擅长领域》&#xff1a;✌️擅长阿里云AnalyticDB for MySQL(分布式数据仓库)、Oracle、MySQL、Linux、prometheus监控&#xff1b;并对SQLserver、NoSQL(…...

WSDL的基本概念

《WSDL 语法》这篇文章将详细介绍WSDL&#xff08;Web Services Description Language&#xff09;的语法。WSDL是一种基于XML的语言&#xff0c;用于描述Web服务及其访问方式。它允许开发者将Web服务定义为服务访问点或端口的集合&#xff0c;这些服务访问点可以通过特定的协议…...

RabbitMQ解决消息积压的方法

目录 减少发送mq的消息体内容 增加消费者数量 批量消费消息 临时队列转移 监控和预警机制 分阶段实施 最后还有一个方法就是开启队列的懒加载 这篇文章总结一下自己知道的解决消息积压得方法。 减少发送mq的消息体内容 像我们没有必要知道一个的中间状态&#xff0c;只需…...

Android 网络层相关介绍

关注 Android 默认支持的网络管理行为,默认支持的网络服务功能。 功能术语 术语缩写全称释义DHCPv6Dynamic Host Configuration Protocol for IPv6动态主机配置协议的第六版,用于在IPv6网络中动态分配IP地址和其他网络配置参数。DNS Domain Name System域名系统。LLALink-Loc…...

2025年第三届“华数杯”国际赛B题解题思路与代码(Matlab版)

问题1&#xff1a;产业关联性分析 在 question1.m 文件中&#xff0c;我们分析了中国主要产业之间的相互关系。以下是代码的详细解读&#xff1a; % 问题1&#xff1a;分析中国主要产业之间的相互关系function question1()% 清空工作区和命令窗口clear;clc;% 设置中文显示set…...

小米路由器IPv6 功能使用指南

本文不限于多层路由使用IPv6 的情况&#xff0c;提供解决IPv6 无法获取的更硬核的方法&#xff0c;需要有ssh 工具。&#xff08;无安卓设备&#xff0c;测试环境win、mac、ios&#xff09; 首先明确一点&#xff0c;就是如果想让你的设备得到GUA 地址&#xff0c;即访问 6.i…...

k8s dashboard离线部署步骤

确定k8s版本&#xff0c;以1.23为例。 部署metrics-server服务&#xff0c;最好用v0.5.2。 用v0.6.0&#xff0c;可能会报以下错误&#xff1a; nodekubemaster:~/Desktop/metric$ kubectl top nodes Error from server (ServiceUnavailable): the server is currently unabl…...

Wireshark抓包教程(2024最新版个人笔记)

改内容是个人的学习笔记 Wireshark抓包教程&#xff08;2024最新版&#xff09;_哔哩哔哩_bilibili 该课程笔记1-16 wireshark基础 什么是抓包工具&#xff1a;用来抓取数据包的一个软件 wireshark的功能&#xff1a;用来网络故障排查&#xff1b;用来学习网络技术 wireshark下…...

稀疏矩阵:BM25;稠密矩阵:RoBERTa - wwm - ext顺序

稀疏矩阵:BM25;稠密矩阵:RoBERTa - wwm - ext顺序 先后顺序 先BM25后RoBERTa - wwm - ext: 流程说明:首先可以使用BM25进行初步的检索。由于BM25是基于词频等统计信息的检索模型,它能够快速地从大规模文档集合中筛选出可能包含相关信息的文档子集。例如,在一个包含大量新…...

C# 结构体(Struct)

C# 结构体(Struct) 引言 在C#编程语言中,结构体(Struct)是一种值类型,它允许用户自定义数据类型。结构体可以包含多个成员,如字段、属性、构造函数和方法。与类(Class)相似,但结构体在内存管理、性能和继承方面有其独特的特点。本文将详细介绍C#结构体的概念、用法…...

Homestyler 和 Tripo AI 如何利用人工智能驱动的 3D 建模改变定制室内设计

让设计梦想照进现实 在Homestyler,我们致力于为每一个梦想设计师提供灵感的源泉,而非挫折。无论是初学者打造第一套公寓,或是专业设计师展示作品集,我们的直观工具都能让您轻松以惊人的3D形式呈现空间。 挑战:实现定制设计的新纪元 我们知道,将个人物品如传家宝椅子、…...

Python的pandas库基础知识(超详细教学)

目录 一、配置环境 二、序列和数据表 2.1 初始化 2.2 获取数值 2.3 获取索引 2.4 索引取内容 2.5 索引改变取值 2.6 字典生成序列 2.7 计算取值出现次数 2.8 数据表 2.9 数据表添加新变量 2.10 获取列名 2.11 根据列名获取数据 2.12 输出固定行 2.13 输出多行…...

【数据库】一、数据库系统概述

文章目录 一、数据库系统概述1 基本概念2 现实世界的信息化过程3 数据库系统内部体系结构4 数据库系统外部体系结构5 数据管理方式 一、数据库系统概述 1 基本概念 数据&#xff1a;描述事物的符号记录 数据库&#xff08;DB&#xff09;&#xff1a;长期存储在计算机内的、…...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

通过Wrangler CLI在worker中创建数据库和表

官方使用文档&#xff1a;Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后&#xff0c;会在本地和远程创建数据库&#xff1a; npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库&#xff1a; 现在&#xff0c;您的Cloudfla…...

23-Oracle 23 ai 区块链表(Blockchain Table)

小伙伴有没有在金融强合规的领域中遇见&#xff0c;必须要保持数据不可变&#xff0c;管理员都无法修改和留痕的要求。比如医疗的电子病历中&#xff0c;影像检查检验结果不可篡改行的&#xff0c;药品追溯过程中数据只可插入无法删除的特性需求&#xff1b;登录日志、修改日志…...

从深圳崛起的“机器之眼”:赴港乐动机器人的万亿赛道赶考路

进入2025年以来&#xff0c;尽管围绕人形机器人、具身智能等机器人赛道的质疑声不断&#xff0c;但全球市场热度依然高涨&#xff0c;入局者持续增加。 以国内市场为例&#xff0c;天眼查专业版数据显示&#xff0c;截至5月底&#xff0c;我国现存在业、存续状态的机器人相关企…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 &#xff08;忘了有没有这步了 估计有&#xff09; 刷机程序 和 镜像 就不提供了。要刷的时…...

sqlserver 根据指定字符 解析拼接字符串

DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...

HBuilderX安装(uni-app和小程序开发)

下载HBuilderX 访问官方网站&#xff1a;https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本&#xff1a; Windows版&#xff08;推荐下载标准版&#xff09; Windows系统安装步骤 运行安装程序&#xff1a; 双击下载的.exe安装文件 如果出现安全提示&…...

CMake控制VS2022项目文件分组

我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...

有限自动机到正规文法转换器v1.0

1 项目简介 这是一个功能强大的有限自动机&#xff08;Finite Automaton, FA&#xff09;到正规文法&#xff08;Regular Grammar&#xff09;转换器&#xff0c;它配备了一个直观且完整的图形用户界面&#xff0c;使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...

Java 二维码

Java 二维码 **技术&#xff1a;**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...