第八

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

[root@localhost ~]#ps axu  --sort -rss | head -n5
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
gdm       1237  0.0  6.6 2920772 94880 ?       Sl   Aug01   0:22 /usr/bin/gnome-shell
gdm       1341  0.0  0.6 968360  9804 ?        Sl   Aug01   0:00 /usr/libexec/gsd-media-keys
gdm       1328  0.0  0.6 731348  9376 ?        Sl   Aug01   0:10 /usr/libexec/gsd-color
gdm       1315  0.0  0.6 634628  9308 ?        Sl   Aug01   0:00 

同上

[root@localhost ~]#ps axu | sort -k4nr | head -n5
gdm       1237  0.0  6.6 2920772 94884 ?       Sl   Aug01   0:22 /usr/bin/gnome-shell
gdm       1315  0.0  0.6 634628  9308 ?        Sl   Aug01   0:00 /usr/libexec/gsd-xsettings
gdm       1320  0.0  0.6 570748  8980 ?        Sl   Aug01   0:00 /usr/libexec/gsd-a11y-keyboard
gdm       1328  0.0  0.6 731348  9376 ?        Sl   Aug01   0:10 /usr/libexec/gsd-color
gdm       1341  0.0  0.6 968360  9804 ?        Sl   Aug01   0:00 /usr/libexec/gsd-media-keys

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


#定义IP地址
vim ip_ping_for.sh 
IP=192.168.25.
PI='/bin/ping -w1 -c1'
for  HOST in {1..254};do
{
	if  $PI ${IP}${HOST} >/dev/null;then
		echo "${IP}${HOST} is a up "
	else
		echo "${IP}${HOST} is down"
	fi
} & 
#{}&:表示并发执行
done 
unset IP HOST

[root@localhost /data/scripts]#sh ip_ping_for.sh 
192.168.25.6 is a up 
192.168.25.2 is a up 
192.168.25.7 is a up 
192.168.25.17 is a up 
192.168.25.27 is a up 
while实现
vim ip_ping_while.sh
while read ip;do
{
	/bin/ping -w1 -c1 >/dev/null
	if [ $? -eq 0 ];then
		echo "$ip is up"
	else 
		echo "$ip is down"
}&
done </data/scripts/ip.txt
wait
[root@localhost /data/scripts]#cat ip.txt
192.168.25.6 is up. 
192.168.25.37 is down.
192.168.25.17 is up. 
192.168.25.27 is up. 
192.168.25.7 is up. 
192.168.25.2 is up. 

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

#判断backup目录是否存在,不存在创建
[ -d  /backup ] || mkdir /backup
#定义时间,年-月-日-时  yesterday 前一天
A=`date -d yesterday "+%Y-%m-%d"`
tar -cvf /backup/etc_backup$A.tar.gz /etc

结果:
[root@localhost /data/scripts]#ll /backup/
-rw-r--r-- 1 root root 38205440 Aug  2 19:56 etc_backup2020-08-01.tar.gz

-j: bzip2, -z: gzip, -J: xz

定时任务
#2.每周的工作日1:30,将/etc备份至/backup目录中
30 1 * * 0 root sh /data/scripts/etc_backup.sh

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

vim disk.sh
#取出最大的
MAX=`df | grep "/dev/sda" | sed -nr 's@^.* ([0-9]+)%.*$@\1@p'  | sort -nr | head -n1`
NUMBER=80
#取出最大的分区名字
NAME=`df |grep "$MAX%" |cut -d" " -f1`

if [ $MAX -gt  $NUMBER ];then
	echo -e "Warning......\n ${NAME}:${MAX} "  
else
	echo -e "一切正常"
fi
unset MAX UNMBER NAME

加入到定时任务中去
vim /etc/crontab
*/10 *  *  *  1-5 root  sh /data/scripts/disk.sh
或者
crontab -e 
*/10 *  *  *  1-5   root  sh /data/scripts/disk.sh
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值