题目
1.判断当前主机的CPU生产商,其信息在/proc/cpuinfo文件中vendor_id一行中
2.根据用户输入成绩,判断优良中差(A,B,C,D, 注意边界问题)
3.判断 sshd 进程是否运行,如果服务启动打印启动,未启动则打印未启动(使用查看进程和端口两种方式)
4.检查主机是否存活,并输出结果(使用for循环实现:主机数>=2)
5.编写脚本,判断当前系统剩余内存大小,如果低于100M,邮件报警管理员,使用计划任务,每
10分钟检查一次。
1.判断当前主机的CPU生产商,其信息在/proc/cpuinfo文件中vendor_id一行中
示例:
vendor=$(grep "vendor_id" /proc/cpuinfo |uniq|awk -F: '{print $NF}')
if [[ "$vendor" =~ [[:space:]]*GenuineIntel$ ]]
then
echo "intel"
elif [[ "$vendor" =~ [[:space:]]*AuthenticAMD$ ]]
then
echo "AMD"
else
echo "unknow"
fi
2.根据用户输入成绩,判断优良中差(A,B,C,D, 注意边界问题)
示例:
read -p "please input your score(0~100):" score
if [[ $score > 84 ]];then
echo "A"
elif [[ $score > 69 ]];then
echo "B"
elif [[ $score > 59 ]];then
echo "C"
else
echo "D"
fi
3.判断 sshd 进程是否运行,如果服务启动打印启动,未启动则打印未启动(使用查看进程和端口两种方式)
示例:
[root@haha ~]# ps -ef | grep sshd | grep -v grep | wc -l
3
[root@haha ~]# ss -lntup | grep -w 22 | wc -l
2
[root@haha ~]# netstat -lntup | grep -w 22 | wc -l
2
4.检查主机是否存活,并输出结果(使用for循环实现:主机数>=2)
ping -c 2 -w 1 172.25.254.128 &> /dev/null
if [ $? -eq 0 ];then
echo host 172.25.254.128 is running
else
echo host 172.25.254.128 is not running
fi
5.编写脚本,判断当前系统剩余内存大小,如果低于100M,邮件报警管理员,使用计划任务,每
10分钟检查一次。
if [ "$free_mem" -le 100 ];then
echo "剩余内存:${free_mem},低于100M" | mail -s "内存报警" root@localhost
fi