一、显示统计占用系统内存最多的进程,并排序。
ps aux --sort -%mem
ps aux --sort -rss
ps aux --sort -rssize
ps aux --sort -rsz
[ root@centos /]
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1108 0.0 1.9 574308 19544 ? Ssl 07:40 0:03 /usr/bin/python2 -Es /usr/sbin/tuned -l -P
polkitd 707 0.0 1.0 613020 10948 ? Ssl 07:40 0:00 /usr/lib/polkit-1/polkitd --no-debug
root 779 0.0 0.8 474380 8932 ? Ssl 07:40 0:00 /usr/sbin/NetworkManager --no-daemon
root 1 0.0 0.6 128148 6764 ? Ss 07:40 0:01 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
[ root@centos /]
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1108 0.0 1.9 574308 19544 ? Ssl 07:40 0:03 /usr/bin/python2 -Es /usr/sbin/tuned -l -P
polkitd 707 0.0 1.0 613020 10948 ? Ssl 07:40 0:00 /usr/lib/polkit-1/polkitd --no-debug
root 779 0.0 0.8 474380 8932 ? Ssl 07:40 0:00 /usr/sbin/NetworkManager --no-daemon
root 1 0.0 0.6 128148 6764 ? Ss 07:40 0:01 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
[ root@centos /]
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1108 0.0 1.9 574308 19544 ? Ssl 07:40 0:03 /usr/bin/python2 -Es /usr/sbin/tuned -l -P
polkitd 707 0.0 1.0 613020 10948 ? Ssl 07:40 0:00 /usr/lib/polkit-1/polkitd --no-debug
root 779 0.0 0.8 474380 8932 ? Ssl 07:40 0:00 /usr/sbin/NetworkManager --no-daemon
root 1 0.0 0.6 128148 6764 ? Ss 07:40 0:01 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
[ root@centos /]
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1108 0.0 1.9 574308 19544 ? Ssl 07:40 0:03 /usr/bin/python2 -Es /usr/sbin/tuned -l -P
polkitd 707 0.0 1.0 613020 10948 ? Ssl 07:40 0:00 /usr/lib/polkit-1/polkitd --no-debug
root 779 0.0 0.8 474380 8932 ? Ssl 07:40 0:00 /usr/sbin/NetworkManager --no-daemon
root 1 0.0 0.6 128148 6764 ? Ss 07:40 0:01 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
使用top命令
top命令:
M:以占据内存百分比排序;
二、编写脚本,使用for和while分别实现192.168.0.0/24网段内,地址是否能够ping通,若ping通则输出"success!" ,若ping不通则输出"fail!"
IP= 192.168.0.
for I in { 1.. 254} ; do
if ` ping -W 1 -c 1 $IP$I & > /dev/null` ; then
echo "$IP $I is success!"
else
echo "$IP $I is fail!"
fi
done
#!/bin/bash
IP= 192.168.0.
declare -i i= 1
while [ $i -le 254 ] ; do
if ` ping -W 1 -c 1 $IP$i & > /dev/null` ; then
echo "$IP $i is success!"
else
echo "$IP $i is fail!"
fi
let i++
done
三、每周的工作日1:30,将/etc备份至/backup目录中,保存的文件名称格式 为“etcbak-yyyy-mm-dd-HH.tar.xz”,其中日期是前一天的时间
vim /etc_bak.sh
[ -d /backup ] || mkdir /backup
rpm -q xz > /dev/null
[ $? -eq 0 ] || yum -y install xz > /dev/null
DATE= ` date -d "-1 day" +%Y-%m-%d-%H`
tar -cf /backup/etcbak-$DATE .tar /etc & > /dev/null && xz -z /backup/etcbak-$DATE .tar & > /dev/null && rm -rf /backup/etcbak-$DATE .tar & > /dev/null
30 1 * * 1-5 root /etc_bak.sh & > /dev/null
四、工作日时间,每10分钟执行一次磁盘空间检查,一旦发现任何分区利用率高 于80%,就发送邮件报警
vim /dh.sh
dfnum= ` df | grep "[0-9]\+%" -o | grep "[0-9]\+" -o | sort -rn | head -1`
dfdev= ` df | grep "$dfnum %" | cut -d " " -f1`
if [ $dfnum -gt 80 ] ; then
echo -e "Warning, your slave disk $dfdev usage has exceeded 80% " | mail -s Warning root
fi
*/10 * * * 1-5 root /dh.sh & > /dev/null
测试将利用率改为超过10%,来进行测试