shell第一次作业

1、判断当前磁盘剩余空间是否有20G,如果小于20G,则将报警邮件发送给管理员,每天检查一次磁盘剩余空间。
(1)查看盘剩余空间 df -h
(2)/分区的剩余空间 /boot分区
(3)总和是磁盘的总剩余空间
(4)判断是否大于20G
在这里插入图片描述

[root@localhost redhat]# mkdir day04
[root@localhost redhat]# cd day04
[root@localhost day04]# vim free.sh
[root@localhost day04]# chmod +x free.sh
[root@localhost day04]# ./free.sh
#!/bin/bash
a=`df | grep /dev/mapper/rhel-root | tr -s " " " " | cut -d " " -f 4`
b=`df | grep /dev/nvme0n1p1 | tr -s " " | cut -d " "  -f  4`
sum=$[a+b]
sum1=$[sum/1024/1024]
echo $sum1
#[ $sum1 -lt 20 ] && echo "邮件警告!"
if [ $sum1 -lt 20];then
	echo "内存空间不足" | mail -s "邮件警告!" @163.com
fi

在这里插入图片描述
每天检测一次:
在这里插入图片描述
在这里插入图片描述
配置邮箱客户端mailx
vim /etc/mail.rc
在这里插入图片描述

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

#查看是否运行
ps -aux | grep httpd 
[使用该命令要再统计一下行数:ps -aux | grep httpd | wc -l 判断是否大于2]
netstat -tuanlp | grep 80
lsof -i:80
systemctl status httpd
systemctl is-active httpd
vim service_status.sh
#!/bin/bash
#判断服务状态 systemctl is-active httpd   lsof -i:80
#active       echo $? 
read -p "请输入要测试的服务名称" service
stat=`systemctl is-active $service`
[ $stat == active ] || `systemctl restart $service`
#lsof -i:80 &> /dev/null
#if [ $? -ne 0 ] ;then
#	`systemctl restart httpd`
#fi

chmod +x service_status.sh
./service_status.sh

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

#!/bin/bash
curl http://localhost
if[ $? -eq 0 ];then
	echo "web server is running"
else
	echo "12"
	exit 12
fi
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值