歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

Linux系統備份策略探討

一 為何要備份Linux系統
一個應用中的Linux系統,受內部環境影響、底層硬件的影響、外來黑客的攻擊,出現問題是難免的,作為一名系統管理人員,自身的職責並不是要保證系統永遠不出現問題,事實上也是不可能的,而是在系統出現故障或者崩潰時,能以最快的速度,在最短的時間內恢復系統的運行,保證數據的安全,將故障帶來的損失降到最低點。
這就要求系統管理人員對操作系統和業務應用有一個合理的備份恢復策略,完美的備份策略可以保證業務的零宕機時間和數據的完全恢復。由於業務是運行在操作系統之上,因此操作系統的備份與恢復效率直接關系到整個業務系統的恢復程度。所以操作系統的備份變得至關重要。
二 Linux系統需要備份的數據
在windows下有ghost軟件,可以將整個系統完全復制到另一個硬盤,ghost是一種磁盤鏡像技術,可以將系統盤所有數據鏡像到另一個備份硬盤上,當系統出現問題,用備份的鏡像磁盤,在短時間內即可將系統所有數據完全恢復。
Linux下雖然也有類似ghost的工具,但是由於硬件的兼容性、恢復的復雜度等影響,ghost並不能很好的用於Linux鏡像備份,同時如果Linux系統磁盤分區過大,備份和恢復過程都會很長,因此ghost並不適合備份Linux操作系統。
事實上,全盤備份系統並不是一個好的策略,Linux操作系統也沒有必要完全備份,我們僅僅需要備份系統的所有配置文件即可,這樣備份過程迅速,恢復也快。
Linux系統需要備份的文件大致可以分為兩類:系統級配置文件和用戶級配置文件。
系統級配置文件主要是系統全局的一些配置信息,例如/etc/目錄、/home目錄、/boot目錄、/root目錄等。這些目錄對系統運行至關重要,並且針對不同的系統應用設置都不盡相同,如果丟失了這些文件,即使新的操作系統能很快安裝完畢,對系統也要重新配置,花費的時間會更長。
用戶級配置文件是用戶的業務應用與系統相關的配置文件,這些文件是運行系統業務應用必不可少的,一旦丟失,系統業務就會無法啟動,例如/usr/local整個目錄、/var/www目錄、/etc整個目錄等。
重要的文件是必須要備份的,那麼不需要備份的目錄有哪些呢,例如/dev目錄、/proc目錄、/mnt目錄、/tmp目錄等這些目錄都是不需要備份的,因為這些目錄中要麼是內存數據,要麼是臨時文件,沒有重要的數據,備份的原則是重要數據一定要全部備份,無用數據絕不備份。
三 備份的介質與方式
要備份數據,就要有存放數據的安全容器,對存儲介質的基本要求一般從存取速度、存儲安全、存儲容量三個方面進行考慮。
存取速度是對存儲介質的一個基本要求,數據的備份是一個讀寫操作極度頻繁的過程,存取速度非常高的備份介質,可以大大縮短備份數據的時間,同時也可以減少恢復數據的時間。
存儲安全性是對存儲介質的一個硬性要求,不安全的存儲設備還不如不要存儲介質,現在很多存儲設備都對安全性做了很多優化,例如做raid磁盤陣列,cache讀寫等。專業的存儲廠商有EMC、IBM、SUN等,都有自己的存儲設備。
存儲容量也是選擇存儲介質必須要考慮的一個方面,過大的存儲空間會造成存儲設備的浪費,過小的存儲空間,導致數據存儲失敗,因此,必須根據備份數據的大小,選擇相應大小的存儲介質。
1.常用備份介質
常用的存儲介質有光驅、磁盤、磁帶機、軟盤等,這裡重點介紹一下磁帶機的使用方法:
Linux下使用磁帶機的方式有多種, tar命令是最經常使用的方法,tar主要用於單機環境下,將數據直接寫入磁帶機。磁帶機在Linux下對應的設備名稱為/dev/stX,如果是第一個磁帶機,即為/dev/st0,基本操作如下:
(1)倒帶,將磁帶卷至起始位置
mt -f /dev/st0 rewind
(2)擦掉磁帶上的內容
mt -f /dev/st0 erase
新購買的磁帶,打開後即可使用,無需進行擦寫操作,同時當數據寫滿磁帶後,磁帶可以覆蓋原有數據並繼續寫入,因此無需進行任何擦寫動作,由於擦寫對磁帶有一定的損害,建議不要執行擦寫操作。
(3)出帶,即將磁帶卷至初始位置然後從磁帶機內彈出
mt –f /dev/st0 offline
(4)通過tar列出磁帶上的目錄或者文件
tar tvf /dev/st0 [需要查看的文件或者目錄]
如果後面不跟任何文件或目錄,則是查看磁帶上所有數據,當磁帶上還沒有任何數據時,執行此操作會報錯,不過不影響磁帶使用。
(5)通過tar備份數據到磁帶
tar cvf /dev/st0 [要寫入的文件或目錄名]
備份數據到磁帶有兩種方式,打包壓縮後寫入磁帶和不打包直接寫入磁帶。這裡我們推薦將數據不打包直接寫入磁帶的方法。這樣可以提高數據存儲的安全性。為什麼建議不打包備份呢,因為磁帶是順序寫入數據的,即線性存儲,如果將所有數據打包成一個獨立的文件,那麼當磁帶任何一個地方發生故障,都可能會導致這個壓縮文件解壓失敗而不可用,而如果對備份數據進行不打包存儲的話,在磁帶上就有很多文件,即使磁帶某個地方發生故障,其余的文件仍然可用,這樣就大大提高了數據備份的安全性。
例如,將/data/ixdba1.tar.gz這個壓縮文件寫入到磁帶,並覆蓋原有的內容,可以執行如下操作:
[root@webserver /data]# tar cvf /dev/st0 /data/ixdba1.tar.gz
通過“tar cvf”將數據寫入磁帶時,每次都會覆蓋磁帶中原有的數據,也就是每次都是從磁帶的開始部分寫入數據。磁帶機的傳輸速度比較慢,對於不是很大的備份文件,在很短時間內就能備份完成,非常適合做系統級的文件備份。
(6)通過tar繼續寫入數據到磁帶
tar rvf /dev/st0 [要寫入的文件名]
由於磁帶是線性存儲,數據是依次寫入的,為了在寫入新的數據時,不覆蓋原有已經存在的數據,可以使用“tar rvf”參數組合將數據依次寫入磁帶。
例如,依次將/data/ixdba2.tar.gz和/data/ixdba3.tar.gz備份到磁帶機上:
[root@webserver /data]# tar rvf /dev/st0 /data/ixdba2.tar.gz
[root@webserver /data]# tar rvf /dev/st0 /data/ixdba3.tar.gz
(7)通過tar將數據從磁帶恢復到磁盤
tar xvf /dev/st0 [要恢復的文件或者目錄名]
例如,首先查閱磁帶上存在的所有數據:
[root@webserver ~]# tar tvf /dev/st0

Copyright © Linux教程網 All Rights Reserved