2015-06-30 82 views
0

我想對整個硬盤進行備份。在Ubuntu中備份整個磁盤

步驟一步什麼我'嘗試做:

1)檢查存儲容量(即要被backupped):

df -h 
Filesystem  Size Used Avail Use% Mounted on 
/dev/sda1  455G 157G 275G 37%/

2)安裝額外的,空的硬盤到的/ mnt /備份/

/dev/sdb  294G 63M 279G 1% /mnt/backup 

3)運行的備份(使用LZOP作爲最快壓縮機)

dd if=/dev/sda1 bs=4M conv=noerror iflag=noatime,nofollow | lzop -1 > /mnt/backup/dev-sda1.lzo 

但備份失敗,出現錯誤:lzop: No space left on device: <stdout>

額外的硬盤正在與dev-sda1.lzo完全。但是/ dev/sda1「157G」的原始大小明顯小於/ dev/sdb「279G」上的可用大小。即使沒有壓縮。

在/ etc/fstab中的/ dev/sda1的被安裝到 「/」:

UUID=8a49b90e-6115-43a6-9702-7620182bbbf5/    ext4 errors=remount-ro 0  1 

有沒有可能是 「DD」 是做的遞歸複製 「到/ mnt /備份/」 文件夾,這導致它失敗?

請指教

+1

編號'dd'正在讀取您的原​​始塊設備低於文件系統級別,所以它沒有遞歸的概念。 –

+1

另外,當你備份'/ dev/sda1'時,你將獲得455GB的輸入數據,因爲'dd'沒有文件系統的概念,也沒有使用/未使用的空間 - 參見上文。 –

+0

謝謝。我現在看到了「難題」。 –

回答

0

感謝Mark Setchell向我展示正確的方向。

最後沒有空格創建整個分區的轉儲解決辦法是:

dump -0a -z1 -f /mnt/hdd1/dev-sda1.dump.gz /dev/sda1 

爲Ubuntu爲157g分區14.04 +開發文件+數據庫文件「轉儲」需要45分鐘(在7200轉HDD)結果文件是80 G(壓縮級別= 1)。