Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

Linux dd 指令完全指南:從備份光碟到磁碟克隆的實戰技巧

編輯:Linux 教學

指令簡介

dd(convert and copy a file)是 Linux 底層資料複製利器,能以區塊為單位讀寫,支援格式轉換、跳過區塊、指定緩衝區大小等進階功能,常用於備份 MBR、製作 ISO、克隆磁碟/分區。

常用參數速查表

參數說明
if=檔案/裝置輸入來源(預設 stdin)
of=檔案/裝置輸出目的地(預設 stdout)
bs=位元組同時設定讀/寫緩衝區大小(等同 ibs+obs)
count=區塊數僅複製指定數量的輸入區塊
skip=區塊數跳過輸入開頭的區塊數
seek=區塊數跳過輸出開頭的區塊數
conv=notrunc不截斷輸出檔案
conv=noerror發生錯誤時繼續處理
conv=sync將每個輸入記錄填充至 ibs 大小(用 NUL)

實戰範例

1. 備份/還原軟碟(或 USB 隨身碟)

# 備份至映像檔
dd if=/dev/fd0 of=/tmp/floppy.img bs=1024

# 還原至另一張軟碟
dd if=/tmp/floppy.img of=/dev/fd0 bs=1024

# 完成後刪除暫存檔
rm /tmp/floppy.img

2. 製作光碟 ISO 映像檔

dd if=/dev/cdrom of=cdrom.iso bs=2048

需確認光碟為標準 ISO9660 格式。燒錄可用 cdrecord -v cdrom.iso(參數視硬體調整)。

3. 磁碟/分區完整克隆

# 將 sda 完整複製到 sdb(需相同容量,謹慎操作!)
dd if=/dev/sda of=/dev/sdb bs=64K conv=noerror,sync

4. 備份 MBR 開機磁區

dd if=/dev/sda of=mbr.backup bs=512 count=1

進階技巧:顯示進度

現代 dd 支援 status=progress 參數:

dd if=/dev/sda of=/dev/sdb bs=64K status=progress

或搭配 pv 管線監控:

dd if=/dev/sda | pv | dd of=/dev/sdb

注意事項

  • 權限:需 root 權限操作區塊裝置。
  • 方向不可反:if 與 of 搞反會導致資料毀損,執行前務必三確認。
  • 同步:結束前執行 sync 確保緩衝區寫入實體媒體。
Copyright © Windows教程網 All Rights Reserved