shell脚本任务

1、判断当前磁盘剩余空间是否有20G,如果小于20G,则将报警邮件发送给管理员,每天检查一次磁盘剩余空间。

root@Server-NFS-DNS \~# yum install mailx -y

root@Server-NFS-DNS \~# vim /etc/mail.rc

root@Server-NFS-DNS \~# vim disk.sh

root@Server-NFS-DNS \~# bash disk.sh

set from=1658635147@qq.com

set smtp=smtp.qq.com

set smtp-auth-user=1658635147@qq.com

set smtp-auth-password=jeez.....gei

set smtp-auth=login

编写脚本

#!/bin/bash

disk=$(df -m | grep -w "/" | tr -s " " |cut -d " " -f4)

str1="Warning! disk space less than 20G!"

if "$disk" -lt 20000

then

echo "str1" \| mail -s "str1" 1658635147@qq.com

fi

测试能否发送

root@Server-NFS-DNS \~# bash disk.sh

编写周期性计划

root@Server-NFS-DNS \~# vim /etc/crontab

0 0 * * * root /bin/bash /root/disk1.sh

2、判断web服务是否运行(1、查看进程的方式判断该程序是否运行,2、通过査看端口的方式判断该程序是否运行),如果没有运行,则启动该服务并配置防火墙规则

root@Server-NFS-DNS \~# vim web.sh

#!/bin/bash

ps=`ps -ef | grep "httpd" | grep -v "grep" | wc -l`

if "$ps" -gt 0

then

echo "htppd is already running"

else

echo "httpd not started,waiting......"

yum install httpd -y &> /dev/null

systemctl start httpd

systemctl start firewalld

firewall-cmd --permanent --zone=public --add-service=http > /dev/null

firewall-cmd --permanent --zone=public --add-port=80/tcp > /dev/null

firewall-cmd --reload > /dev/null

echo "httpd is already running."

fi

root@Server-NFS-DNS \~# bash web.sh

测试

3、使用curl命令访问第二题的web服务,看能否正常访问,如果能正常访问,则返回web serveris running;如果不能正常访问,返回12状态码。

root@node \~# vim web1.sh

#!/bin/bash

curl -s 192.168.118.131 > /dev/null

if (($?==0))

then

echo "web server is running"

else

echo "web not accessible"

exit 12

fi

测试

相关推荐
AC赳赳老秦2 分钟前
OpenClaw + 阿里云 OSS 自动化:批量上传下载文件、自动备份本地数据到云端
运维·数据库·阿里云·自动化·云计算·deepseek·openclaw
数智化管理手记2 分钟前
三步轻量化落地法!精益赋能数字化,让工厂转型告别形式化
运维·数据库·人工智能·精益工程
七夜zippoe10 分钟前
DolphinDB MQTT协议接入:工业设备数据采集
运维·mqtt·dolphindb·工业设备·协议接入
Championship.23.2411 分钟前
Linux 3.0 串口机制深度解析:传统8250驱动与基础RS-232/485支持
linux·运维·服务器
r-t-H29 分钟前
Docker进阶与容器编排实践-第三章
运维·docker·容器
啦啦啦~~~33040 分钟前
【装机工具】电脑重装系统!office安装管理软件!一键自动化下载、安装、部署Office的办公增强工具
运维·c语言·windows·自动化·电脑
Legend NO241 小时前
从数据中台到 Data Fabric:数据价值落地,终究要回归本质(二)
大数据·运维·fabric
vortex51 小时前
解决 Alpine Linux 虚拟机从 VirtualBox 迁移到 VMware 的内核崩溃问题
linux·运维
lpl3129055091 小时前
skynet 共享数据项目级应用
服务器·c语言·lua
qq_白羊座1 小时前
Linux 压缩 / 解压(tar)命令 + 参数详解
linux·运维·github