セイテクエンジニアのブログ かつて山市良と呼ばれたおじさんのブログ メモ. 手間はかかるが金いらずのV2V: VMwareのLinux VMをHyper-Vへ (その1)
2024年06月25日配信
2024年07月03日更新
執筆者:山内 和朗
以前、Windowsゲストを実行するVMware ESXi VMの仮想ハードディスク(VMDK)を、Hyper-V VMのVHDX形式に変換し、Hyper-V VMとして移行する、少し手間はかかりますが、お金のかからない方法を紹介しました。今回は、Linuxゲストを実行するVMware ESXi VMのHyper-V VMへの移行です。今回は、DISK2VHDのような外部のツールは1つも使いません。Linuxに標準搭載されているコマンドを使います。
Linuxにはさまざまなディストリビューションが存在します。バージョンによっても大きな違いがあることがあります。今回紹介する方法は、大筋は共通していますが、細かな部分はLinuxディストリビューションやバージョンによって変わってくるかもしれません。今回は、「Ubuntu Server 22.04 LTS」を例に説明します(画面1)。話を簡単にするため、移行元のVMware ESXi VMはOSディスクのみのシンプルな構成です。
画面1 移行元のUbuntu Server 22.04 LTSを実行するVMware ESXi VMにsshで接続したところ
Windows VMの移行では、DISK2VHDユーティリティを使用し、NTFSまたはexFAT(※いずれも4GBを超える大きなファイルを作成可能)のUSB外付けハードディスクなどの物理ディスク(VMware ESXi VMのコンソールと設定にアクセスできる場合)やSMB共有上のパスにVHDXファイルを作成しました。
Linux VMの場合も、同じように物理ディスク(VMware ESXi VMのコンソールと設定にアクセスできる場合)やSMBまたはNFS共有上のパスにディスクイメージを保存することにします。DISK2VHDはWindows用ユーティリティであるため、Linuxの移行には使えません。
代わりに使うのが、「dd」コマンドです。ddコマンドは、ファイルのコピー、ディスクイメージの作成と復元、起動可能デバイスの作成、データ消去、ディスククローン、バックアップと復元など、さまざまな用途で利用できる、UNIX/Linuxで標準的に使える古くからあるツールです。ddコマンドはファイルシステムの種類やOSに関係なく、コピー元からコピー先にブロック単位でコピーできるのが特徴です。
稼働中のVMware ESXi VMからオンラインでディスクイメージを作成するには、物理ディスクや共有をマウントして、次のようなコマンドを実行し、マウント先のパスにイメージ(拡張子.imgは自由)を保存します。この例は、OSディスクが/dev/sdaの場合の例です(画面2)。別ディスクをデータディスクとして利用している場合は、そのディスクに対応するデバイスについても、ddコマンドでイメージ化します。なお、共有フォルダーやUSBディスクのマウント方法についての説明は省略します。
$ sudo dd if=/dev/sda of=/<パス>/<ファイル名>.img status=progress |
画面2 ddコマンドでディスク「/dev/sda」をイメージ化する
オンラインでのイメージ化では、VMware ESXi VMでダウンタイムが発生することはありませんが、作成したディスクイメージには整合性の問題がある可能性があります。より確実にディスクをイメージ化するには、Windowsの場合と同様に、第3のOS環境で起動して、オフラインのディスクに対してddコマンドを実行します。この場合、作業を行う人は、VMware ESXi VMのコンソールと設定にアクセスできる必要があります。
Ubuntuの場合は、再起動して起動直後に[Esc]キーを入力し、GRUBブートローダーにアクセスします。GRUBメニューから「Advanced options for ubuntu」「*Ubuntu, ... (recovery mode)」の順番に選択して、「Recovery Menu」から「Drop(Drop to root shell prompt)」を選択します(画面3)。
画面3 Ubuntuを再起動し、GRUBメニューからRecovery modeに入る
rootユーザーのシェルが起動したら、物理ディスクをマウントして、ddコマンドを実行し(rootなのでsudoは不要)、物理ディスク上のパスにイメージを保存します(画面4)。
# dd if=/dev/sda of=/<パス>/<ファイル名>.img status=progress |
画面4 Recovery modeのrootのシェル(#)でddコマンドを実行し、物理ディスク上のパスにイメージを保存
2025年03月21日 | vol.93 製品版ライセンスの購入|はじめてのIntune(4) |
---|---|
2025年03月17日 | vol.92 リリースから4か月、あの問題(バグ)のその後|Windows Server 2025大特集フォローアップ |
2025年03月13日 | vol.91 無料でEntra IDテナントと管理者IDを取得する|はじめてのIntune(3) |
2025年03月10日 | vol.90 WSUSの代替としてのIntune+αのライセンス|はじめてのIntune(2) |
2025年03月06日 | vol.89 WSUSの後継としてのMicrosoft Intuneを考える |
2025年03月03日 | vol.88 リモートワークで遭遇したRDP“再”接続問題|Windowsトラブル解決 |
2025年02月28日 | ITニュース. Windows Admin Center(v2)2410のマイナーアップデートビルド「2.4.2.1」、1か月遅れでようやくリリース |
2025年02月27日 | vol.87 Windows Server 2012 R2からServer 2025へのアップグレード、やってみた |
2025年02月25日 | vol.86 Windows Serverバックアップのカタログから不要なバックアップ情報を削除する|Windowsトラブル解決 |
2025年02月20日 | vol.85 最終目標、オンプレ・ラボ環境の移行|Windows Server 2025大特集(22) |