Linux系統(tǒng)備份方法——dd
最近在弄系統(tǒng)備份,看了很多文章,學習了很多,今兒給大家介紹下dd命令,用于備份系統(tǒng),和Ghost有的一拼,而且還簡單,下面給大家詳細介紹下:
dd命令 把指定的輸入文件拷貝到指定的輸出文件中,并且在拷貝的過程中可以進行格式轉(zhuǎn)換。
dd指令選項詳解
if=file ——輸入文件名,缺省為標準輸入
of=file ——輸出文件名,缺省為標準輸出
ibs=bytes —— 一次讀入bytes個字節(jié)(即一個塊大小為 bytes 個字節(jié))
obs=bytes—— 次寫bytes個字節(jié)(即一個塊大小為 bytes 個字節(jié))
bs=bytes ——同時設(shè)置讀寫塊的大小為 bytes,可代替 ibs 和obs
cbs=bytes —— 一次轉(zhuǎn)換bytes個字節(jié),即轉(zhuǎn)換緩沖區(qū)大小
skip=blocks——從輸入文件開頭跳過 blocks個塊后再開始復(fù)制
seek=blocks——從輸出文件開頭跳過 blocks個塊后再開始復(fù)制。(通常只有當輸出文件是磁盤或磁帶時才有效)
count=blocks——僅拷貝blocks個塊,塊大小等于 ibs 指定的字節(jié)數(shù)
conv=conversion[,conversion...]——用指定的參數(shù)轉(zhuǎn)換文件
ascii ——轉(zhuǎn)換EBCDIC為 ASCII
ebcdic ——轉(zhuǎn)換ASCII為 EBCDIC
ibm ——轉(zhuǎn)換ASCII為 alternate EBCDIC
block ——把每一行轉(zhuǎn)換為長度為 cbs的記錄,不足部分用空格填充
unblock ——使每一行的長度都為 cbs,不足部分用空格填充
lcase ——把大寫字符轉(zhuǎn)換為小寫字符
ucase ——把小寫字符轉(zhuǎn)換為大寫字符
swab ——交換輸入的每對字節(jié)
noerror ——出錯時不停止
notrunc ——不截短輸出文件
sync ——把每個輸入塊填充到ibs個字節(jié),不足部分用空(NUL)字符補齊
注意:指定數(shù)字的地方若以下列字符結(jié)尾乘以相應(yīng)的數(shù)字:b=512,c=1, k=1024, w=2, xm=number m,kB=1000,K=1024,MB=1000*1000,M=1024*1024,GB=1000*1000*1000,G=1024*1024*1024
備份系統(tǒng)的操作命令:
恢復(fù)系統(tǒng)時操作命令:
如下是使用dd命令備份一個文件,并進行壓縮
dd if=/dev/sda of=~/disk1.img #disk1.img就是備份好的磁盤映像文件
后續(xù)是壓縮文件
gzip disk1.img #generates disk1.img.gz
或者在創(chuàng)建磁盤映像文件的同時就執(zhí)行壓縮:
dd if=/dev/sda | gzip > disk.img.gz
dd if=/dev/sda | bzip2 > disk.img.bz2
備份系統(tǒng)的一個示例:
恢復(fù)系統(tǒng),那就執(zhí)行如下步驟:
此外dd命令還可以用于增加swap分區(qū)的大小,參見如下示例
# dd if=/dev/zero of=/root/bigfile bs=1M count=128
128+0 records in
128+0 records out
134217728 bytes (134 MB) copied, 3.93615 s, 34.1 MB/s
# mkswap /root/bigfile
Setting up swapspace version 1, size = 131068 KiB
no label, UUID=4bdfb5e8-1aff-450a-a658-31b945e2d4e8
# swapon /root/bigfile
在每次開機的時候自動加載swap文件, 需要在 /etc/fstab 文件中增加一行:
/root/bigfile swap swap defaults 0 0
dd備份總結(jié)完畢,希望大家喜歡。
馬哥學習交流群
?