刚开始学习Python,用Python写了一个获取Linux服务器信息的脚本,在debian和centos上测试经过。首先须要安装一个psutil库,在安装psutil以前须要安装python的开发工具包node
#debian apt-get install python-devpython
#centos yum install python-devel linux
psutil下载页面centos
https://pypi.python.org/pypi?:action=display&name=psutil#downloads 服务器
#install psutilide
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测试结果