11.8小结

1. 关于python写的代码

  1 #!/usr/bin/python
  2 
  3 import urllib2
  4 import re
  5 import xml.dom.minidom
  6 import xml.etree.ElementTree as ET
  7 import psutil
  8 
  9 #xml = 'http://10.4.1.160/System/CMStem.php?username=rasilient&password=teniliasr'
 10 req = urllib2.Request('http://10.4.1.160/System/CMSystem.php?username=rasilient&password=tneilisar')
 11 response = urllib2.urlopen(req)
 12 page = response.read()
 13 
 14 root = ET.fromstring(page)
 15 
 16 f = open('storageinfo', 'w')
 17 
 18 f.write("<Performance>\n")
 19 f.write("   <cpu>\n")
 20 cpu_percent = psutil.cpu_times_percent(interval=0.1)
 21 tmp = str(cpu_percent).split(",")
 22 for line in tmp:
 23   if re.search("user", line):
 24     user = line.split("=")[1].strip()
 25   if re.search("system", line):
 26     system = line.split("=")[1].strip()
 27   if re.search("idle", line):
 28     idle = line.split("=")[1].strip()
 29 f.write("       <us>%s</us>\n" % user)
 30 f.write("       <sy>%s</sy>\n" % system)
 31 f.write("       <id>%s</id>\n" % idle)
 32 f.write("   </cpu>\n")
 33 f.write("   <mem>\n")
 34 virtual_memory = psutil.virtual_memory()
 35 tmp = str(virtual_memory).split(",")
 36 for line in tmp:
 37   if re.search("buffer", line):
 38     buffer = line.split("=")[1].strip()
 39   if re.search("used", line):
 40     used = line.split("=")[1].strip()
#!/usr/bin/python

import urllib2
import re
import xml.dom.minidom
import xml.etree.ElementTree as ET
import psutil

#xml = 'http://10.4.1.160/System/CMStem.php?username=rasilient&password=teniliasr'
req = urllib2.Request('http://10.4.1.160/System/CMSystem.php?username=rasilient&password=tneilisar')
response = urllib2.urlopen(req)
page = response.read()

root = ET.fromstring(page)

f = open('storageinfo', 'w')

f.write("<Performance>\n")
f.write("   <cpu>\n")
cpu_percent = psutil.cpu_times_percent(interval=0.1)
tmp = str(cpu_percent).split(",")
for line in tmp:
  if re.search("user", line):
    user = line.split("=")[1].strip()
  if re.search("system", line):
    system = line.split("=")[1].strip()
  if re.search("idle", line):
    idle = line.split("=")[1].strip()
f.write("       <us>%s</us>\n" % user)
f.write("       <sy>%s</sy>\n" % system)
f.write("       <id>%s</id>\n" % idle)
f.write("   </cpu>\n")
f.write("   <mem>\n")
virtual_memory = psutil.virtual_memory()
tmp = str(virtual_memory).split(",")
for line in tmp:
  if re.search("buffer", line):
    buffer = line.split("=")[1].strip()
  if re.search("used", line):
    used = line.split("=")[1].strip()
  if re.search("free", line):
    free = line.split("=")[1].strip()
  if re.search("cached", line):
    cached_tmp = line.split("=")[1].strip()
    cached = cached_tmp.split(")")[0]

f.write("       <used>%s</used>\n" % used)
f.write("       <free>%s</free>\n" % free)
f.write("       <buffers>%s</buffers>\n" % buffer)
f.write("       <cached>%s</cached>\n" % cached)

f.write("   </mem>\n")
f.write("<phydrv>\n")
#for i in range(12):
#   f.write("   <slotnum>%s</slotnum>\n" % i)
#   f.write("   <model>%s</model>\n" % root.findall("./chassis/slot/model")[i].text)
#   f.write("   <size>%s</size>\n" % root.findall("./chassis/slot/size")[i].text)
slots = root.findall("./chassis/slot")
for slot in slots:
    f.write("   <slotnum>%s</slotnum>\n" % slot.attrib['num'].strip())
    f.write("   <model>%s</model>\n" % slot.find("model").text)

f.write("</phydrv>\n")
f.write("<Raid>\n")
diskgroup = root.findall("diskgroup")
for dg in diskgroup:
  f.write(" <name>%s</name>\n" % dg.find("name").text)
  f.write(" <status>%s</status>\n" % dg.find("status").text)
  f.write(" <disknum>%s</disknum>\n" % dg.find("disknum").text)
  f.write(" <raidlevel>%s</raidlevel>\n" % dg.find("disknum").text)
f.write("</Raid>\n")
f.write("<Cooling>\n")
f.write("   <chassis>\n")
f.write("       <ps0_FAN>%s</ps0_FAN>\n" % root.find("./c0_info/chassis/ps0_FAN").text)
f.write("       <ps1_FAN>%s</ps1_FAN>\n" % root.find("./c0_info/chassis/ps1_FAN").text)
f.write("   </chassis>\n")
f.write("</Cooling>\n")
f.write("<power>\n")
f.write("   <chassis>\n")

f.write("   </chassis>\n")
f.write("</power>\n")
f.write("</Performance>\n")
#slots = root.findall("./chassis/slot")
#for slot in slots:
#   print slot.attrib['num'].strip()
#   print slot.find("model").text
#   print slot.find("size").text
主要用于提取网页XML里内容,不是很完善,暂时能满足客户需求,需要改进的地方有出错处理和结构设计,函数应该都封装。

http://docs.python.org/2/library/index.html python还是有必要好好学一下,不能只为应付工作。

PYTHON库下载完tar包后解压完,进入目录执行python setup.py install.

2. 双控有10-G网卡,初始化时defaultIP读写错误

/home/walter/code/rasilient/base/RASOS/diskarray/local/etc/init.d/cfgsys(rc.da rc.sysinit) 

系统启动时根据niconf-0/niconf-1去写defaultip,这两个文件已经修改,但是测试发现没有写上去。在最新的KDI测试后发现能写上,所以把BUG给fix了。

纠结了好久的BUG7177

3. 关于ftp

1、检测是否安装了FTP:[root@localhost ~]# rpm -q vsftpd 


如果安装了会显示版本信息:

[root@localhost ~]# vsftpd-2.0.5-16.el5_5.1 

  否则显示:[root@localhost ~]# package vsftpd is not installed 

  2、如果没安装FTP,运行yum install vsftpd命令 

  具体的细节如下:(如果无法更新,你先配置能访问互联网,我有文档叫 CentOS 在 VMware下,如何联网到Internet的解决办法 可以解决无法上网的问题

  [root@localhost ~]# yum install vsftpd 


target上新建虚拟机上连不了外网阿。有待解决。


暂时就这样,以后每周小结一下。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值