模块下载
wget http://www.albany.edu/~ja6447/mogilefs.py
import md5
import mogilefs
//通过api连接mfs 域名、IP、端口
con=mogilefs.Client(domain='www.360doc.com',trackers=['192.168.1.1:7001'])
//下载pdf文件
file=open('/home/13638285445863.pdf','w')
//通过key来下载文件
con.get_file_data('/handout/2013/03/21/13638285445863.pdf',fp=file)
file.close()
利用遍历mfs的日志文件,将mfs存储的文件备份到远端服务器(日志文件内包括存储的文件名)
#!/usr/bin/python
#coding=utf8
import os
import re
import md5
import mogilefs
import time
import paramiko
//mfs的日志文件以日期命名
TIME=time.strftime('%Y-%m-%d',time.localtime(time.time()))
T=str(TIME)
#使用paramiko模块远程拷贝mfs-log到本地
scp=paramiko.Transport(("server1",10088)) //主机名、端口
scp.connect(username='user',password='pwd' //用户名、密码
sftp = paramiko.SFTPClient.from_transport(scp)
remotepath='/home/logs/img_store.'+T+'.log' //远端日志路径
localpath='/home/logs/img_store.'+T+'.log' //本地保存路径
sftp.get(remotepath,localpath)
scp.close()
#遍历日志内容
logfile = open('/home/logs/img_store.'+T+'.log','r')
for line in open("/home/logs/img_store."+T+".log"):
line = logfile.readline().split(' ')[4]
dir=os.path.dirname(line)
basename=os.path.basename(line)
#判断路径是否存在
if not os.path.exists('/home/data/mfs-file'+dir): //文件备份目录
os.makedirs('/home/data/mfs-file'+dir)
#判断文件是否存在,若存在则覆盖
if os.path.isfile('/home/data/mfs-file'+line):
os.remove('/home/data/mfs-file'+line)
//连接mfs并通过文件名下载文件
con=mogilefs.Client(domain='mfs.xueersi.com',trackers=['192.168.1.X:7001'])
file=open('/home/data/mfs-file'+line,'w')
a=con.get_file_data(line)
file.write(a)
file.close()
#如果不存在,则下载
else:
con=mogilefs.Client(domain='file-mfs.xueersi.com',trackers=['192.168.1.X:7001'])
file=open('/home/data/mfs-file'+line,'w')
a=con.get_file_data(line)
file.write(a)
file.close()
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。