linux系统自查脚本
Posted 火星上烤鱼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux系统自查脚本相关的知识,希望对你有一定的参考价值。
linux 自查脚本
echo "系统巡检脚本:Version `date +%F`"
echo -e "\\033[33m*******************************************************系统检查 *******************************************************\\033[0m"
echo "系统:`uname -a | awk '{print $NF}'`"
echo "发行版本:`cat /etc/redhat-release`"
echo "内核:`uname -r`"
echo "主机名:`hostname`"
echo "SELinux:`/usr/sbin/sestatus | grep 'SELinux status:' | awk '{print $3}'`"
echo "语言/编码:`echo $LANG`"
echo "当前时间:`date +%F_%T`"
echo "最后启动:`who -b | awk '{print $3,$4}'`"
echo "运行时间:`uptime | awk '{print $3}' | sed 's/,//g'`"
echo -e "\\033[33m*******************************************************CPU检查 *******************************************************\\033[0m"
echo "物理CPU个数: `cat /proc/cpuinfo | grep "physical id" | awk '{print $4}' | sort | uniq | wc -l`"
echo "逻辑CPU个数: `cat /proc/cpuinfo | grep "processor" | awk '{print $3}' | sort | uniq | wc -l`"
echo "每CPU核心数: `cat /proc/cpuinfo | grep "cores" | awk '{print $4}'`"
echo "CPU型号: `cat /proc/cpuinfo | grep "model name" | awk -F":" '{print $2}'`"
echo "CPU架构: `uname -m`"
echo -e "\\033[33m*******************************************************内存检查 *******************************************************\\033[0m"
echo "总共内存:`free -mh | awk "NR==2"| awk '{print $2}'`"
echo "使用内存:`free -mh | awk "NR==2"| awk '{print $3}'` "
echo "剩余内存:`free -mh | awk "NR==2"| awk '{print $4}'`"
echo -e "\\033[33m*******************************************************硬盘检查 *******************************************************\\033[0m"
echo "总共磁盘大小:`df -hT | awk "NR==2"|awk '{print $3}'`"
echo -e "\\033[33m*******************************************************网络检查 *******************************************************\\033[0m"
echo `ip a | grep eno | awk "NR==2" | awk '{print $NF,":",$2}'`
echo "网关:`ip route | awk 'NR==1'| awk '{print $3}'`"
echo "DNS: `cat /etc/resolv.conf | grep "nameserver" | awk '{print $2}'`"
ping -c 4 www.baidu.com > /dev/null
if [ $? -eq 0 ] ; then
echo "网络连接:正常"
else
echo "网络连接:失败"
fi
echo -e "\\033[33m*******************************************************安全检查 *******************************************************\\033[0m"
echo "登陆用户信息:`last | grep "still logged in" | awk '{print $1}'| sort | uniq`"
md5sum -c --quiet /etc/passwd > /dev/null 2&>1
if [ $? -eq 0 ];then
echo "文件未被串改"
else
echo "文件被串改"
fi
常用命令总结
系统检查
系统
uname -a
uname -a | awk '{print $NF}'
发行版本
cat /etc/redhat-release
内核
uname -r
主机名
hostname
SELinux
/usr/sbin/sestatus
/usr/sbin/sestatus | grep 'SELinux status:' | awk '{print $3}'
语言/编码
echo $LANG
当前时间
date +%F_%T
最后启动
- who命令显示关于当前在本地系统上的所有登录用户的信息
- 显示以下内容:登录名、tty、登录日期和时间
- who 命令也能显示自从线路活动发生以来经过的时间、命令解释(shell)的进程标识、登录、注销、重新启动和系统时钟的变化,还能显示由初始化进程生成的其它进程。
who -b 系统最近启动时间和日期
who -b | awk '{print $3,$4}'
运行时间
- (Uptime)是指某时间段内计算机或通信系统正常工作的总时长。
- 与上线时间相反的是宕机时间或下线时间(Downtime)
uptime
uptime | awk '{print $3}' | sed 's/,//g'
- 当前时间 23:43:07
- 系统已运行的时间 0 days, 27 min
- 当前在线用户 2 users
- 平均负载:0.01, 0.04, 0.12,最近1分钟、5分钟、15分钟系统的负载
CPU检查
物理CPU个数
cat /proc/cpuinfo | grep "physical id" | awk '{print $4}' | sort | uniq | wc -l
逻辑CPU个数
cat /proc/cpuinfo | grep "processor" | awk '{print $3}' | sort | uniq | wc -l
每CPU核心数
cat /proc/cpuinfo | grep "cores" | awk '{print $4}'
CPU型号
cat /proc/cpuinfo | grep "model name" | awk -F":" '{print $2}'
CPU架构
uname -m
内存检查
总共内存
free -mh | awk "NR==2"| awk '{print $2}'
使用内存
echo "使用内存:`free -mh | awk "NR==2"| awk '{print $3}'` "
剩余内存
free -mh | awk "NR==2"| awk '{print $4}'
硬盘检查
总共磁盘大小
df -hT | awk "NR==2"|awk '{print $3}'
网络检查
网关、DNS
ip a | grep eno | awk "NR==2" | awk '{print $NF,":",$2}'
ip route | awk 'NR==1'| awk '{print $3}'
cat /etc/resolv.conf | grep "nameserver" | awk '{print $2}'
ping -c 4 www.baidu.com > /dev/null
if [ $? -eq 0 ] ; then
echo "网络连接:正常"
else
echo "网络连接:失败"
fi
安全检查
登陆用户信息
last | grep "still logged in" | awk '{print $1}'| sort | uniq
查看文件是否被串改
md5sum -c --quiet /etc/passwd > /dev/null 2&>1
if [ $? -eq 0 ];then
echo "文件未被串改"
else
echo "文件被串改"
fi
检查文件是否被串改
#!/bin/bash
funmd5_1() {
find /etc/passwd -type f | xargs md5sum > /tmp/funmd5_1.log
}
funmd5_2() {
find /etc/passwd -type f | xargs md5sum > /tmp/funmd5_2.log
}
if [ ! -f /tmp/funmd5_1.log ];then
funmd5_1
fi
funmd5_2
diff /tmp/funmd5_1.log /tmp/funmd5_2.log > /tmp/diff.log
Status=$?
if [ $Status = 0 ];then
echo "文件未被修改!"
exit
else
echo "文件修改过了!"
fi
摘抄
永远不要去追一匹马,
用追马的时间去种草。
”人活着,
最要紧的不是取悦他人,
而是丰富自己。
尽情享受生活的美好,
不断丰盈生命的底色,
才不负来这人间一趟。
以上是关于linux系统自查脚本的主要内容,如果未能解决你的问题,请参考以下文章
Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段
C++笔记--Linux网络编程(15-0)-socket(供自查,文档说明)
C++笔记--Linux网络编程(15-0)-socket(供自查,文档说明)
npm : 无法加载文件 D:softcodeProcess ode ode_global pm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.micr +(代码片段