Linux操作系統(tǒng)如何備份的相關方法
Linux操作系統(tǒng)如何備份的相關方法
Linux操作系統(tǒng)也會受到電腦病毒入侵導致數(shù)據(jù)丟失,備份系統(tǒng)是一個很好的習慣。下面由學習啦小編為大家整理了Linux操作系統(tǒng)如何備份的相關方法,希望對大家有幫助!
Linux操作系統(tǒng)如何備份的相關方法一
1. 備份系統(tǒng)
我該如何備份我的Ubuntu系統(tǒng)呢?很簡單,就像你備份或壓縮其它東西一樣,使用TAR。和Windows不同,Linux不會限制root訪問任何東西,你可以把分區(qū)上的所有東西都扔到一個TAR文件里去!
首先成為root用戶:
$ sudo su
然后進入文件系統(tǒng)的根目錄(當然,如果你不想備份整個文件系統(tǒng),你也可以進入你想要備份的目錄,包括遠程目錄或者移動硬盤上的目錄):
# cd /
下面是我用來備份系統(tǒng)的完整命令:
# tar cvpzf backup.tgz –exclude=/proc –exclude=/lost+found –exclude=/backup.tgz –exclude=/mnt –exclude=/sys /
讓我們來簡單看一下這個命令:
“tar”當然就是我們備份系統(tǒng)所使用的程序了。
“cvpfz”是tar的選項,意思是“創(chuàng)建檔案文件”、“保持權限”(保留所有東西原來的權限)、“使用gzip來減小文件尺寸”。
“backup.gz”是我們將要得到的檔案文件的文件名。
“/”是我們要備份的目錄,在這里是整個文件系統(tǒng)。
在 檔案文件名“backup.gz”和要備份的目錄名“/”之間給出了備份時必須排除在外的目錄。有些目錄是無用的,例如“/proc”、“/lost+ found”、“/sys”。當然,“backup.gz”這個檔案文件本身必須排除在外,否則你可能會得到一些超出常理的結果。如果不把“/mnt”排 除在外,那么掛載在“/mnt”上的其它分區(qū)也會被備份。另外需要確認一下“/media”上沒有掛載任何東西(例如光盤、移動硬盤),如果有掛載東西, 必須把“/media”也排除在外。
有人可能會建議你把“/dev”目錄排除在外,但是我認為這樣做很不妥,具體原因這里就不討論了。
執(zhí)行備份命令之前請再確認一下你所鍵入的命令是不是你想要的。執(zhí)行備份命令可能需要一段不短的時間。
備份完成后,在文件系統(tǒng)的根目錄將生成一個名為“backup.tgz”的文件,它的尺寸有可能非常大?,F(xiàn)在你可以把它燒錄到DVD上或者放到你認為安全的地方去。
在備份命令結束時你可能會看到這樣一個提示:’tar: Error exit delayed from previous errors’,多數(shù)情況下你可以忽略它。
你還可以用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 /
2. 恢復系統(tǒng)
在進行恢復系統(tǒng)的操作時一定要小心!如果你不清楚自己在做什么,那么你有可能把重要的數(shù)據(jù)弄丟,請務必小心!
接著上面的例子。切換到root用戶,并把文件“backup.tgz”拷貝到分區(qū)的根目錄下。
在 Linux中有一件很美妙的事情,就是你可以在一個運行的系統(tǒng)中恢復系統(tǒng),而不需要用boot-cd來專門引導。當然,如果你的系統(tǒng)已經(jīng)掛掉不能啟動了, 你可以用Live CD來啟動,效果是一樣的。你還可以用一個命令把Linux系統(tǒng)中的所有文件干掉,當然在這里我不打算給出這個命令!
使用下面的命令來恢復系統(tǒng):
# tar xvpfz backup.tgz -C /
如果你的檔案文件是使用Bzip2壓縮的,應該用:
# tar xvpfj backup.tar.bz2 -C /
注意:上面的命令會用檔案文件中的文件覆蓋分區(qū)上的所有文件。
執(zhí)行恢復命令之前請再確認一下你所鍵入的命令是不是你想要的,執(zhí)行恢復命令可能需要一段不短的時間。
恢復命令結束時,你的工作還沒完成,別忘了重新創(chuàng)建那些在備份時被排除在外的目錄:
# mkdir proc
# mkdir lost+found
# mkdir mnt
# mkdir sys
等等
當你重啟電腦,你會發(fā)現(xiàn)一切東西恢復到你創(chuàng)建備份時的樣子了!
Linux操作系統(tǒng)如何備份的相關方法二
1. 備份用戶程序
/usr/local目錄下為一般用戶程序的安裝位置,
tar -zcpPvf local.tar.gz /usr/local/
/opt也常用于存放用戶程序,
tar -zcpPvf opt.tar.gz /opt/
2. 備份全局參數(shù)配置文件
Linux下大部分配置都保存在/etc/文件夾下,
tar -zcpPvf etc.tar.gz /etc/
3. 備份用戶目錄
tar -zcpPvf monkeyzx.tar.gz /home/monkeyzx/
其中monkeyzx為你的用戶名。
4. 恢復備份
恢復備份的方法很簡單,只要將壓縮包解壓到新的系統(tǒng)中即可。因為壓縮時使用的是絕對路徑,解壓可以在任意目錄下使用下面的命令,
su root
tar -zxpPvf local.tar.gz
tar -zxpPvf opt.tar.gz
tar -zxpPvf etc.tar.gz
tar -zxpPvf monkeyzx.tar.gz
補充:Linux操作系統(tǒng)備份概述
在前面的一些文章中,我反復提到經(jīng)常會把系統(tǒng)搞崩潰,所以備份系統(tǒng)就是一件不容忽視的事情。由于 Linux 系統(tǒng)本身的優(yōu)越性,系統(tǒng)的備份和還原還是比較容易的。主要表現(xiàn)在以下方面:
Linux 系統(tǒng)所有的數(shù)據(jù)都以文件的形式存在,所以備份就是直接拷貝文件;硬盤分區(qū)也被當成文件,所以可以直接克隆硬盤數(shù)據(jù)。
Linux 系統(tǒng)自帶很多實用工具,比如 tar、dd、rsync 等,備份還原系統(tǒng)不需要購買或下載第三方軟件。
Linux 系統(tǒng)在運行時其硬盤上的文件可以直接被覆蓋,所以還原系統(tǒng)的時候不需要另外的引導盤。(當然,系統(tǒng)完全掛掉到無法啟動這種情況還是需要另外的引導盤的。)
備份 Linux 系統(tǒng)的策略有很多,比如使用 dd 命令直接克隆硬盤分區(qū):
sudo dd if=/dev/sda1 of=/dev/sdb1
或者,使用 tar 將硬盤上的文件打包:
cd /
sudo tar cvpzf backup.tgz --exclude=/proc --exclude=/mnt --exclude=/sys --exclude=/backup.tgz /
還原系統(tǒng)的命令是:
sudo dd if=/dev/sdb1 of=/dev/sda1
或
tar xvpfz backup.tgz -C /
但是我最終選擇的是 rsync 命令。rsync 是一個非常優(yōu)秀的文件同步工具,從它的名字可以看出,它支持遠程同步。當然,在備份我的桌面系統(tǒng)時,只需要用到它的本地同步功能就行了。之所以選擇 rsync,是因為它具有如下優(yōu)點:
在備份還原過程中,可以保存文件原有的時間、權限、軟硬鏈接等信息;
首次備份時,需要復制所有文件,但是再次備份或還原系統(tǒng)時,只需要復制修改過的文件。
關于 rsync 的使用方法,其主要參考文檔是man rsync,另外,rsync 也可以作為守護進程運行用來建立文件備份服務器,可以參考文檔man rsyncd.conf。