2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

VirtulboxからHpyer-vへの仮想ディスクを移行(Ubuntu)

Last updated at Posted at 2023-11-08

VirtulboxからHpyer-vへの仮想ディスク移植

vdi から vhd に変換する

virtualbox で使用している vdi ファイルを Hyper-v で使用できる vhdファイルに変換する
VBoxManage.exe コマンドを使う

VBoxManage.exe clonemedium disk vm.vdi vm.vhd -format VHD

具体的な実行例)

D:\work¥vdi_vhd>"C:\Program Files\Oracle¥VirtualBox¥VBoxManage. exe" clonehd 'vm.vdi vm.vhd -format VHD

しかし以下のエラーが発生

VBoxManage. exe: error: Cannot register the hard disk 'D:\work\vdi_vhd¥vm.vdi' {422a0155-3d3a-4afa-ae07-e43111026000} because a hard disk 'D:\work\vdi_vhd\vm.vdi' with UUID 1422a0155-3d3a-4afa-ae07-e4311f026000] already exists 
VBoxManage.exe: error: Details: code E_INVALIDARG (0x80070057). component VirtualBoxWrap, interface IVirtualBox, callee IUnknown

VBoxManage.exe: error: Context: 'OpenMedium (Bstr (pszFilenameOrUuid). raw (), enmDevType, enmAccessMode. fForceNewUuidOnOpen, pMedium. asOut Param ())' at line 191 of file VBoxManageDisk.cpp

問題になっているのは以下のエラー
UUID 1422a0155-3d3a-4afa-ae07-e4311f026000] already exists
UUID が既に存在する。重複しているのでエラーが出た。

UUIDを付けなおす

D:\Ywork\vdi_vhd> "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" -nologo internal commands sethduuid vm.vdi

UUID changed to: 18d48a42-941e-433e-8339-96ff64ed1b85

vdi から vhd に変換

D:\work¥vdi_vhd>"C:\Program Files\Oracle¥VirtualBox¥VBoxManage.exe" clonemedium disk vm.vdi vm.vhd -format VHD

0% 10% 20%... 30%... 40%... 50%... 60%... 70%... 80%... 90%... 100%
Clone medium created in format VHD. UUID: 10721ceb-d542-40d2-b958-22c14034afe8

vhd ができた

移行したい PC で Hyper-v の環境を作る

vhd を移行 PC に移動する

適当なフォルダに vhd ファイルを格納 (コピーペースト)する
例)D:\hpyer-v\vm.vhd

Hpyer-v をインストール

Windows メニュー (画面左下のウィンドウアイコン) > Windows 設定 (ギアアイコン) > アプリ > 画面右の 「プログラム と機能」 > 画面左の 「Windows の機能の有効化または無効化」 > Hyper-v チェック入れる > OK

Hyper-v のインストールが終わるまでしばらく待つ

PC を再起動する

これで hyper-v はインストールできてると思う

Hpyer-v に Vhd を適用する

Hpery-vを起動

Windows メニュー (画面左下のウィンドウアイコン)> Windows 管理ツール (スクロールしていくと下の方にある) > Hyper-V マネージャで Hpyer-v を起動する

新しい仮想マシンとして vhd を登録

Hyper-vの「操作」 > 新規 > 仮想マシン > 開始する前に 「次へ」 > 名前: 適当につける 例)test_vm > 第1世代 > 起動メモ リ: 4096MB > 接続 Default Switch > 仮想ハードディスクの接続 既存の仮想ハードディスクを使用する 場所: D:\hpyer-v\vm.vhd > 完了
※ vm.bhd は先ほど作成したファイル

作成した仮想マシン (vhd) に接続する

仮想マシンを起動する

仮想マシンの欄に名前: でつけた仮想マシン名 test_vm が表示されているので選択する > 右クリック> 起動

自動チェックポイント検出
前の自動チェックポイント test_vm 2023/11/08-14:44:24 にもどしますか? または、 この仮想マシンの最後の状態 1601/01/01 9:00:00 から続行しますか?
「戻す」をクリック。
しかし、戻らないという旨のエラーがでたので。

チェックポイントを作成する

仮想マシンの欄に名前: でつけた仮想マシン名が表示されているので選択する > 右クリック> チェックポイント作成 ⇨ OK

起動する

仮想マシンの欄に名前: test_vm を選択する > 右クリック > 起動 ⇨ OK

接続する

仮想マシンの欄に名前: test_vm を選択する > 右クリック > 接続
⇨ ログイン画面が見れると思う。

ログイン後メッセージが。。

VBoxClient: the virtualbox kernel service is not running.

VirtualBox で使用していた際に Guest Additions のインストールしたため、そのプログラム VBoxClient が残っているので削除する
削除するには、Guest Additions を使いたいので Guest Additions の iso を入手する。バージョンがあるので注意。

Geust Additons のバージョン確認
7.0.20 と確認できた。

$ ls -ld /opt/VBox*
drwxr-xr-x 8 root root 4096  8月 26 17:39 /opt/VBoxGuestAdditions-7.0.20

iso ファイルのダウンロード

wget https://download.virtualbox.org/virtualbox/7.0.2/VBoxGuestAdditions_7.0.2.iso

iso ファイルのマウント

$ sudo mount -t iso9660 -o loop ~/VBoxGuestAdditions_7.0.2.iso /mnt

mount: /mnt: WARNING: source write-protected, mounted read-only.

マウントできたか確認

$ ls /mnt
AUTORUN.INF  VBoxDarwinAdditions.pkg            VBoxWindowsAdditions-amd64.exe  cert
NT3x         VBoxDarwinAdditionsUninstall.tool  VBoxWindowsAdditions-x86.exe    runasroot.sh
OS2          VBoxLinuxAdditions.run             VBoxWindowsAdditions.exe        windows11-bypass.reg
TRANS.TBL    VBoxSolarisAdditions.pkg           autorun.sh

アンインストールの実行

$ cd /mnt
$ sudo sh VBoxLinuxAdditions.run uninstall
Verifying archive integrity...  100%   MD5 checksums are OK. All good.
Uncompressing VirtualBox 7.0.2 Guest Additions for Linux  100%  
VirtualBox Guest Additions installer
Removing installed version 7.0.20 of VirtualBox Guest Additions...

アンインストールされたか確認
VBoxGuestAdditions-7.0.20 ディレクトリがなくなってればOK

$ ls /opt

完了

2
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?