Linux shell脚本(一)

监控内存和磁盘容量,小于给定值时报警

bash 复制代码
[root@linux-lyz test1]# ./monitor.sh &
[1] 23110
# 提取根分区剩余空间
disk_size=$(df / | awk '/\//{print $4}')

# 提取内存剩余空间
mem_size=$(free | awk '/Mem/{print $4}')
while :
do
# 注意内存和磁盘提取空间大小都是kb为单位
if [ $disk_size -le 512000 -a $mem_size -le 1024000 ]
then
        mail -s "Warning"  root  <<EOF
        Insufficient resoureces,资源不足
EOF
  fi
        sleep 60
done

命令行

root@linux-lyz test1# chmod +x monitor.sh

root@linux-lyz test1# ./monitor.sh &

1 23110

root@linux-lyz test1# vim monitor.sh

nginx 启动脚本

bash 复制代码
program=/usr/local/nginx/sbin/nginx
pid=/usr/local/nginx/logs/nginx.pid
start(){
if [ -f $pid ];
then
  echo  "nginx 服务已经处于开启状态"
else
  $program
fi
stop(){
if [ -! -f $pid ];then
  echo "nginx 服务已经关闭"
else
  $program -s stop
  echo "关闭服务 ok"
fi
}
status(){
if [ -f $pid ];
then
  echo "服务正在运行..."
else
  echo "服务已经关闭"
fi
}

case $1 in
start)
  start;;
stop)
  stop;;
restart)
  stop
  sleep 1
  start;;
status)
  status;;
*)
  echo  "你输入的语法格式错误"
esac

命令行

root@linux-lyz init.d# service nginx start

nginx 服务已经处于开启状态

root@linux-lyz init.d#

相关推荐
大鱼>2 小时前
eBPF内核编程:从TC到XDP的全栈可观测性
linux·服务器·php
sxstj2 小时前
老旧电脑 Linux 系统完整推荐(按内存分档,新手友好)
linux
Lyra_Infra3 小时前
OpenClaw 服务异常故障分析报告
linux·人工智能
冷莫溪4 小时前
Zabbix——认识及部署Zabbix(基于Rocky9.7)
linux·运维·php·zabbix
风曦Kisaki4 小时前
Kubernetes(K8s)笔记Day03: Pod命名空间,标签,Pod 的调度,污点与容忍度,Pod 常见状态和重启策略,Pod 生命周期
linux·运维·笔记·docker·云原生·容器·kubernetes
xuhe25 小时前
一劳永逸!解决 AutoDL 系统盘(30GB)爆满与 pip 缓存迁移
linux·python·ai·jupyter
学无止境_永不停歇5 小时前
9. 缓冲区
linux·服务器·c++
dok125 小时前
Johannes 《Linux内核模块与设备驱动开发:编写Linux驱动程序》(4) devicefile 设备号相关
linux·运维·服务器
Fu2067216 小时前
结课项目考试
linux·运维·服务器
Albert·Lin6 小时前
LVS相关知识点总结-一
linux·服务器·lvs