#bin/bash
function echo_color() {
read color
if [ $color == "green" ]; then
echo -e "\033[32;40m$color\033[0m"
elif [ $color == "red" ]; then
echo -e "\033[31;40m$color\033[0m"
fi
}
echo_color
批量創建用戶
#bin/bash
for USER in us_er{8..9}
do
PASS=`echo $RANDOM|md5sum|cut -c 1-8`
useradd $USER
echo "$PASS"|passwd --stdin $USER
echo -e "$USER:$PASS" >> user_list
echo "$USER create successful!"
done
檢查軟件包是否安裝
#!/bin/bash
if rpm -q sysstat &>/dev/null; then
echo "sysstat is already installed."
else
echo "sysstat is not installed!"
fi
檢查服務狀態
#!/bin/bash
PORT_C=$(ss -anu |grep -c 123)
PS_C=$(ps -ef |grep ntpd |grep -vc grep)
if [ $PORT_C -eq 0 -o $PS_C -eq 0 ]; then
echo "內容" | mail -s "主題" 郵箱.com
fi
檢查主機存活狀態
#!/bin/bash
IP_LIST="10 20 30 40"
for IP in $IP_LIST; do
NUM=1
while [ $NUM -le 3 ]; do
if ping -c 1 192.168.1.$IP > /dev/null; then
echo "192.168.1.$IP Ping is successful."
break
else
# echo "$IP Ping is failure $NUM"
FAIL_COUNT[$NUM]=192.168.1.$IP
let NUM++
fi
done
if [ ${#FAIL_COUNT[*]} -eq 3 ];then
echo "${FAIL_COUNT[1]} Ping is failure!"
unset FAIL_COUNT[*]
fi
done
監控cpu、內存使用率
監控cpu
#!/bin/bash
DATE=$(date +%F" "%H:%M)
IP=$( ifconfig br0|awk -F' ' 'NR==2{print $2}')
#IP=$(ifconfig eth0 |awk -F ' :+' '/inet addr/{print $4}' ) # 只支持CentOS6
MAIL="[email protected]"
if ! which vmstat &>/dev/null; then
echo "vmstat command no found, Please install procps package."
exit 1
fi
US=$(vmstat |awk 'NR==3{print $13}' )
SY=$(vmstat |awk 'NR==3{print $14} ')
IDLE=$(vmstat |awk 'NR==3{print $15}')
WAIT=$(vmstat |awk 'NR==3{print $16}' )
USE=$(($US+$SY))
if [ $USE -ge 50 ]; then
echo "
Date: $DATE
Host: $IP
Problem: CPU utilization $USE" | mail -s "CPU Monitor" $MAIL
fi