#!/bin/bash
#收集整理的一些linux查看系统信息的命令和方法:
#1、查看Linux系统主机名:
#echo "====主机名===="
#hostname
usage(){
echo $"Usage: $0 [ all | sysinfo | cpuinfo | meminfo | hdinfo | netinfo]"
}
do_sys() {
#1 查看主机名/内核版本/CPU构架:
echo "=========主机名/内核版本/CPU构架=============="
uname -n -r -p -o
#2 查看Linux系统类型和版本:
echo "=========系统类型和版本======================="
cat /etc/redhat-release
#3 查看语言字符集设置:
echo "=========语言字符集设置======================="
echo $LANG $LANGUAGE
#zh_CN.UTF-8
# cat /etc/sysconfig/i18n
#LANG="zh_CN.UTF-8"
#4、查看用户:
#查看服务器上面所有用户
echo "=========服务器上用户========================="
cat /etc/passwd|awk -F: '{print $1}'
#5 查看系统时间
echo "=========系统时间============================="
date '+%Y-%m-%d %H:%M:%S'
#6 查看运行进程
#ps -ef
#7 查看服务器开机时长,用户数,平均负载
echo "=========开机时长,用户数,平均负载==========="
uptime
# lsmod #查看所有加载的模块
# env #查系统环境变量
# crontab -l #查看计划任务
#8 查看防火墙状态
echo "==========服务器防火墙状态===================="
firewall-cmd --state
#停止firewall
#systemctl stop firewalld.service
#9 查看selinux状态
echo "==========服务器selinux状态==================="
sestatus |head -n 1
#永久关闭SELinux
#修改配置文件/etc/selinux/config,将其中的SELINUX=enforcing改为SELINUX=disabled
#查看防火墙规则
#echo "===防火墙规则===="
#iptables -nvL
#10 打开文件数的限制
echo "=========服务器打开文件数===================="
ulimit -n
#11、查看linux打开的服务:
#echo "==========服务器开启的服务=================="
#chkconfig --list |grep :on #查看开启的服务
}
do_cpu() {
#二、linux查看服务器硬件设备信息:
#1、查看服务器CPU信息:
echo "=========服务器CPU信息========================"
#grep 'model name' /proc/cpuinfo|awk -F: '{print $2}'|sed 's# ##g'|uniq -c
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
#2、服务器CPU位数:
echo "=========服务器CPU位数========================"
getconf LONG_BIT
#查看服务器逻辑CPU信息:
echo "=========服务器逻辑CPU信息===================="
#cat /proc/cpuinfo | grep physical | uniq -c
cat /proc/cpuinfo | grep 'physical id'| uniq -c
}
do_mem() {
#三、linux查看服务器存储信息:
#1、查看内存信息:
echo "=========服务器内存信息======================="
sed -n '/MemTotal\|MemFree/p' /proc/meminfo
#2、查看交换空间:
echo "=========服务器交换分区======================="
sed -n '/SwapTotal\|SwapFree/p' /proc/meminfo
}
do_hd() {
#3、查看挂载分区空间使用情况:
#文件系统 容量 已用 可用 已用% 挂载点
echo "==========磁盘分区及大小======================"
df -h
}
do_net() {
#linux查看服务器网络信息:
#1、查看服务器IP地址:
echo "==========服务器IP地址========================"
#ifconfig|grep 'inet addr:'|grep -v '127.0.0.1'|cut -d: -f2|awk '{ print $1}'
ifconfig|grep 'inet'|cut -d: -f2|awk '{ print $2}'
#2、查看linux网关:
echo "==========服务器默认网关======================"
route |grep default
#3、查看服务器DNS配置:
echo "==========服务器DNS配置======================="
cat /etc/resolv.conf
#4 查看路由表
echo "=========路由表==============================="
route -n
#5 查看网络统计信息
#netstat -s
#6、查看linux端口:
#echo "=========linux端口及连接====================="
#netstat -antlup
}
main(){
case $1 in
all)
do_sys;
do_cpu;
do_mem;
do_hd;
do_net;
;;
sysinfo)
do_sys;
;;
cpuinfo)
do_cpu;
;;
meminfo)
do_mem;
;;
hdinfo)
do_hd;
;;
netinfo)
do_net;
;;
*)
usage;
esac
}
main $1