• 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

    测试

  • 相关阅读:
    云原生路由架构探索
    一、Audio-音频简介
    简单工厂模式
    两种风格的纯CSS3加载动画
    稀疏表示与字典学习(2)基于字典学习的振动信号处理
    【JS原型链,常见的修改原型对象的方法有哪些?】
    为什么要用OA办公系统
    少儿编程 电子学会图形化编程等级考试Scratch三级真题解析(判断题)2022年9月
    利用人工智能和大数据技术,优化IT运维流程和策略
    libmodbus开发库介绍
  • 原文地址:https://blog.csdn.net/zuizuishuaideye_/article/details/138150821