CENTOS的備份和恢復其實非常簡單,我們只要把全部文件用TAR打包就行,下次需要恢復的適合再解壓開覆蓋就可以了
下面詳解CENTOS備份和還原的過程
tar打包命令的特點:
1、保留權限
2、適合備份整個目錄
3、可以選擇不同的壓縮方式
4、如果選擇不壓縮還能實現增量備份,部份還原,參考man tar
因為Linux類系統不像windows,它不會限制ROOT用戶存取任何東西,因此完全可以把一個分區上全部文件都存放入一個TAR文件中。
下面是備份過程
首先使用ROOT權限登陸系統,然后執行
cd /
進入根目錄
然后執行下面的完整備份命令(建議新建一個screen來執行,防止網絡中斷):
tar cvpzf backup.tgz / --exclude=/proc --exclude=/lost+found --exclude=/mnt --exclude=/sys --exclude=backup.tgz
下面詳解下這個命令:
“tar”是用於打包文件的命令。
“cvpfz”是tar的選項,分別是“創建檔案文件”、“保持權限”(保留所有東西原來的權限)、“使用gzip來減小文件尺寸”。
“backup.gz”是我們作為備份文件的文件名。
“/”是我們要備份的目錄,/代表的是整個文件系統。
在 備份文件名“backup.gz”和要備份的目錄名“/”之間給出了備份時必須排除在外的目錄。有些目錄是無用的,例如“/proc”、“/lost+ found”、“/sys”。當然“backup.gz”這個備份文件本身必須排除在外,不然就無限循環了。另外如果不把“/mnt”排 除在外,那么掛載在“/mnt”上的其它分區也會被備份。另外需要確認一下“/media”上沒有掛載任何東西(例如光盤、移動硬盤),如果有掛載東西, 必須把“/media”也排除在外。
執行備份命令后,如果文件比較多可能需要很長時間,備份完成后,在文件系統的根目錄將生成一個名為“backup.tgz”的文件,它的尺寸有可能非常大。現在你可以把它燒錄到DVD上或者放到你認為安全的地方去。
在備份命令結束時你可能會看到這樣一個提示:’tar: Error exit delayed from previous errors’,多數情況下你可以忽略它。
也可以用Bzip2來壓縮文件,Bzip2比gzip的壓縮率高,但是速度慢一些。如果壓縮率對你來說很重要,那么你應該使用Bzip2,用“j”代替命令中的“z”,並且給檔案文件一個正確的擴展名“bz2”。完整的命令如下:
tar cvpjf backup.tar.bz2 / --exclude=/proc --exclude=/lost+found --exclude=/backup.tar.bz2 --exclude=/mnt --exclude=/sys
然后是恢復系統
恢復系統其實非常簡單,就是把之前打包的文件覆蓋回去就是了。
首先登陸為root用戶,然后把之前備份的文件“backup.tgz”拷貝到分區的根目錄下。
Linux中可以在一個運行的系統中恢復系統,不需要用boot-cd來專門引導。當然如果系統已經無法啟動, 那就只能先重裝一下系統,再來恢復。
使用下面的命令來恢復系統(同樣建議新建個screen):
tar xvpfz backup.tgz -C /
如果備份文件是使用Bzip2壓縮的,那就用:
tar xvpfj backup.tar.bz2 -C /
注意:上面的命令會用備份文件中的文件覆蓋分區上的所有文件。 是所有文件,所以你要清楚你在操作什么
執行恢復命令一般需要比較長時間來解包覆蓋,所以一般建議開個screen來防止掉線。
恢復命令結束時,你的工作還沒完成,別忘了重新創建那些在備份時被排除在外的目錄:
mkdir proc mkdir lost+found mkdir mnt mkdir sys
/proc 權限:文件所有者:root群組:root 所有者:讀取 執行 群組:讀取 執行 其它:讀取 執行
/lost+found 權限:文件所有者:root群組:root 所有者:讀取 寫入 執行 群組:讀取 執行 其它:讀取 執行
/mnt 權限:文件所有者:root群組:root 所有者:讀取 寫入 執行 群組:讀取 執行 其它:讀取 執行
/sys 權限:文件所有者:root群組:root 所有者:讀取 寫入 執行 群組:讀取 執行 其它:讀取 執行
然后執行
restorecon -Rv /
接下來重啟系統后,你的系統就恢復到備份前了!
