dump指令主要用于針對檔案系統的備份,dump指令提供的level 0-9參數,使得dump指令可以進行完整備份(level =0),也可以進行差異備份(level>0)。Dump也能備份單一的目錄,隻不過功能上有一定限制。
dump常用參數:
-S :僅列出後面的待備份資料需要多少磁盤空間
-u:将這次dump的時間記錄到/etc/dumpdates檔案中
-v:将dump檔案過程顯示出來
-j:加入bzip2的支援,将檔案進行壓縮,預設bzip2等級為2
-level :從0-9,共10個等級,0表示完整備份,0以上的數值表示差異備份。
-f:後面接産生的檔案。
-W:列出在/etc/fstab裡面的具有dump設定的分區是否有被備份過。
檢視備份檔案需要的磁盤空間大小:
<code>[root@localhost ~]</code><code># df -h</code>
<code>Filesystem Size Used Avail Use% Mounted on</code>
<code>/dev/sda2</code> <code>18G 13G 3.8G 78% /</code>
<code>tmpfs 491M 84K 491M 1% </code><code>/dev/shm</code>
<code>/dev/sda1</code> <code>283M 35M 233M 14% </code><code>/boot</code>
<code>[root@localhost ~]</code><code># dump -S /dev/sda1</code>
<code>34590720</code>
進行完全備份,備份檔案命名為/root/boot.dump
<code>[root@localhost ~]</code><code># dump -0u -f/root/boot.dump /boot</code>
<code> </code><code>DUMP: Date of this level 0 dump: Mon Aug 21 19:53:29 2017</code>
<code> </code><code>DUMP: Dumping </code><code>/dev/sda1</code> <code>(</code><code>/boot</code><code>) to </code><code>/root/boot</code><code>.dump</code>
<code> </code><code>DUMP: Label: none</code>
<code> </code><code>…</code>
檢視備份檔案資訊:
<code>[root@localhost ~]</code><code># ll /root/boot.dump/etc/dumpdates</code>
<code>-rw-rw-r--. 1 root disk 43 Aug 21 19:53 </code><code>/etc/dumpdates</code>
<code>-rw-r--r--. 1 root root 34703360 Aug 2119:53 </code><code>/root/boot</code><code>.dump</code>
加上-u參數 /etc/dumpdates内容才會更新,這個檔案隻有在做完全備份時才有支援自動更新的功能。
檢視系統自動建立的記錄檔案
<code>[root@localhost ~]</code><code># cat /etc/dumpdates</code>
<code>/dev/sda1</code> <code>0 Mon Aug 21 19:53:29 2017 -0700</code>
檢視有沒有任何檔案系統被dump過得資料
<code>[root@localhost ~]</code><code># dump -W</code>
<code>Last dump(s) </code><code>done</code> <code>(Dump </code><code>'>'</code> <code>filesystems):</code>
<code>> </code><code>/dev/sda2</code> <code>( /) Last dump: never</code>
<code> </code><code>/dev/sda1</code> <code>( </code><code>/boot</code><code>) Last dump:Level 0, Date Mon Aug 21 19:53:29 2017</code>
建立一個10M的檔案在boot内(使用dd指令從/dev/zero的第一扇區開始一次性複制出一個大小為10M的内容到/boot/test.img)
<code>[root@localhost ~]</code><code># dd if=/dev/zero of=/boot/test.img bs=10M</code>
<code>dd</code><code>: writing `</code><code>/boot/test</code><code>.img': No space lefton device</code>
<code>25+0 records </code><code>in</code>
<code>24+0 records out</code>
<code>255475712 bytes (255 MB) copied, 12.6963 s,20.1 MB</code><code>/s</code>
開始建立差異備份
<code>[root@localhost ~]</code><code># dump -1u -f/root/boot.dump.1 /boot</code>
<code> </code><code>DUMP: Date of this level 1 dump: Mon Aug 21 20:38:05 2017</code>
<code> </code><code>DUMP: Date of last level 0 dump: Mon Aug 21 19:53:29 2017</code>
<code> </code><code>DUMP: Dumping </code><code>/dev/sda1</code> <code>(</code><code>/boot</code><code>) to </code><code>/root/boot</code><code>.dump.1</code>
檢視新的備份檔案大小
<code>[root@localhost ~]</code><code># ll /root/boot*</code>
<code>-rw-r--r--. 1 root root 34703360 Aug 21 19:53 </code><code>/root/boot</code><code>.dump</code>
<code>-rw-r--r--. 1 root root 256512000 Aug 2120:38 </code><code>/root/boot</code><code>.dump.1</code>
檢視是否有記錄level1備份的時間點
<code> </code><code>/dev/sda1</code> <code>( </code><code>/boot</code><code>) Last dump:Level 1, Date Mon Aug 21 20:38:05 2017</code>
dump備份單一目錄(非檔案系統):
dump備份單一目錄時,有一定限制:
1)所有的備份資料都必須要在該目錄下。
2)且隻能使用level 0。(隻能做完整備份)
3)不支援-u參數,不能建立/etc/dumpdates在這個level備份的時間記錄檔案。
一般來說dump不會使用包含壓縮的功能,加上-j參數後,可以壓縮備份檔案,節省備份空間。
<code>[root@localhost ~]</code><code># dump -0j -f/root/etc.dump.bz2 /etc</code>
<code> </code><code>DUMP: Date of this level 0 dump: Mon Aug 21 23:42:21 2017</code>
<code> </code><code>DUMP: Dumping </code><code>/dev/sda2</code> <code>(/ (</code><code>dir</code> <code>etc)) to </code><code>/root/etc</code><code>.dump.bz2</code>
<code>[root@localhost ~]</code><code># ll /root/etc.dump.bz2</code>
<code>-rw-r--r--. 1 root root 13870901 Aug 2123:42 </code><code>/root/etc</code><code>.dump.bz2</code>
本文轉自 天黑順路 51CTO部落格,原文連結:http://blog.51cto.com/mjal01/1958333,如需轉載請自行聯系原作者