rwr3211 发表于 2014-11-14 11:34:40

python获取Linux信息

刚开始学习Python,用Python写了一个获取Linux服务器信息的脚本,在debian和centos上测试通过。首先需要安装一个psutil库,在安装psutil之前需要安装python的开发工具包
#debianapt-get install python-dev
#centosyum 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():
      '''获取操作系统类型'''
      returnplatform.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
      return getip.strip('')

def get_mem_total():
      '''获取内存容量'''
      return psutil.virtual_memory()/1024/1024

def get_mem_free():
      '''获取可用内存大小'''
      return psutil.virtual_memory()/1024/1024

print '操作系统类型:',get_platform()
print '操作系统分支:',get_version()
print '操作系统版本:',get_version()
print '操作系统位数:',get_architecture()
print '主机名:',get_node()
print 'IP地址:',get_ip()
print '物理CPU个数:',get_processor()
print '逻辑CPU个数:',get_cores()
print '开机时间:',get_boot_time()
print '根分区可用空间(单位为MB):',get_disk_root()/1024/1024
print '内存总量(单位为MB):',get_mem_total()
print '可用内存大小(单位为MB):',get_mem_free()


#debian测试结果


#centos测试结果


huayumicheng 发表于 2014-11-16 20:05:57

转载的日志,为什么不标明转载自哪里呢。
页: [1]
查看完整版本: python获取Linux信息