Live USB Arch 展開を VMware 仮想ディスクに手動で複製

Live USB Arch 展開を VMware 仮想ディスクに手動で複製

ペンドライブに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: 858MB, 858783744 バイト, 1677312 セクタ単位 = 1 * 512 = 512 バイト セクタ セクタ サイズ(論理/物理): 512 バイト/512 バイト I/O サイズ(最小/最適): 51ディスクラベルタイプ:dosディスク識別子:0xc3072e18

デバイス起動開始エンドブロックID System / dev / sda1 * 2048 1677311 837632 c W95 FAT32(LBA)

ディスク /dev/sdb: 4048MB, 4048551936 バイト, 7907328 セクタ単位 = 1 * 512 = 512 バイト セクタ セクタ サイズ (論理/物理): 512 バイト/512 バイト I/O サイズ (最小/2 バイト): 最小ディスクラベルタイプ:dosディスク識別子:0xc3072e18

デバイスの起動開始および終了ブロックID system/dev/sdb1 * 2976 7907327 3952176 c W95 FAT32(LBA)

ディスク /dev/mapper/arch_root-image: 1563MB, 1563426816 バイト, 3053568 セクタ単位 = 1 * 512 = 512 バイト セクタ セクタ サイズ (論理/物理): 512 バイト / 最小 11/2 サイズバイト/ 512バイト

残念ながら、VMをシャットダウンし、UFDとISOを分離してシステムを再起動すると、VMwareは次のように言います。

This is not a bootable disk... 

助けてください?

ベストアンサー1

U&L Q&Aで議論された方法の1つを使用できるようです。スペースを解放するためにVMwareイメージファイル内のファイルを空にするには?画像を再利用できるように、あらかじめ画像で使用されていないスペースをなくすことで、画像サイズを小さくしてください。

おすすめ記事