剛開始學習Python,用Python寫了一個獲取Linux服務器信息的腳本,在debian和centos上測試通過。首先需要安裝一個psutil庫,在安裝psutil之前需要安裝python的開發工具包
#debian apt-get install python-dev
#centos yum install python-devel
psutil下載頁面
https://pypi.python.org/pypi?:action=display&name=psutil#downloads
#install psutil
tar xzvf psutil-2.1.3.tar.gz
cd psutil-2.1.3/
python setup.py install
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import platform
import os
import psutil
import datetime
def get_platform():
'''獲取操作系統類型'''
return platform.system()
def get_version():
'''獲取操作系統版本'''
return platform.linux_distribution()
def get_architecture():
'''獲取操作系統位數'''
return platform.architecture()
def get_node():
'''獲取主機名'''
return platform.node()
def get_processor():
'''獲取物理CPU個數'''
return psutil.cpu_count(logical=False)
def get_cores():
'''獲取邏輯CPU個數'''
return psutil.cpu_count()
def get_boot_time():
'''獲取開機時間'''
return datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d %H:%M:%S")
def get_disk_root():
'''獲取根分區磁盤空間'''
return psutil.disk_usage('/')
def get_ip():
'''獲取ip地址'''
IP = os.popen("ip add list |grep global |awk -F[/' '] '{print $6}'").readlines()
getip = IP[0]
return getip.strip('\n')
def get_mem_total():
'''獲取內存容量'''
return psutil.virtual_memory()[0]/1024/1024
def get_mem_free():
'''獲取可用內存大小'''
return psutil.virtual_memory()[4]/1024/1024
print '操作系統類型:',get_platform()
print '操作系統分支:',get_version()[0]
print '操作系統版本:',get_version()[1]
print '操作系統位數:',get_architecture()[0]
print '主機名:',get_node()
print 'IP地址:',get_ip()
print '物理CPU個數:',get_processor()
print '邏輯CPU個數:',get_cores()
print '開機時間:',get_boot_time()
print '根分區可用空間(單位爲MB):',get_disk_root()[2]/1024/1024
print '內存總量(單位爲MB):',get_mem_total()
print '可用內存大小(單位爲MB):',get_mem_free()
#debian測試結果
#centos測試結果