15.第11章 进程和计划任务

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

root@ubuntu2004:~# vim etc_backup.sh
#!/bin/bash
#
#********************************************************************
#Author:            zhanghui
#QQ:                19661891
#Date:              2020-12-20
#FileName:         etc_backup.sh
#URL:               www.neteagles.cn
#Description:      The test script
#Copyright (C):     2020 All rights reserved
#********************************************************************
[ -d /backup ] || mkdir /backup
dpkg -S xz >/dev/null
[ $? -eq 0 ] || apt -y install xz-utils >/dev/null
DATEFORMAT=`date -d '-1 day' "+%Y-%m-%d-%H"`
tar -Jcf /backup/etcbak-$DATEFORMAT.tar.xz /etc &> /dev/null

root@ubuntu2004:~# chmod +x etc_backup.sh

root@ubuntu2004:~# crontab -e
30 1 * * 1-5 /usr/bin/sh /root/etc_backup.sh

root@ubuntu2004:~# ll /backup
total 460
drwxr-xr-x  2 root root   4096 Dec 20 14:30 ./
drwxr-xr-x 22 root root   4096 Dec 20 14:30 ../
-rw-r--r--  1 root root 460460 Dec 20 14:30 etcbak-2020-12-19-14.tar.xz

[root@centos8 ~]# vim etc_backup2.sh
#!/bin/bash
# 
#********************************************************************
#Author:            zhanghui
#QQ:                19661891
#Date:              2020-12-27
#FileName:         etc_backup2.sh
#URL:               www.neteagles.cn
#Description:      The test script
#Copyright (C):     2020 All rights reserved
#********************************************************************
[ -d /backup ] || mkdir /backup
rpm -q xz >/dev/null
[ $? -eq 0 ] || yum -y install xz >/dev/null
DATEFORMAT=`date -d yesterday "+%Y-%m-%d-%H"`
tar -Jcf /backup/etcbak-$DATEFORMAT.tar.xz /etc &> /dev/null 

[root@centos8 ~]# chmod +x etc_backup2.sh 
[root@centos8 ~]# crontab -e
30 1 * * 1-5 /usr/bin/sh /root/etc_backup2.sh
[root@centos8 ~]# ll /backup
total 3032
-rw-r--r-- 1 root root 3103356 Dec 27 18:00 etcbak-2020-12-26-18.tar.xz

2.每两小时取出当前系统/proc/meminfo文件中以S或M开头的信息追加至/tmp/meminfo.txt文件中。

root@ubuntu2004:~# crontab -e
* */2 * * * /usr/bin/grep -E "^S|^M" /proc/meminfo >> /tmp/meminfo.txt 

root@ubuntu2004:~# cat /tmp/meminfo.txt 
MemTotal:        2006924 kB
MemFree:           89024 kB
MemAvailable:    1545632 kB
SwapCached:         1724 kB
Mlocked:           18676 kB
SwapTotal:       6291448 kB
SwapFree:        6276508 kB
Mapped:            39956 kB
Shmem:              1184 kB
Slab:             191352 kB
SReclaimable:     113708 kB
SUnreclaim:        77644 kB
ShmemHugePages:        0 kB
ShmemPmdMapped:        0 kB

3.工作日时间,每10分钟执行一次磁盘空间检查,一旦发现任何分区利用率高于80%,就执行wall警报。

root@ubuntu2004:~# cat disk_check.sh 
#!/bin/bash
#
#********************************************************************
#Author:		    zhanghui
#QQ: 			    19661891
#Date: 			    2020-12-20
#FileName:		    disk_check.sh
#URL: 			    www.neteagles.cn
#Description:		The test script
#Copyright (C): 	2020 All rights reserved
#********************************************************************
WARNING=80
df|sed -rn '/^\/dev\/sd/s#^([^ ]+).* ([0-9]+)%.*#\1 \2#p' |while read part use ;do
    [ $use -ge $WARNING ] && echo "$part will be full,use:$use" |mail -s "wall" root
done

root@ubuntu2004:~# chmod +x disk_check.sh
root@ubuntu2004:~# crontab -e
*/10 * * * 1-5 /usr/bin/sh /root/disk_check.sh 

root@ubuntu2004:~# cp /dev/zero /data
^C
root@ubuntu2004:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            938M     0  938M   0% /dev
tmpfs           196M  1.3M  195M   1% /run
/dev/sda2        98G  4.3G   89G   5% /
tmpfs           980M     0  980M   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           980M     0  980M   0% /sys/fs/cgroup
/dev/sda3       976M  104M  806M  12% /boot
/dev/sda4        49G   42G  4.7G  90% /data
/dev/loop0       30M   30M     0 100% /snap/snapd/8542
/dev/loop1       55M   55M     0 100% /snap/core18/1880
/dev/loop2       72M   72M     0 100% /snap/lxd/16099
tmpfs           196M     0  196M   0% /run/user/0


root@ubuntu2004:~# mail
"/var/mail/root": 1 message 1 new
>N   1 root               Sun Dec 20 14:40  13/467   wall
? 1
Return-Path: <root@ubuntu2004>
X-Original-To: root@ubuntu2004
Delivered-To: root@ubuntu2004
Received: by ubuntu2004.neteagles.cn239188140 (Postfix, from userid 0)
	id 52526520D1D; Sun, 20 Dec 2020 14:40:01 +0000 (UTC)
Subject: wall
To: <root@ubuntu2004>
X-Mailer: mail (GNU Mailutils 3.7)
Message-Id: <20201220144001.52526520D1D@ubuntu2004.neteagles.cn239188140>
Date: Sun, 20 Dec 2020 14:40:01 +0000 (UTC)
From: root <root@ubuntu2004>

/dev/sda4 will be full,use:90
? q
Saved 1 message in /root/mbox
Held 0 messages in /var/mail/root
posted @ 2020-12-20 21:29  网络之鹰  阅读(906)  评论(0)    收藏  举报