随笔 - 55  文章 - 0  评论 - 0  阅读 - 1047

55_创建私人服务

脚本模板

!/bin/bash

NOW_SIZE=
REQUIRE_SIZE=2500
LOG_FILE=/var/log/mem.log
SERVICE_STATUS=0

function check_mem() {
NOW_SIZE=$(free -m | awk '/Mem/{print $4}')
if [[ $NOW_SIZE -le $REQUIRE_SIZE ]]; then

    echo "警告:$(date +%F_%H:%m:%S) 内存低于2.5G, 请尽快查看"
else
    echo "提示:$(date +%F_%H:%m:%S) 现在内存是 ${NOW_SIZE}M"
fi

}

function run_service() {
while [[ $SERVICE_STATUS -eq 1 ]]; do
{
check_mem
} >>$LOG_FILE

    sleep 3
done

exit 0

}

function start_service() {
SERVICE_STATUS=1
run_service
}

function stop_service() {
SERVICE_STATUS=2
}

function main() {
case "$1" in
start)
start_service
;;
stop)
stop_service
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
;;
esac
}

main $1

路径 : /lib/system/systemd/ 定义自己的服务 xxx.service

:'
[Unit]
Description=Check Memory Script
After=network.target

[Service]
Type=simple
ExecStart=/root/scripts/mem.sh start
ExecStop=/root/scripts/mem.sh stop
Restart=on-failure

[Install]
WantedBy=multi-user.target
'

posted on   鸟叔书  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示