| | |
| | | @return: 是否成功 |
| | | ''' |
| | | logging.info("loopCenterbakRarDR %s" % str(argvDict)) |
| | | allServer = argvDict.get("allServer", 0) |
| | | mixServerIDInfo = argvDict.get("mixServerIDInfo", "") |
| | | if not mixServerIDInfo: |
| | | if not allServer and not mixServerIDInfo: |
| | | queryBackupCenterError("can not found mixServerIDInfo!") |
| | | return |
| | | |
| | |
| | | serverIDList = [OnlyServerID] if OnlyServerID else parseMixServerIDInfo(mixServerIDInfo) |
| | | spfileFormat = "Event_%s-s" % spID |
| | | |
| | | logging.info("serverIDList=%s,spfileFormat=%s" % (serverIDList, spfileFormat)) |
| | | logging.info("allServer=%s,serverIDList=%s,spfileFormat=%s" % (allServer, serverIDList, spfileFormat)) |
| | | logloop = "logloop" in kv |
| | | printloop = "printloop" in kv |
| | | # 备份日期文件夹 |
| | | for backupDateFile in os.listdir(backupPath): |
| | | if logloop: |
| | | logging.info("backupDateFile:%s" % backupDateFile) |
| | | if printloop: |
| | | print "backupDateFile:%s" % backupDateFile |
| | | backupDateStr = backupDateFile[len("Event_"):] |
| | | backupDatetime = strToDatetime(backupDateStr) |
| | | if not checkDate(startDatetime, "", backupDatetime): |
| | |
| | | if not backupServer.startswith(spfileFormat): |
| | | continue |
| | | serverInfo = backupServer[len(spfileFormat):] |
| | | if not checkIsBackupServerFolder(serverIDList, serverInfo): |
| | | if not allServer and not checkIsBackupServerFolder(serverIDList, serverInfo): |
| | | continue |
| | | |
| | | logging.info("loop %s" % os.path.join(backupPath, backupDateFile, backupServer)) |
| | |
| | | from unrar import rarfile # 放在函数内,子服用不到此模块,这样就不需要安装此依赖了 |
| | | # 备份分区文件夹 |
| | | for backupServer in os.listdir(os.path.join(backupPath, backupDateFile)): |
| | | if logloop: |
| | | logging.info(" %s/%s" % (backupDateFile, backupServer)) |
| | | if printloop: |
| | | print " %s/%s" % (backupDateFile, backupServer) |
| | | if not backupServer.endswith(".rar"): |
| | | # 非rar文件的不处理 |
| | | continue |
| | | if not backupServer.startswith(spfileFormat): |
| | | continue |
| | | serverInfo = backupServer[len(spfileFormat):-4] |
| | | if not checkIsBackupServerFolder(serverIDList, serverInfo): |
| | | if not allServer and not checkIsBackupServerFolder(serverIDList, serverInfo): |
| | | continue |
| | | #logging.info("backupServer:%s" % backupServer) |
| | | #rarfile.namelist() # 列表,rar文件中所有子文件的path(相对于rar文件包而言的) |