既存のファイルシステム(たとえば、ext4)で通常のファイルを作成し、それをブロックデバイス(losetup
経由)にして、独自のext4ファイルシステムでフォーマットすることができます。
ただし、上記のハードディスクは固定サイズです。
質問:
VirtualBox
を使用すると、固定サイズまたは動的サイズのいずれかであるVDI、VMDK、およびVHDタイプのハードディスクを作成できます。 方法はありますか LinuxホストOSで使用するためにファイルベースの動的サイズのハードディスクを作成しますか?
可能ですか LinuxホストOSで、VirtualBox
の外部にあるこれら3種類のファイルベースの動的サイズのハードディスクのいずれかを使用しますか?
私はUbuntu16.04を使用しています。
はい、ファイルシステムがスパースファイルをサポートしている場合は可能です。 (ext4はスパースファイルをサポートします。)
最初はほとんどスペースをとらない64GiB
生画像disk.img
を作成する方法は次のとおりです。
truncate -s 64G disk.img
これで、disk.img
をループバックブロックデバイスとして使用でき、書き込むと拡張されます。
ディスクイメージdisk.img
を、物理ディスク/dev/sdb
などの別の形式に変換する場合は、qemu-img
を使用します。
qemu-img convert -O raw disk.img /dev/sdb
これは、VDI、VMDK、VHD、またはその他のコンテナ形式をRAWに変換して、losetup
/kpartx
などの組み込みツールを使用して出力イメージを操作できるようにする場合に役立ちます。
ソース画像の形式は関係ありません。 qemu-img
は、VDI、VMDK、VHD、およびRAW画像以外でも機能します。サポートされているイメージのリストを表示するには、次のコマンドを実行します。
root@node51 [~]# qemu-img --help | grep 'Supported formats:'
Supported formats: bochs vvfat rbd vpc parallels tftp ftp ftps raw https qcow http dmg qcow2 quorum null-aio cloop vdi null-co vhdx blkverify file vmdk Host_cdrom blkdebug Host_device sheepdog iscsi qed nbd