MacでVMDK、VDI、VHDのファイルを開く

仮想マシンはディスクまるごとをひとつのファイルの中に持っています。そのファイルをMacで開き、仮想マシンを一度も起動せずに中身を取り出せます。

ディスクイメージとは

仮想マシンを動かすとき、その機械のハードディスクは、あなたのMacに置かれた普通のファイルひとつです。中のOSも、プログラムも、あらゆる書類も、すべてそのひとつのファイルの中にあります。

プログラムごとにそのファイルの書き方が違います。VMwareはVMDK、VirtualBoxはVDI、Hyper-VはVHDとVHDX、QEMUとUTMはqcow2を使います。たいてい.imgで終わる生のイメージは、何も包まずにディスクをそのまま写したものです。

そこからファイルを取り出すのが面倒な理由

いつものやり方は、仮想マシンを起動し、立ち上がるのを待ち、中でファイルを探して外へコピーすることです。つまり機械がまだ動くこと、そしてそれを動かすプログラムがまだ入っていることが要ります。

Finderもここでは役に立ちません。VMDKをダブルクリックしても何も起きません。macOSは中に何があるか知らないからです。

Lukottaはどう開くのか

Lukottaはイメージを直に読みます。ファイルがどの形式かを見きわめ、中のディスクを見つけ、背後で動かしている小さなLinuxのシステムでそれを開きます。中にあったものは、そのあとFinderに普通のディスクとして現れます。

仮想マシンは止まったままです。VMwareもVirtualBoxも入っている必要はなく、ファイルを開いてもファイルは変わりません。

Lukottaが開けるファイル

  • qcow2。QEMUとUTMのものです。
  • VMDK。VMwareのものです。
  • VDI。VirtualBoxのものです。
  • VHDとVHDX。Hyper-Vのものです。
  • 生のイメージ。たいてい.imgで終わります。

ひとつ開いてみる

  1. 「ファイル」から「ディスクイメージを開く」を選び、そのファイルを探します。
  2. 中のディスクが暗号化されていれば、パスワードかパスフレーズを入力します。
  3. 中身がFinderの「場所」の下に現れます。

ひとつのファイルに複数のドライブが入っていることもよくあります

ディスクイメージにはたいていパーティションがひとつより多く入っています。小さな起動用のもの、すべてが載っている主なもの、そしてときには復旧用のものです。Lukottaがそれらを一覧に出すので、ドライブを選ぶのと同じように、必要なものを開きます。

イメージの中へファイルをコピーする

qcow2は普通のやり方で書かれ、書き込んでも危なくありません。

VMDK、VDI、VHDにも書き込めますが、書き込み対応は新しく、なくして困るものを預けられるほど長くは使われていません。ファイルをコピーして写しのほうで作業するか、読み出し専用で開いてファイルを取り出すほうにしてください。

VHDXは読み出し専用で開きます。OVAファイルの中に入っている種類のVMDKも同じです。その種類は一度に書き通す作りで、あとからその場で変えることはできません。

開かないファイル

イメージは、それだけで揃っているときにしか開きません。

VMwareのスナップショットの連なりは、機械のいまの状態を、元のファイルと、そのあと何が変わったかを記した小さなファイルの列とに散らして持ちます。分割ディスクはひとつのイメージを多くの断片に割ります。Hyper-Vの差分ディスクは、別のファイルとの違いだけを持ちます。

どの場合も、手元にあるファイルはひと組の一部であり、Lukottaは一度にひとつのファイルしか開きません。

ダウンロード Lukotta

ダウンロードも利用も無料です。

ダウンロード GitHubのソースコード

brew install --cask clementrahula/tap/lukotta

バージョン 1.22.21 · Apple Silicon · macOS 15 Sequoia以降