Linux系统信息获取脚本

#!/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

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章