家中群晖NAS遇到断电如何自动关机

news/2024/11/7 14:37:12/

群晖NAS遇到断电时如何自动关机

  • 前置条件
  • 实现功能的想法
  • 具体实施的步骤
    • 开启群晖Linux的SSH登陆
    • 安装Putty或是Xshell远程登陆上群晖
    • 创建计划任务

前置条件

需要一台UPS(品牌功能不限,只需续航5分钟以上就可以)

实现功能的想法

通过监控网卡的状态来达到目的。 网卡连接的网关并没有UPS保护,因为断电时,网卡会出现离线的状态,当监控到网卡的离线状态时,发出关机命令既可实现安全保护目的。

具体实施的步骤

开启群晖Linux的SSH登陆

登陆群晖管理后台
在这里插入图片描述
在这里插入图片描述

安装Putty或是Xshell远程登陆上群晖

我这里用的是sa账户登陆的,把脚本文件也放到了sa根目录下。
检测群晖NAS的网卡状态,我的NAS有四个千兆口,查询

root@DataStore:~# ls /sys/class/net/
docker0  docker7cb2ffc  dockerf1962b8  dockerf6d9158  eth0  eth1  eth2  eth3  lo  sit0
root@DataStore:~# 

这里有eth0~eth3四个网卡
查询网卡的状态

root@DataStore:~# cat /sys/class/net/eth0/operstate
down
root@DataStore:~# cat /sys/class/net/eth1/operstate
up
root@DataStore:~# 

up在线,down离线,这样就很容易判断了
创建脚本命令:

vim upscheck.sh
  1 #!/bin/bash                                                                                                                                 2 3 #statusFile=~sa/.electricity.status;4 5 # 判断文件是否存在。如果不存在就创建默认文件6 #if [ ! -f "$statusFile" ]; then7 #   echo "file is not exists! I will create!";8 #   $(echo "off-line" > $statusFile);9 #fi10 11 # 读取上一次检测的结果12 #status=$(cat $statusFile);13 logFile=~sa/poweroff.log;14 15 eth0=$(cat /sys/class/net/eth0/operstate);16 eth1=$(cat /sys/class/net/eth1/operstate);17 eth2=$(cat /sys/class/net/eth2/operstate);18 eth3=$(cat /sys/class/net/eth3/operstate);19 20 # 判断4张网卡是不是都是离线的状态,如果离线了,说明交换机没电了,就要关机了21 if [[ "$eth0" == 'up' || "$eth1" == 'up' || "$eth2" == 'up' || "$eth3" == 'up' ]]; then22     # 网卡有在线,交换机有电,则记录在线状态到文件23     #$(echo "on-line" > $statusFile);24     echo "Power supply is normal, system is normal.";25 else26     #$(echo "off-line" > $statusFile);27 28     # 所有的网卡都离线了,马上关机29     log="Network offline power supply abnormal, system shutdown now!";30     echo "[`date`]$log" >> $logFile;31     $(shutdown -h now);32 fi

创建计划任务

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


http://www.ppmy.cn/news/428415.html

相关文章

分布式安装配置spark-3.2.3

Spark是一个基于内存的大数据计算框架,可以与Hadoop集成,提供更快速的数据处理能力。本文将介绍如何在三个Ubuntu系统上搭建一个Spark集群。 主要步骤包括: 准备工作:下载安装包,设置环境变量,解压安装包…

01_03_插入排序(Insertion Sort)

插入排序(Insertion Sort) 插入排序(Insertion Sort)介绍: 是一种简单的排序算法。它的原理是将待排序的元素逐个插入到已排序序列中的合适位置,从而逐步构建有序序列。 插入排序(Insertion …

vue3+ts:shims-vue.d.ts

一、本文引子 uniapp(3.8.4.20230531) vue3 ts vite 项目 在搭建这个base项目的时候出现红素波浪线如图,代码运行正常,但是看起来很难受,于是各种查找,能找到的资料很少,可能和我提问不够准…

Java之数组

Java之数组 数组也是对象。数组只是相同类型的、用一个标识符名称封装到一起的一个对象序列或基本类型数据序列。数组是通过方括号下标操作符[]来定义和使用的。所有的数组类型,不管是对象数组还是基本类型的数组都扩展了Object类。当创建一个数组对象时&#xff0…

英特尔处理器能用鸿蒙系统吗,鸿蒙系统能不能兼容windows的所有应用软件?

众所周知,鸿蒙系统是一个跨平台的系统,支持电脑、手机、平板、智能穿戴等硬件设备。如果鸿蒙系统,同时支持所有的win应用、android应用,那么岂不是不用担心“生态”问题,实现“一统江湖”了吗?下文具体说一…

x86服务器能装64位系统吗,x86处理器能装64位系统吗_64位系统装32位的可以么

2019-02-04 10:08:44  浏览量:6162 32位处理器支持安装64位系统吗?处理器就是我们熟知的cpu,处理器分32位和64位,现在处理器几乎都是64位,不过早期的处理器普遍是32位,那么32位处理器能装64位系统吗?从技术角度看,32位处理器是不能装64位系统的,因为不支持,不确定的…

笔记本cpu型号怎么看?笔记本处理器型号的类型与查看方法

先来看看笔记本cpu型号怎么看 1,查看电脑的标签,如果是品牌机或者笔记本,一般在笔记本键盘的右下方有标签注明。如下图所示: 2,右击“计算机”,选择“属性”,可查看。 笔记本处理器型号的类型介…

台式电脑怎么更换计算机明,电脑上面的cpu能换吗_cpu怎么更换(台式机、笔记本)...

什么是cpu 中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。 中央处理器主要包括运算器(算术逻辑运算单元&#x…