例一:linux下備份自身系統
1.備份
用root權限,運行完整的備份命令:
$ sudo su
# tar -cvpzf /media/disk/backup.tgz / --exclude=/proc --exclude=/lost+found --exclude=/tmp --exclude=/sys --exclude=/media --exclude=/home
接着,讓我們稍微解釋一下:
* '-cvpzf'是我們給tar加的選項。
* /media/disk/backup.tgz是壓縮包的存放路徑與名稱。
* ‘/'是我們想要備份的目錄,我們想要備份根目錄下的所有的東西,所以使用 / 作為根目錄。
* '--exclude'就是我們要剔除的目錄了。
有些目錄是不需要備份的。如:/proc目錄、 /tmp目錄、/sys目錄,里面都是臨時文件,備份容易出錯,/home目錄備份容易引起"tar: 由於前面延遲的錯誤而退出"的提示。 同時確保你沒有任何東西掛載在/mnt、/media目錄內,否則,會把被掛載的分區也備份在內,備份文件會很大。還要注意不要把備份文件本身也備份進去了,也需要剔除。
備份結束以后,在你的/media/disk目錄下有一個backup.tgz ,這就是你的備份文件。
2.恢復備份
慎用,將會把你目標路徑下的所有同名文件替換成壓縮文檔里的文件,目標路徑下多出的目錄與文件並不會必刪除。
sudo tar -xvpzf backup.tgz -C /
注:參數x是告訴tar程序解壓縮備份文件。 -C 參數是指定tar程序解壓縮到的目錄。
恢復完了以后,再手工建立如下一些目錄:
mkdir proc
mkdir lost+found
mkdir sys
mkdir tmp
mkdir media
重啟