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

 

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