在Gnu / Linux中,有許多不同的程序可以執行備份,但是個人而言,我喜歡簡單的東西,而不是圖形界面(當然,這沒什麼錯,但是如果我可以避免使用它,我可以避免)。
在rsync命令中,我們經常忘記做一個強大的備份盟友。 它具有足夠的選項來製作具有所有必要要求的副本。
以下python腳本為此目的製作備份副本。 您會發現它非常簡單,即使對於完全不了解這種語言的人來說,立即添加一行腳本來同步新目錄也是非常簡單的。
在我的機器上,我使用一個稱為IOmega_HDD的外部硬盤,您可以根據情況在腳本中重命名它。
另一件事是在副本中添加或刪除目錄。 在與註釋行相同的腳本中,說明瞭如何執行此操作。
要使任務自動化,您可以在crontab中添加一行,其中包含python解釋器和要將腳本放置到的路徑。 希望對您有用。
警告:wordpress編輯器不允許在行首添加空格,因此腳本中必需的縮進丟失了,因此我用空格(。)替換了空白,您必須使用編輯器將其消除並用空格替換。
——————————————————————————————
# -*- coding: utf-8 -*-
import os
ruta_usuario=os.getcwd()
ruta_volumen="/media/Iomega_HDD" #Modificar según nombre de disco externo
directorio_destino=ruta_volumen + "/" + "RsyncBackup"
try:
....if os.path.exists(directorio_destino):
........pass
....else:
........os.mkdir(directorio_destino,0777)
....directorios_origen=[]
....rutas_directorios_origen=[]
....#Se añaden los directorios para sincronizar
....directorios_origen.append("Documentos")
....directorios_origen.append("Imágenes")
....directorios_origen.append("Descargas")
....#Añadir aquí otros directorios que se deseen sincronizar
....#o eliminar de las líneas anteriores los que no se deseen
....for rutas in directorios_origen:
....rutas_directorios_origen.append(ruta_usuario + "/" + rutas)
....for rutas in rutas_directorios_origen:
....print "Sincronizando " + rutas + " con " + directorio_destino
....os.system("rsync -ahv --progress" + " " + rutas + " " + directorio_destino)
....print "Proceso terminado"
except OSError:
print "Ha ocurrido un error ¿está el disco externo listo?"
except:
print "Ha ocurrido un error"
---------------------------