获取服务器信息的Shell脚本分享(ubuntu、centos测试通过)
此脚本已经在ubuntu以及centos版本上测试通过,脚本如下:
#!/bin/bash
line='==========='
#linux发行版名称
if [[ -f /usr/bin/lsb_release ]]; then
os=$(/usr/bin/lsb_release -a |grep description |awk -f : '{print $2}' |sed 's/^[ \t]*//g')
else
os=$(cat /etc/issue |sed -n '1p')
fi
echo -e "${line}\nos:\n${os}\n${line}"
######################################################################################################
#查看系统是否为64位:uname -m,若出现x86_64,则为64位
os_version=$(uname -m)
echo -e "os_version:\n${os_version}\n${line}"
#系统内核版本
kernel_version=$(uname -r)
echo -e "kernel_version:\n${kernel_version}\n${line}"
#cpu型号
cpu=$(grep 'model name' /proc/cpuinfo |uniq |awk -f : '{print $2}' |sed 's/^[ \t]*//g' |sed 's/ \+/ /g')
echo -e "cpu model:\n${cpu}\n${line}"
#物理cpu个数
counts=$(grep 'physical id' /proc/cpuinfo |sort |uniq |wc -l)
echo -e "total of physical cpu:\n${counts}\n${line}"
#物理cpu内核数
cores=$(grep 'cpu cores' /proc/cpuinfo |uniq |awk -f : '{print $2}' |sed 's/^[ \t]*//g')
echo -e "number of cpu cores\n${cores}\n${line}"
#逻辑cpu个数
processor=$(grep 'processor' /proc/cpuinfo |sort |uniq |wc -l)
echo -e "number of logical cpus:\n${processor}\n${line}"
#查看cpu当前运行模式是64位还是32位
mode=$(getconf long_bit)
echo -e "present mode of cpu:\n${mode}\n${line}"
#查看cpu是否支持64位技术:grep 'flags' /proc/cpuinfo,若flags信息中包含lm字段,则支持64位
numbers=$(grep 'lm' /proc/cpuinfo |wc -l)
if (( ${numbers} > 0)); then lm=64
else lm=32
fi
echo -e "support mode of cpu:\n${lm}\n${line}"
######################################################################
#memtotal 内存总大小
total=$(cat /proc/meminfo |grep 'memtotal' |awk -f : '{print $2}' |sed 's/^[ \t]*//g')
echo -e "total memory:\n${total}\n${line}"
#系统支持最大内存
max_capacity=$(dmidecode -t memory -q |grep 'maximum capacity' |awk -f : '{print $2}' |sed 's/^[ \t]*//g')
echo -e "maxinum memory capacity:\n${max_capacity}\n${line}"
#查看内存类型、频率、条数、最大支持内存等信息:dmidecode -t memory,或dmidecode | grep -a16 "memory device$"
#下面为统计内存条数
number=$(dmidecode | grep -a16 "memory device$" |grep size|sort |sed 's/^[ \t]*//g'| grep -v 'no module installed' | wc -l)
echo -e "number of physical memory:\n${number}\n${line}"
#swaptotal swap分区总大小
swaptotal=$(cat /proc/meminfo |grep 'swaptotal' |awk -f : '{print $2}' |sed 's/^[ \t]*//g')
echo -e "total swap:\n${swaptotal}\n${line}"
#buffers size
buffers=$(cat /proc/meminfo |grep 'buffers' |awk -f : '{print $2}' |sed 's/^[ \t]*//g')
echo -e "buffers:\n${buffers}\n${line}"
#cached size
cached=$(cat /proc/meminfo |grep '\<cached\>' |awk -f : '{print $2}' |sed 's/^[ \t]*//g')
echo -e "cached:\n${cached}\n${line}"
#空闲内存 + buffers/cache
available=$(free -m |grep - |awk -f : '{print $2}' |awk '{print $2}')
echo -e "available memory:\n${available} mb\n${line}"
#显示硬盘,以及大小
disk=$(fdisk -l |grep 'disk' |awk -f , '{print $1}' | sed 's/disk identifier.*//g' | sed '/^$/d')
echo -e "amount of disks:\n${disk}\n${line}"
#各挂载分区使用情况
partion=$(df -hlp |sed -n '2,$p')
echo -e "usage of partions:\n${partion}\n${line}"
----------------------------------------------------------------------------------------
测试结果展示:
===========
os:
red hat enterprise linux server release 5.6 (tikanga)
===========
os_version:
i686
===========
kernel_version:
2.6.18-238.el5
===========
cpu model:
amd a6-3400m apu with radeon(tm) hd graphics
===========
total of physical cpu:
2
===========
number of cpu cores
2
===========
number of logical cpus:
4
===========
present mode of cpu:
32
===========
support mode of cpu:
64
===========
total memory:
514744 kb
===========
maxinum memory capacity:
1024 gb
===========
number of physical memory:
1
===========
total swap:
1044216 kb
===========
buffers:
101936 kb
===========
cached:
267356 kb
===========
available memory:
369 mb
===========
amount of disks:
disk /dev/sda: 107.3 gb
===========
usage of partions:
/dev/sda3 96g 4.6g 87g 6% /
/dev/sda1 99m 12m 83m 13% /boot
tmpfs 252m 0 252m 0% /dev/shm
/dev/hdc 3.0g 3.0g 0 100% /media/rhel_5.6 i386 dvd
===========
上一篇: 葡萄糖的作用有哪些,是否对人体有益