用shell脚本实现企业日常巡检

#!/bin/bash

function system(){
echo "##########系统信息##########"
OS_TYPE=uname
OS_VER=cat /etc/redhat-release
OS_KER=uname -a|awk '{print $3}'
OSTIME=`date +%F%T<br/>OS_RUN_TIME=uptime |awk '{print $3}'|awk -F, '{print $1}'<br/>OS_LAST_REBOOT_TIME=who -b|awk '{print $2,$3}'<br/>OS_HOSTNAME=hostname`

echo " 系统类型:$OS_TYPE"
echo " 系统版本:$OS_VER"
echo " 系统内核:$OS_KER"
echo " 当前时间:$OS_TIME"
echo " 运行时间:$OS_RUN_TIME"
echo "最后重启时间:$OS_LAST_REBOOT_TIME"
echo " 本机名称:$OS_HOSTNAME"
}
function network(){

echo "############网络信息############"
INTERNET=(ifconfig|grep ens|awk -F: '{print $1}')
for((i=0;i<echo ${#INTERNET[*]};i++))
do
OS_IP=ifconfig ${INTERNET[$i]}|head -2|grep inet|awk '{print $2}'
echo " 本机IP:${INTERNET[$i]}:$OS_IP"
done
curl -I http://www.baidu.com &>/dev/null
if [ $? -eq 0 ]
then echo " 访问外网:成功"
else echo " 访问外网:失败"
fi
}

function hardware(){

echo "##########硬件信息##########"
CPUID=grep "physical id" /proc/cpuinfo |sort|uniq|wc -l
CPUCORES=grep "cores" /proc/cpuinfo|sort|uniq|awk -F: '{print $2}'
CPUMODE=grep "model name" /proc/cpuinfo|sort|uniq|awk -F: '{print $2}'

echo " CPU数量: $CPUID"
echo " CPU核心:$CPUCORES"
echo " CPU型号:$CPUMODE"

MEMTOTAL=free -m|grep Mem|awk '{print $2}'
MEMFREE=free -m|grep Mem|awk '{print $7}'

echo " 内存总容量: ${MEMTOTAL}MB"
echo "剩余内存容量: ${MEMFREE}MB"

disksize=0
swapsize=free|grep Swap|awk {'print $2'}
partitionsize=(df -T|sed 1d|egrep -v "tmpfs|sr0"|awk {'print $3'})
for ((i=0;i<echo ${#partitionsize[*]};i++))
do
disksize=expr $disksize + ${partitionsize[$i]}
done
((disktotal=($disksize+$swapsize)/1024/1024))

echo " 磁盘总容量: ${disktotal}GB"

diskfree=0
swapfree=free|grep Swap|awk '{print $4}'
partitionfree=(df -T|sed 1d|egrep -v "tmpfs|sr0"|awk '{print $5}')
for ((i=0;i<echo ${#partitionfree[*]};i++))
do
diskfree=expr $diskfree + ${partitionfree[$i]}
done

((freetotal=($diskfree+$swapfree)/1024/1024))

echo "剩余磁盘容量:${freetotal}GB"
}

function secure(){
echo "########安全信息##########"

countuser=(last|grep "still logged in"|awk '{print $1}'|sort|uniq)
for ((i=0;i<echo ${#countuser[*]};i++))
do echo "当前登录用户:${countuser[$i]}"
done

md5sum -c --quiet /opt/passwd.db &>/dev/null
if [ $? -eq 0 ]
then echo " 用户异常:否"
else echo " 用户异常:是"
fi
}

function chksys(){
system
network
hardware
secure
}

转载于:https://blog.51cto.com/14241151/2365817

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值