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
浙公网安备 33010602011771号