舊招新用:afio讓Linux也“Ghost”(轉)

ba發表於2007-08-11
舊招新用:afio讓Linux也“Ghost”(轉)[@more@]  為降低TCO,很多中、小企業都把低端的、單一的基礎伺服器應用放到了Linux系統上。比如,DNS和DHCP伺服器、Web伺服器、目錄伺服器、檔案和列印伺服器、Intranet代理伺服器、中小型資料庫伺服器,以及防火牆等。這樣以來,Linux系統的備份就成了使用者普遍關心的問題。
  
  備份工具
  
  一般來說,從Windows轉到Linux的使用者習慣用Ghost做備份,Ghost的壓縮功能能夠省下不少硬碟空間。對於硬碟緊張的使用者來說,它的確是相當好用的。不過,Ghost無法備份Linux下的XFX、JFX、XFS等高階檔案系統。另外,Ghost還有還原磁碟或分割槽的映像之後,無法啟動具有 GRUB 引導載入程式的Linux的問題。
  
  Linux系統自帶的備份工具是tar和cpio。tar工具繼承了Unix備份檔案的方法,幾乎可以工作於任何環境中,類Unix系統的老使用者一般都信賴它。與tar相比,GNU cpio更為複雜,但是也更為可靠。
  
  它可透過管道功能,使得打包時的檔案選擇、排除更為方便。如果tar檔案中有壞塊,就不能對檔案的其它部分進行訪問,而使用cpio,則只有壞塊的部分不能訪問。它像tar工具一樣使用命令列啟動程式。
  
  afio是一個基於開放原始碼的備份工具。它可以支援多種備份硬體,比如,磁帶、軟盤、ZIP、硬碟等,是一個相當好用的工具。afio與tar命令類似,並且它的存檔能夠在支援cpio命令的系統下操作。
  
  afio通常比cpio要快,且提供了更多磁帶選項,更適合於利用沒有硬體壓縮功能的磁帶進行壓縮備份。afio支援對單個檔案的壓縮,同時支援互動式處理多卷文件包,並且能更友好地處理有訛誤的輸入資料。
  
  用afio製作壓縮文件包比tar或cpio更安全。在備份處理指令碼中,afio是更佳的“文件處理引擎”。
  
  安裝afio
  
  許多Linux發行版本都包括afio,也可以到 下載afio最新版本2.4.6的原始碼,進行編譯安裝。命令如下:
  
  #gunzip afio-2.4.6.tgz
  #tar vxf afio-2.4.6.tar
  #cd afio-2.4.6
  #make
  #make install
  
  系統會在/usr/bin目錄下建立afio命令。afio將檔案列表存檔為標準輸入流,所以afio作為存檔工具,其基本語法包含兩個命令:
  
  #find path1 path2 ...[-opts] || afio -[i|o|t] [-vZ]device
  
  上面程式碼中,各引數含義如下:
  
  -i(input from)引數用來恢復磁帶或者存檔中的備份檔案。
  
  -o(output to) 引數用來把備份檔案寫入到磁帶或者存檔。
  
  -t引數用來測試磁帶或者存檔。
  
  -v引數用來對處理檔案進行列表。
  
  -Z參數列示在檔案寫入磁帶之前,需要用gzip進行壓縮。
  
  應用例項
  
  1.備份
  
  通常使用find命令來提供afio要處理的檔案列表,也可以利用find的特殊功能和afio構造一個更專業、更靈活的檔案存檔計劃。 比如,要將/usr目錄樹寫到磁帶裝置/dev/st0中,使用下列命令:
  
  #find /usr | afio -o /dev/st0
  
  如果在將檔案寫到磁帶之前進行壓縮,使用下列命令:
  
  #find /usr | afio -o -Z /dev/st0
  
  2.恢復
  
  要將存檔恢復到根目錄,使用-i引數代替-o引數,恢復壓縮的文件,要包含-Z引數:
  
  #cd /;afio -i -Z /dev/st0
  
  3.定時備份
  
  利用crontab工具可以對afio的備份進行計劃,設定成基於任何時間的、有規律執行的定時任務。例如,要在每晚3點把/home目錄備份到SCSI磁帶驅動器中,只要把下面的語句新增到root使用者的crontab檔案中即可:
  
  00 03 * * * ls /home | afio -o > /dev/st0
  
  有關使用afio進行更加複雜操作的資訊,可以參見afio的幫助。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-947600/,如需轉載,請註明出處,否則將追究法律責任。

相關文章