Linux
Linux live USB - 為什麼 ISO 9660 分區會覆蓋整個 USB 記憶棒?
我一直在檢查 Ubuntu 20.04 和 Fedora 32 實時映像,發現第一個 (ISO 9660) 分區設置為覆蓋整個映像(至少在 MBR 的分區表上,還沒有檢查 GPT)。對於 Ubuntu,這大約是 2.7 GB;對於 Fedora,它是 1.3 GB。但是,在使用 dd 將這些 ISO 複製到 USB 記憶棒後,gparted 顯示 ISO 9660 分區覆蓋了整個 32 GB 記憶棒。
這是一個gparted錯誤嗎?分區佈局有點複雜,因為 ISO 9660 分區設置為從 LBA 0 開始,甚至可以有效地覆蓋 MBR 本身。我仍然不確定為什麼這個分區必須覆蓋整個圖像;我想這是因為將其刻錄到 DVD 時,您可以擁有的唯一文件系統是 ISO 9660。
我們可以說這是一個錯誤(
gparted
以及相應的錯誤parted
)。當複製到 USB pendrive(和其他大容量儲存設備)時,這些工具*“不理解”* iso 文件的分區結構。
- 您可以查看帶有現代版本的驅動器
fdisk
並lsblk
獲得更好的結果。- 您可以在驅動器的頭部和 iso 文件的映像“後面”創建一個分區。此分區可用於儲存數據,甚至可用作持久實時系統中的持久分區,例如 Ubuntu 20.04 LTS 和 Debian 10 live。您可以使用
fdisk
and自己完成mkfs
,或者使用mkusb-plug更輕鬆。mkusb-plug 工具可能無法在 Fedora 中/與 Fedora 一起使用。使用 Lubuntu 查看複製的 live USB 驅動器的
lsblk
範例:fdisk
$ lsblk -o model,name,size,fstype,label,mountpoint /dev/sdc MODEL NAME SIZE FSTYPE LABEL MOUNTPOINT Voyager GT 3.0 sdc 29,5G iso9660 Lubuntu 20.04.1 LTS amd64 ├─sdc1 1,7G iso9660 Lubuntu 20.04.1 LTS amd64 /media/sudodus/Lubuntu 20.04.1 LTS amd64 └─sdc2 3,9M vfat Lubuntu 20.04.1 LTS amd64 $ LANG=C sudo fdisk -lu /dev/sdc Disk /dev/sdc: 29,5 GiB, 31641829376 bytes, 61800448 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x2d846e8c Device Boot Start End Sectors Size Id Type /dev/sdc1 * 0 3576319 3576320 1,7G 0 Empty /dev/sdc2 3541360 3549295 7936 3,9M ef EFI (FAT-12/16/32)