仮想マシンを立ち上げずにQCOW2仮想ディスクの中身を編集する

公開

仮想マシン の中にあるファイルが必要になった場合、そのためだけに 仮想マシン を起動してというのはナンセンス。 QCOW2 仮想ディスク を直接マウントしてその中身を閲覧 編集 する方法を調べてみました。

libguestfsのインストール

QEMU-KVM環境の入ったUbuntu 18.04には、既にlibguestfs-toolsパッケージはインストール済みでした。

 

guestmountでQCOW2仮想ディスクをマウント

以前、QEMU-KVMでXAMPP環境を構築した仮想マシンのQCOW2仮想ディスク(20GB程度)をマウントしてみます。

コマンドを発行してからプロンプトが戻ってくるまで数秒掛かることもありますが、エラーなくプロンプトが戻ってくればマウントは成功しています。特権ユーザでマウントしているので中に入るのも特権ユーザで。

アンマウントは guestumount コマンドで。

図1.guestmountコマンドによるマウント

図1.guestmountコマンドによるマウント

ちなみに上述の例では、予めマウントしたいパーティションが分かっていたので -m オプションでそれを指定しましたが、よく分からない場合は -i オプションで良きに計らってもらうのが便利です。

この guestmount では、QCOW2以外にもVMwareのVMDK形式などにも対応しているようなので、別の機会に試してみたいと思います。

 

参考) qemu-nbdを使う手法は…

QCOW2ファイルをマウントするもう1つの方法に、 qemu-nbd が挙げられます。

使い方は先ず、 modprobe でネットワークブロックデバイスを用意して、

ネットワークブロックデバイスにQCOW2ファイルを、 qemu-nbd コマンドで引き当てます。

パーティション単位のデバイスを通常の mount コマンドでマウントするだけなのですが…

LVMパーティションは正しく扱えないのかも知れません。加えて libguestfs に比べて qemu-nbd は、マウントするまでの手数が多くなってしまうので、正直あまり使う気にはなりませんでした。

最後に、ネットワークブロックデバイスの取り外します。

 

created by Rinker
¥2,398 (2024/04/29 20:13:41時点 Amazon調べ-詳細)
created by Rinker
¥3,247 (2024/04/30 06:35:42時点 Amazon調べ-詳細)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA