设为首页 收藏本站
查看: 772|回复: 0

Linux Shell脚本测试案例(二)

[复制链接]

尚未签到

发表于 2018-8-25 06:31:15 | 显示全部楼层 |阅读模式
  脚本1:编写SHELL脚本监控主机
  1、用vi命令在/root目录是新建一个脚本文件sysmon.sh,内容如下:
DSC0000.jpg

  附:
  a:使用df命令提取根分区的磁盘占用率:如下图所示:
  使用df  -h命令查看磁盘分区的使用情况,其中根分区的已用空间是10%
DSC0001.jpg

  用如下图中的命令可以过滤磁盘的已用空间
DSC0002.jpg

  b:使用mpstat命令提取CPU使用率(要确保sysstat软件包已安装)。如下图所示:其中%idle表示CPU空闲时间百分比
DSC0003.jpg

  用如下图中的命令可以得到CPU已用空间并赋值给变量CUG
DSC0004.jpg

  c:使用free命令查看内存的使用情况。其中划红线的表示空余内存。
DSC0005.jpg

  用如下图中的命令可以得到内存使用率并赋值给变量MUG
DSC0006.jpg

  2、使用chmod命令给sysmon.sh文件增加执行(x)权限
  3、测试sysmon.sh脚本的执行情况
  a:配置DNS服务负责解析邮件服务器的MX和A记录
  b:修改/etc/resolv.conf文件指向DNS服务器地址
  c:配置邮件服务器
  如果是postfix服务器,配置如下:
DSC0007.jpg

  修改main.cf文件,修改后内容如下:
DSC0008.jpg

  重启postfix服务。并发测试邮件。
  d:确认有可用的邮件服务器,然后调低监控阈值,执行sysmon.sh脚本进行测试
  e:查收名为monitor@benet.com的邮箱,确认警告邮件内容
DSC0009.jpg

  邮件内容如下:
DSC00010.jpg

  4、设置crontab计划任务,每隔半小调用一次sysmon.sh脚本程序
DSC00011.jpg

  重新启动crond服务。
  
  脚本2:编写SHELL脚本(mkbak.sh)提示用户指定备份目录的路径,若目录已存则显示提示信息后跳过,否则显示相应信息后创建该目录。
DSC00012.jpg

  
  脚本3:编写脚本程序(chkdbsvr.sh)用于每隔5分监视一次系统服务mysqld的运行状态,若发现mysqld进程已经停止,则在/var/log/messages文件中追加写入日志信息(包括当时时间),并重启mysqld服务;否则不进行任何操作
DSC00013.jpg

  
  脚本4:编写脚本程序用于监视系统服务httpd的运行状态,要求如下
  当服务状态失常时在"/var/log/htmon.log"文件中记入日志信息。
  自动将状态失常的httpd服务重新启动。若重启httpd服务失败,测尝试重新启动服务器主机
  结合crond计划任务,每周一至周五每隔15分钟执行一次监测任务
  1、在/opt目录中创建脚本htmon.sh,脚本内容如下
  #! /bin/bash
  /sbin/service httpdstatus &> /dev/null
  if [ $? -ne 0 ] ; then
  echo "httpd is down.at time: `date`" >> /var/log/htmon.log
  /sbin/service httpd restart
  /sbin/service httpd status &>/dev/null
  if [ $? -ne 0 ] ; then
  /sbin/chkconfig --level 2345 httpd on
  /sbin/shutdown -r now
  fi
  fi
  2、创建crontab计划任务
  */15 * * * * /opt/htmon.sh


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-556082-1-1.html 上篇帖子: shell脚本实现DNS的自动安装与配置 下篇帖子: 用户shell环境基本操作2
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表