Dd
使用 dd 創建具有小分區的驅動器映像
我有一個帶有一個分區的可啟動 USB 驅動器。驅動器為 16GB,分區為 32MB。我想創建驅動器的 ISO(包括引導扇區)。使用 dd,我可以創建分區的映像(這將是 32MB 大,但不是我想要的,因為它無法啟動)或者我可以創建整個驅動器的映像,這將是一個巨大的浪費時間和磁碟空間。我嘗試使用 clonezilla,但無法從 clonezilla 映像創建 ISO。
如何創建驅動器的可引導映像,而無需對驅動器的整個未使用部分進行映像?PS:只要鏡像是可啟動的並且可以在virtualbox中使用,我真的不在乎它是否是ISO。
您要做的是將分區表與分區一起複製。您可以通過僅將驅動器複製到分區末尾來實現這一點(該表位於第一個扇區中)。
首先,檢查驅動器的確切幾何形狀。例如分開:
# parted /dev/sdb GNU Parted 3.3 Using /dev/sdb Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) unit B (parted) print Model: blah Disk /dev/sdb: 1000204886016B Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 2048B 33556480B 33554432B fat32 Boot
我將單位切換到字節以獲取分區末端的確切位置。現在有了dd,複製適量的數據就很簡單了。
# dd if=/dev/sdb of=drive.img iflag=count_bytes bs=32k count=33556480
那應該這樣做。您將在開始時獲得分區以及分區表。注意使用,
count_bytes
所以我們不必使用塊大小的倍數(所以我們可以使用更大的大小,只要記憶體可以容納它就會更快)。