第九周作业

2020-07-08  本文已影响0人  N45刘莅轩

一、显示统计占用系统内存最多的进程,并排序。

ps aux --sort=-%mem 

二、编写脚本,使用for和while分别实现192.168.0.0/24网段内,地址是否能够ping通,若ping通则输出"success!",若ping不通则输出"fail!"

# 使用for实现
#!/bin/bash
for i in $(seq 1 254);do
{
  ping -c 1 192.168.0.$i &>/dev/null
  if [ $? -eq 0 ];then
    echo "Ip 128.0.1."$i" is success" 
  else
    echo "Ip 128.0.1."$i" is fail"
  fi
 }&
done
# 使用while实现
#!/bin/bash
declare -i i=1
while [ $i -le 254 ];do
  if ping -W 1 -c 1 192.168.0.$1 &> /dev/null;then
    echo "host 192.168.0.$i is success."
  else
    echo "host 192.168.0.$i is fail."
  fi
  let i++
done

三、每周的工作日1:30,将/etc备份至/backup目录中,保存的文件名称格式 为“etcbak-yyyy-mm-dd-HH.tar.xz”,其中日期是前一天的时间

crontab -e
30 1 * * 0 tar Jcf /backup/etcbak-$(date -d yesterday +%Y-%m-%d).tar.xz /etc &> /dev/null

四、工作日时间,每10分钟执行一次磁盘空间检查,一旦发现任何分区利用率高 于80%,就发送邮件报警

vim /tmp/check_disk.sh
#!/bin/bash
Usage_Rate=`df |awk -F '[ %]+' 'BEGIN{max = 0}{if ($5+0 > max) max=$5} END {pring max}'`
Partition_Name=`df |grep "$Usage_Rate%" |cut -d" " -f1`
if [ $Usage_Rate -gt 80 ];then
    echo -e "Warning!!! \n $Partition_Name's avaliable space is less than 20%" |mail -s Warning root
fi

*/10 * * * 1-5 root sh /tmp/check_disk.sh &>/dev/null
上一篇 下一篇

猜你喜欢

热点阅读