第九周博客作业

 

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

[root@localhost ~]# ps axo pid,cmd,%mem,%cpu
PID CMD %MEM %CPU
1 /usr/lib/systemd/systemd -- 0.3 0.0
2 [kthreadd] 0.0 0.0
3 [ksoftirqd/0] 0.0 0.0
5 [kworker/0:0H] 0.0 0.0
7 [migration/0] 0.0 0.0
8 [rcu_bh] 0.0 0.0
9 [rcu_sched] 0.0 0.0
10 [lru-add-drain] 0.0 0.0

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

for循环

echo > ping
pingip=192.168.183.
for i in {1..254};do
ping -c1 -W1 $pingip$i > /dev/null;[ $? -eq 0 ]&&echo "$pingip$i success!" | tee -a ping ||\
echo "$pingip$i failed!" | tee -a ping
done

  while 循环

echo > ping
pingip=192.168.183.
i=1
while [ $i -lt 255 ];do
ping -c1 -W1 $pingip$i > /dev/null;[ $? -eq 0 ]&&echo "$pingip$i success!" | tee -a ping ||\
echo "$pingip$i failed!" | tee -a ping
i=$[i+1]
done

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

         3.1配置备份脚本

    

#!/bin/bash
bak=/backup
  [ -d $bak   ] || mkdir -p $bak


tar cJf $bak/etcbak-`date +%F_%T -d "-1 day"`.tar.xz /etc

  3.2 配置crond计划任务

  

//修改PATH变量 /etc/crontab
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/date/scrips
crontab -e
30 1 * * 1-5 root taretc.sh

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

检查脚本space.sh

#!/bin/bash
warn=10
df -h | sed -nr "/^\/dev\//p" | tr -s " " | cut -d" " -f1,5 | tr -d "%" | while read dname dnum;do
[ $dnum -ge $warn ] && echo "%dname usage $dnum%!" | mail -s "$dname waning" root     
done

  

#增加可执行权限
chmod +x /data/space.sh

#计划任务
crontab -e
PATH=$PATH:/data/scripts
*/10 * * * * root space.sh

  

 

posted @ 2020-12-21 11:18  自由客wzj  阅读(85)  评论(0)    收藏  举报