標籤:
《Linux指令從初學到精通》第3章檔案管理,本章介紹了許多常用命令,如cp、ln、chmod、chown、diff、tar、mv等,因為這些都與檔案管理相關,在日常的使用中經常用到,因此本章是本書的重點章節。本節為大家介紹dump(檔案系統備份)。
AD:
3.19 dump(檔案系統備份)
(1)頻度等級:☆
(2)功能說明:
dump 為備份工具程式,可將目錄或整個檔案系統備份至指定的裝置,或備份成一個大檔案。
(3)文法:
- dump[-cnu][-0123456789][-b <區塊大小>][-B
<區塊數目>][-d <密度>][-f <裝置名稱>][-h <層
- 級>][-s <磁帶長度>][-T <日期>][目錄或檔案系統]
- dump [-wW]
(4)所屬包:
- dump # yum -y install dump
(5)提示:
指定產生的備份檔案名或目標裝置檔案,可使用參數“-f”。
第一次備份檔案時,備份層級為0,以後使用增量備份,以縮短備份時間並節省空間的。
(6)相關命令:
- restore //恢複
(7)參數:
dump主要參數如表3-21 所示。
表3-21 dump參數表
(8)典型執行個體:
例1:使用dump命令備份指定目錄。
例如使用“-f”參數備份指定的“/etc”目錄,使用如下命令:
- dump-f etc.bak /etc/ #備份/etc/目錄下所有檔案
將輸出以下資訊:
-
- [email protected]:~$ dump -f etc.bak /etc/#備份/etc/目錄下所有檔案
- DUMP: Date of this level dump: Sun Sep 20 14:47:35 2009 #備份輸出資訊
- DUMP: Label: none
- DUMP: Writing 10 Kilobyte records
- DUMP: mapping (Pass I) [regular files]
- DUMP: mapping (Pass II) [directories]
- DUMP: estimated 14472 blocks.
- DUMP: Volume 1 started with block 1 at: Sun Sep 20 14:47:36 2009
- DUMP: dumping (Pass III) [directories]
- DUMP: dumping (Pass IV) [regular files]
- DUMP: Closing etc.bak
- DUMP: Volume 1 completed at: Sun Sep 20 14:47:38 2009
- DUMP: Volume 1 14870 blocks (14.52MB)
- DUMP: Volume 1 took 0:00:02
- DUMP: Volume 1 transfer rate: 7435 kB/s
- DUMP: 14870 blocks (14.52MB) on 1 volume(s)
- DUMP: finished in 2 seconds, throughput 7435 kBytes/sec
- DUMP: Date of this level dump: Sun Sep 20 14:47:35 2009
- DUMP: Date this dump completed: Sun Sep 20 14:47:38 2009
- DUMP: Average transfer rate: 7435 kB/s
- DUMP: DUMP IS DONE
eg:
[[email protected] ~]# du -sh /etc
37M /etc
- [[email protected] ~]# ll -h etc.bak
-rw-r--r--. 1 root root 44M Jul 1 05:22 etc.bak
使用file命令查看檔案資訊,可得到如下結果:
- [email protected]:~$ file etc.bak #查看備份檔案資訊
- etc.bak: new-fs dump file (little endian), This
dump Sun Sep 20 14:47:35 2009, Previous
- dump Thu Jan 1 08:00:00 1970, Volume 1, Level
zero, type: tape header, Label none, Filesystem
- / (dir etc), Device /dev/sda1, Host hdd-desktop,
Flags 3 #備份檔案的詳細資料
例2:使用dump 命令備份整個根檔案系統。使用該命令可以將整個根檔案系統備份到指定的外設,使用的命令如下:
- dump -0f /dev/nst0 / #將整個根檔案系統備份到SCSI 裝置/dev/nst0
該命令將整個根檔案系統備份到外設“/dev/nst0”上。
-------------------------------------------------------------------------------------------------------------------------------------------
完整備份工具:dump,restore
dump:除了可以備份整個檔案系統外,還可以制定等級。 dump支援整個檔案系統或者單一目錄,但對於目錄的支援比較不足。 當待備份的資料為單一檔案系統時:可以使用完整的dump功能,包括利用0~9的數個level來備份等。 當待備份的資料只是目錄,並非單一檔案系統時: 所有的備份資料都必須要在該目錄下面; 且僅能使用level 0,即僅支援完整備份而已; 不支援-u 參數,即無法建立/etc/dumpdates這個level備份的時間記錄檔案。 #dump [-Suvj] [-level] [-f 備份檔案] 待備份資料#dump -W -S:僅列出後面的待備份的資料需要多少磁碟空間才能夠備份完畢 -u:將這次dump的時間記錄到 /etc/dumpdates檔案中 -v:將dump的檔案過程顯示出來 -j:加入bzip2的支援,將資料進行壓縮,預設bzip2壓縮等級為2 -level:壓縮等級,-0~-9十個等級 -f:有點類似tar,後面接產生的檔案,可接例如 /dev/st0裝置檔案名稱等 -W:列出在/etc/fstab裡面的具有dump設定的分區是否有備份過 例如: #df -h #dump -S /dev/sda1 #dump -0u -f /root/boot.dump /boot #ll /root/boot.dump /etc/dumpdates #cat /etc/dumpdates 查看一下有沒有被 dump 過的檔案系統 #dump -W 用dump備份非檔案系統,即單一目錄的方法 -u,level 1~9都不適用 將 /etc 整個目錄通過dump進行備份,且含壓縮功能 #dump -0j -f /root/etc.dump.bz2 /etc restore:恢複dump備份#restore -t [-f dumpfile] [-h] ==>用來查看dump檔案#restore -C [-f dumpfile] [-D 掛載點] ==>比較dump與實際檔案#restore -i [-f dumpfile] ==>進入互動模式#restore -r [-f dumpfile] ==>還原整個檔案系統相關的各種模式,各種模式無法混用,例如不可寫 -tC。 -t:此模式用在查看dump起來的備份檔案中含有什麼重要資料。類似tar -t 功能。 -C:此模式可以將dump內的資料拿出來跟實際的檔案系統作比較,最終會列出“在dump檔案內有記錄的, 且目前檔案系統不一樣”的檔案。 -i:進入互動模式,可以僅還原一部分檔案,用在dump目錄時的還原。 -r:將整個檔案系統還原的一種模式,用在還原針對檔案的dump備份。 -h:查看完整備份資料中的inode與檔案系統label 等資訊。 -f:後面就接你要處理的那個dump檔案。 -D:與-C進行搭配,可以查出後面接的掛載點與dump內有不同的檔案。 例子: 1.用restore查看dump後的備份資料內容 將boot.dump的檔案內容顯示出來看看 #restore -t -f /root/boot.dump 2.比較差異並且還原整個檔案系統 dump可以查詢檔案系統與備份檔案之間的差異,並且將分析到的差異資料進行備份。 #cd /boot #mv config-2.6.18-128.el5 config-2.6.18-128.e15-back #restore -C -f /root/boot.dump (通過備份的資料,找到與目前實際檔案系統有差異的資料) 由於dump是記錄整個檔案系統的,因此還原時你也應該要給予一個全新的檔案系統才行。 #fdisk /dev/sda .... #partprobe #mkfs -t ext3 /dev/sda8 #mount /dev/sda8 /mnt #cd /mnt #restore -r -f /root/boot.dump 僅還原部分檔案的restore互動模式#cd /mnt#restore -i -f /root/etc.dump 此時進入了 互動模式 按help會有協助 裡面可以用ls,cd,pwd等命令 >add passwd shadow group ==>加入解壓縮列表 >delete group ==>加錯了,將group刪除 >ls passwd shadow *passwd 要被解壓縮的前面有 * *shadow >extract ==>開始進行解壓縮 >quit#ll -d etc#ll etc引自:http://blog.chinaunix.net/uid-28216282-id-3366865.html
《linux備份與恢複之一》3.19 dump(檔案系統備份)