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

测试

相关推荐
吴声子夜歌21 分钟前
Shell脚本——流程控制:for循环
linux·运维·shell
可乐鸡翅yeah_31 分钟前
MPEG‑TS 分片 PTS/DTS 时间戳异常排错,HLS 音画不同步定位实战
运维·测试用例·音视频·媒体·m3u8
事圆则缓38 分钟前
Ubuntu 安装与配置 Samba 服务器
linux·服务器·ubuntu
zhangzeyuaaa1 小时前
Python asyncio 事件循环演进:从手动管理到现代化实践
java·服务器·python
abby1 小时前
美国多IP站群服务器Nginx配置与网络优化实操
服务器
盛世宏博智慧档案1 小时前
高速 ETC 门架外场机房温湿度远程监测解决方案
服务器·数据库·php·高度·高速·温湿度
SkyWalking中文站1 小时前
Horizon UI 1.0 正式发布:SkyWalking 新一代控制台接棒 Booster
运维·监控·自动化运维
随便做点啥2 小时前
32卡64G-910B4-16后端集群部署报告
java·大数据·运维
我的小卷呀2 小时前
Linux ip 命令底层逻辑与实战指南
linux·运维·c语言·网络协议·tcp/ip·网络安全
CingSyuan3 小时前
4U GPU服务器整机无法上电故障排查实录:通过交叉替换、逐项回装与跨槽位测试,定位RTX 4080显卡故障及硬盘槽位异常并完成临时恢复
运维·服务器