第十六講 備份與恢復
16.1 備份概述
1、Linux系統需要備份的數據
u/root/目錄:
u/home/目錄:
u/var/spool/mail/目錄:
u/etc/目錄:
u其他目錄:
安裝服務的數據
u apache需要備份的數據
Ø 配置文件
Ø 網頁主目錄
Ø 日志文件
u mysql需要備份的數據
Ø 源碼包安裝的mysql:/usr/local/mysql/data/
Ø RPM包安裝的mysql:/var/lib/mysql/
2、備份策略
完全備份:完全備份就是指把所有需要備份的數據全部備份,當然完全備份可以備份整塊硬盤,整個分區或某個具體的目錄
增量備份:每次備份都跟上一次備份相比較

差異備份:每次備份都跟初始的完全備份來比較,只備份新增數據

16.2 dump和restore命令
1、dump命令
yum -y install dump
[root@localhost ~]# dump [選項] 備份之后的文件名 原文件或目錄
選項:
-level: 就是我們說的0-9十個備份級別
-f 文件名: 指定備份之后的文件名
-u: 備份成功之后,把備份時間記錄在/etc/dumpdates文件
-v: 顯示備份過程中更多的輸出信息
-j: 調用bzlib庫壓縮備份文件,其實就是把備份文件壓縮為.bz2格式,默認壓縮等級是2
-W: 顯示允許被dump的分區的備份等級及備份時間
備份分區 :
dump -0uj -f /root/boot.bak.bz2 /boot/
#備份命令。先執行一次完全備份,並壓縮和更新備份時間

cat /etc/dumpdates
#查看備份時間文件


cp install.log /boot/
#復制一個測試日志文件到/boot分區
dump -1uj -f /root/boot.bak1.bz2 /boot/
#增量備份/boot分區,並壓縮
dump –W
#查詢分區的備份時間及備份級別的

備份文件或目錄:
dump -0j -f /root/etc.dump.bz2 /etc/
#完全備份/etc/目錄,只能使用0級別進行完全備份,而不再支持增量備份

2、restore命令
[root@localhost ~]# restore [模式選項] [選項]
模式選項:restore命令常用的模式有以下四種,這四個模
式不能混用。
-C:比較備份數據和實際數據的變化
-i: 進入交互模式,手工選擇需要恢復的文件。
-t: 查看模式,用於查看備份文件中擁有哪些數據。
-r: 還原模式,用於數據還原。
選項:
-f: 指定備份文件的文件名
比較備份數據和實際數據的變化:
mv /boot/vmlinuz-2.6.32-279.el6.i686 /boot/vmlinuz-2.6.32- 279.el6.i686.bak
#把/boot目錄中內核鏡像文件改個名字
restore -C -f /root/boot.bak.bz2
#restore發現內核鏡像文件丟失

查看模式:
restore -t -f boot.bak.bz2

還原模式:
#還原boot.bak.bz2分區備份:
#先還原完全備份的數據
mkdir boot.test
cd boot.test/
restore -r -f /root/boot.bak.bz2 #解壓縮,恢復原始數據
restore -r -f /root/boot.bak1.bz2 #恢復增量備份數據
#還原/etc/目錄的備份etc.dump.bz2
restore -r -f etc.dump.bz2
#還原etc.dump.bz2備份