Linux巡查脚本

#!/bin/bash

if [ -f output.txt ]
 then
 touch output.txt
fi
# modify file permission
if [ -w output.txt ]
 then
 chmod 755 output.txt
fi


#总内存容量
mem_total=$(free | awk '/Mem/{print $2}')

#剩余内存容量
mem_free=$(free | awk '/Mem/{print $NF}')


#磁盘信息
disk=$(df | awk '/^\/dev/{print $1,$2,$4}'|column -t)

#CPU最近1分钟的平均负载
load1=$(uptime | sed 's/,//g' | awk '{print $(NF-2)}')

#CPU最近5分钟的平均负载
load5=$(uptime | sed 's/,//g' | awk '{print $(NF-1)}')

#CPU最近15分钟的平均负载
load15=$(uptime | sed 's/,//g' | awk '{print $(NF)}')

#登录用户数量
login_users=$(who | wc -l)

#进程数量
procs=$(ps aux | wc -l)

#系统总账户数量
users=$(sed -n '$=' /etc/passwd)


#输出数据信息
echo "\033[32m************************开始巡检********************\033[0m" >output.txt

echo "本机总内存容量:\033[32m$mem_total\033[0m,剩余可用内存容量:\033[32m$mem_free\033[0m" >>output.txt

echo "CPU最近1分钟,5分钟,15分钟的平均负载分别为:\033[32m$load1 $load5 $load15\033[0m" >>output.txt

echo "本机总账户数量为:\033[32m$users\033[0m,当前登录系统的账户数量:\033[32m$login_users\033[0m" >>output.txt

echo "\033[32m$top_proc_cpu\033[0m" >>output.txt

echo "\033[32m$top_proc_mem\033[0m" >>output.txt

echo "每个磁盘分区的总容量与剩余容量信息如下:" >>output.txt

echo  "$disk" >>output.txt

echo  "$tps" >>output.txt

echo  "$read_write" >>output.txt

echo  "$net_monitor" >>output.txt

echo "用户历史登录记录如下:" >>output.txt

last -f /var/log/wtmp >>output.txt

echo "24h内修改过的文件如下:" >>output.txt

find ./ -mtime 0 >>output.txt

echo "最占用内存的进程如下:(列出前10个):" >>output.txt

ps -aux | sort -k4nr | head -10 >>output.txt #查看最占用内存的进程(列出了10个)

echo  "\033[32m************************巡检结束********************\033[0m" >>output.txt

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值