当前位置:首页 > linux教程 > 列表

荐一个获取Linux服务器(ubuntu、centos已测试)信息的Shell脚本

发布:smiling 来源: PHP粉丝网  添加日期:2015-04-22 20:08:01 浏览: 评论:0 

本文我们来分享一个获取Linux服务器信息的Shell脚本,此脚本已在ubuntu、centos测试通过,本文脚本可以获取Linux发行版本,操作系统是不是64位的.

此脚本已经在ubuntu以及centos版本上测试通过,直接上源代码比较爽:

  1. #!/bin/bash 
  2.  
  3. Line='===========' 
  4.  
  5. #linux发行版名称 
  6. if [[ -f /usr/bin/lsb_release ]]; then 
  7. OS=$(/usr/bin/lsb_release -a |grep Description |awk -F : '{print $2}' |sed 's/^[ t]*//g') 
  8. else 
  9. OS=$(cat /etc/issue |sed -n '1p') 
  10. fi 
  11.  
  12. echo -e "${Line}nOS:n${OS}n${Line}" 
  13.  
  14. ###################################################################################################### 
  15.  
  16. #查看系统是否为64位:uname -m,若出现x86_64,则为64位 
  17. OS_version=$(uname -m) 
  18. echo -e "OS_version:n${OS_version}n${Line}" 
  19.  
  20.  
  21. #系统内核版本 
  22. kernel_version=$(uname -r) 
  23. echo -e "Kernel_version:n${kernel_version}n${Line}" 
  24.  
  25. #cpu型号 
  26. CPU=$(grep 'model name' /proc/cpuinfo |uniq |awk -F : '{print $2}' |sed 's/^[ t]*//g' |sed 's/ +/ /g') 
  27. echo -e "CPU model:n${CPU}n${Line}" 
  28.  
  29. #物理cpu个数 
  30. Counts=$(grep 'physical id' /proc/cpuinfo |sort |uniq |wc -l) 
  31. echo -e "Total of physical CPU:n${Counts}n${Line}" 
  32.  
  33. #物理cpu内核数 
  34. Cores=$(grep 'cpu cores' /proc/cpuinfo |uniq |awk -F : '{print $2}' |sed 's/^[ t]*//g') 
  35. echo -e "Number of CPU coresn${Cores}n${Line}" 
  36.  
  37. #逻辑cpu个数 
  38. PROCESSOR=$(grep 'processor' /proc/cpuinfo |sort |uniq |wc -l) 
  39. echo -e "Number of logical CPUs:n${PROCESSOR}n${Line}" 
  40.  
  41. #查看CPU当前运行模式是64位还是32位 
  42. Mode=$(getconf LONG_BIT) 
  43. echo -e "Present Mode Of CPU:n${Mode}n${Line}" 
  44.  
  45.  
  46. #查看CPU是否支持64位技术:grep 'flags' /proc/cpuinfo,若flags信息中包含lm字段,则支持64位 
  47. Numbers=$(grep 'lm' /proc/cpuinfo |wc -l) 
  48. if (( ${Numbers} > 0)); then lm=64 
  49. else lm=32 
  50. fi 
  51. echo -e "Support Mode Of CPU:n${lm}n${Line}" 
  52. ###################################################################### 
  53.  
  54. #Memtotal 内存总大小 
  55. Total=$(cat /proc/meminfo |grep 'MemTotal' |awk -F : '{print $2}' |sed 's/^[ t]*//g') 
  56. echo -e "Total Memory:n${Total}n${Line}" 
  57.  
  58. #系统支持最大内存 
  59. Max_Capacity=$(dmidecode -t memory -q |grep 'Maximum Capacity' |awk -F : '{print $2}' |sed 's/^[ t]*//g') 
  60. echo -e "Maxinum Memory Capacity:n${Max_Capacity}n${Line}" 
  61.  
  62. #查看内存类型、频率、条数、最大支持内存等信息:dmidecode -t memory,或dmidecode | grep -A16 "Memory Device$" 
  63. #下面为统计内存条数 
  64. Number=$(dmidecode | grep -A16 "Memory Device$" |grep Size|sort |sed 's/^[ t]*//g'| grep -v 'No Module Installed' | wc -l) 
  65. echo -e "Number of Physical Memory:n${Number}n${Line}" 
  66.  
  67.  
  68. #SwapTotal swap分区总大小 
  69. SwapTotal=$(cat /proc/meminfo |grep 'SwapTotal' |awk -F : '{print $2}' |sed 's/^[ t]*//g') 
  70. echo -e "Total Swap:n${SwapTotal}n${Line}" 
  71.  
  72. #Buffers size 
  73. Buffers=$(cat /proc/meminfo |grep 'Buffers' |awk -F : '{print $2}' |sed 's/^[ t]*//g') 
  74. echo -e "Buffers:n${Buffers}n${Line}" 
  75.  
  76. #Cached size 
  77. Cached=$(cat /proc/meminfo |grep '<Cached>' |awk -F : '{print $2}' |sed 's/^[ t]*//g') 
  78. echo -e "Cached:n${Cached}n${Line}" 
  79.  
  80. #空闲内存 + buffers/cache 
  81. Available=$(free -m |grep - |awk -F : '{print $2}' |awk '{print $2}') 
  82. echo -e "Available Memory:n${Available} MBn${Line}" 
  83.  
  84. #显示硬盘,以及大小 
  85. Disk=$(fdisk -l |grep 'Disk' |awk -F , '{print $1}' | sed 's/Disk identifier.*//g' | sed '/^$/d') 
  86. echo -e "Amount Of Disks:n${Disk}n${Line}" 
  87.  
  88. #各挂载分区使用情况 
  89. Partion=$(df -hlP |sed -n '2,$p') 
  90. echo -e "Usage Of partions:n${Partion}n${Line}" 

测试结果展示,代码如下:

  1. =========== 
  2. OS: 
  3. Red Hat Enterprise Linux Server release 5.6 (Tikanga) 
  4. =========== 
  5. OS_version: 
  6. i686 
  7. =========== 
  8. Kernel_version: 
  9. 2.6.18-238.el5 
  10. =========== 
  11. CPU model: 
  12. AMD A6-3400M APU with Radeon(tm) HD Graphics 
  13. ===========  //phpfensi.com 
  14. Total of physical CPU: 
  15. =========== 
  16. Number of CPU cores 
  17. =========== 
  18. Number of logical CPUs: 
  19. =========== 
  20. Present Mode Of CPU: 
  21. 32 
  22. =========== 
  23. Support Mode Of CPU: 
  24. 64 
  25. =========== 
  26. Total Memory: 
  27. 514744 kB 
  28. =========== 
  29. Maxinum Memory Capacity: 
  30. 1024 GB 
  31. =========== 
  32. Number of Physical Memory: 
  33. =========== 
  34. Total Swap: 
  35. 1044216 kB 
  36. =========== 
  37. Buffers: 
  38. 101936 kB 
  39. =========== 
  40. Cached: 
  41. 267356 kB 
  42. =========== 
  43. Available Memory: 
  44. 369 MB 
  45. =========== 
  46. Amount Of Disks: 
  47. Disk /dev/sda: 107.3 GB 
  48. =========== 
  49. Usage Of partions: 
  50. /dev/sda3 96G 4.6G 87G 6% / 
  51. /dev/sda1 99M 12M 83M 13% /boot 
  52. tmpfs 252M 0 252M 0% /dev/shm 
  53. /dev/hdc 3.0G 3.0G 0 100% /media/RHEL_5.6 i386 DVD 
  54. ===========

Tags: Linux服务器 ubuntu centos

分享到: