手動將 Live USB Arch 發行版複製到 VMware 虛擬磁碟
我用yumi在筆式驅動器上安裝了 Arch Linux ,基於 syslinux。我想在 VMware 中測試 USB 發行版。為了加快速度,我想將 UFD 複製為 VMware 虛擬磁碟 (vmdk)。
這可以很簡單。我將物理 UFD 驅動器、vmdk 虛擬磁碟和 Arch ISO 附加到虛擬機。從後者引導,我可以複製。
我的問題是 UFD 非常大,我只想複製/複製實際使用的 UFD 扇區。
我不知道是否有專門的工具可以複製只使用過的扇區。我的想法是手動格式化vmdk磁碟,然後複製UFD文件。
給定以下磁碟映射:
Virtual vmdk disk -> sda Physical UFD disk -> sdb
我發出了這些命令:
# Format vmdk disk as FAT32 (echo o; echo n; echo p; echo 1; echo ; echo ; echo a; echo t; echo c; echo w) | fdisk /dev/sda mkdosfs -F 32 /dev/sda1 #Copy UFD MBR to vmdk MBR dd if=/dev/sdb of=/dev/sda bs=446 count=1 partprobe /dev/sda #Mount vmdk mkdir /vmdk mount -t vfat /dev/sda1 /vmdk #Mount UDF mkdir /usb mount -t vfat /dev/sdb1 /usb #Copy files from UFD to vmdk cp -a /usb/* /vmdk
在他們之後,
fdisk -l
給出:磁碟 /dev/sda:858 MB,858783744 字節,1677312 個扇區單位 = 1 個扇區 * 512 = 512 字節扇區大小(邏輯/物理):512 字節/512 字節 I/O 大小(最小/最佳):512 字節/ 512字節磁碟標籤類型:dos磁碟標識符:0xc3072e18
設備引導開始結束塊 ID 系統 /dev/sda1 * 2048 1677311 837632 c W95 FAT32 (LBA)
磁碟 /dev/sdb:4048 MB,4048551936 字節,7907328 個扇區單位 = 1 個扇區 * 512 = 512 字節扇區大小(邏輯/物理):512 字節/512 字節 I/O 大小(最小/最佳):512 字節/ 512字節磁碟標籤類型:dos磁碟標識符:0xc3072e18
設備引導開始結束塊 ID 系統 /dev/sdb1 * 2976 7907327 3952176 c W95 FAT32 (LBA)
磁碟 /dev/mapper/arch_root-image:1563 MB,1563426816 字節,3053568 個扇區 單位 = 1 * 512 = 512 字節的扇區 扇區大小(邏輯/物理):512 字節 / 512 字節 I/O 大小(最小/最佳) : 512 字節 / 512 字節
不幸的是,當我關閉 VM,分離 UFD 和 ISO,然後重新啟動機器時,VMware 說:
This is not a bootable disk...
你能幫助我嗎?
我認為您可以使用本 U&L Q&A 中討論的方法之一,標題為:如何將 VMware 映像文件中的文件歸零以便可以回收它們的空間?先將圖像中任何未使用的空間清零,以便可以回收它,然後再減小圖像大小。
使用焦油。如果你壓縮你的根目錄,它只會複製使用的文件而不是整個系統。在您的新系統上,只需替換您的根目錄,然後重新安裝 grub。
$ cd / $ mkdir backups $ tar -cvpf /backups/fullbackup.tar --directory=/ --exclude=proc --exclude=sys --exclude=dev/pts --exclude=backups .
然後將它解壓到新系統中(tar -xvpf /fullbackup.tar),然後將 grub 重新安裝到 MBR。
$ grub-install recheck /dev/sdX (where x is whatever your MBR is) $ grub-update