Quantcast
Channel: shirokichi's hobby life
Viewing all articles
Browse latest Browse all 215

【メモ】VirtualBoxアプライアンスのエクスポートをコマンドで行う

$
0
0
VirtualBoxのアプライアンスエクスポートをコマンドで行う処理をまとめておきます。

これはGUIから行うアプライアンスのエクスポート

cmd.exeを起動します。

まず、pathを通しておきます。VBoxManage.exeは同ディレクトリ上のdllを読み込むので、実行時のカレントディレクトリが同一か、もしくはpathが通ってないとエラーになります。
cmd.exe
Microsoft Windows [Version 10.0.10576]
(c) 2016 Microsoft Corporation. All rights reserved.

C:\WINDOWS\system32>
C:\WINDOWS\system32>set VBOX_HOME="C:\Program Files\Oracle\VirtualBox"
C:\WINDOWS\system32>set path=%PATH%;%VBOX_HOME%

基本形

VBBOXManage.exe のexportオプションを使います。

VBOXManage export (仮想マシン名) -o (ファイル名).ova

仮想マシン名とはVirtualBoxマネージャで表示される仮想マシン名そのものです。

ファイル名は任意です。(スペースが入る場合は""ダブルクオーテーションで囲みます。)
拡張子をovaにした場合は、仮想ハードディスクとマニフェストファイルが内装された1個のファイル。ovfにした場合は、仮想ハードディスクとマニフェストファイルが分離されて出力されます。

詳しくはココ↓
https://www.virtualbox.org/manual/ch08.html
C:\>VBOXManage export Windows7 -o Windows7.ovf

応用編1

基本形では-oスイッチのファイル名で指定されたファイルが、カレントディレクトリに出力されます。カレントのドライブ容量に余裕があればよいのですが、空き容量が少ないときなどは、別ドライブなどに出力したいものです。
CDコマンドで、カレントの位置をかえてやります。コマンドプロンプトはMS-DOSを継承しているので、ドライブ番号の変更は、ドライブ番号コロンでリターン(EドライブならE:でリターン)です。以下のディレクトリ位置の変更はCDコマンドになります。
例 (出力ディレクトリをドライブE:のVMBackupにしたい場合
C:\>E:
E:\>cd \
E:\>VBOXManage export Windows7 -o VMBackup\Windows7.ova

応用編2

先のやり方では環境が変わるたびに、ドライブ番号が変わる可能性がありその扱いが煩わしいので、ルートディレクトリすなわちC:\に仮のマウントポイントを生成しそこにターゲットのシンボリックリンクを張るやり方を考えます。

C:\
└─mnt                  <DIR>
    └─VMBackup         <SYMLINKD> (E:\VMBackupへのSYMリンク)
|                                      |
==                                     |
|                                      |
E:\                                    |
└─VMBackup             <DIR>    -----+
                                         
下準備
C:\>md mnt
C:\>cd mnt
C:\mnt>mklink /d .\VMBackup E:\VMBackup
.\VM <<===>> E:\VM のシンボリック リンクが作成されました
C:\mnt>cd \
C:\>
実行

C:\>VBOXManage export Windows7 -o mnt\VMBackup\Windows7.ova
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Successfully exported 1 machine(s).


実行部をバッチファイルにしておけば、再利用が可能となります。
環境を移行してもバッチごと持ってくのみです。初回のみ、先の下準備で初期設定し。以降はバッチを開くのみです。
注意! 出力ディレクトリは予め生成しておく必要があります。(なき場合は、エラーで終了します。)
以下は例です。C:\と環境変数のHOMEDRIVE、結果同じ。(WindowsディレクトリがDドライブなら%HOMEDRIVE%はD:\なので、正確には違います。)

C:\を使う
hoge.bat  (仮想マシン名:Windows7, 出力ファイル名:Windows7.ova
set VBOX_HOME="C:\Program Files\Oracle\VirtualBox"
set path=%PATH%;%VBOX_HOME%
C:
cd \
del .\mnt\VMBackup\Windows7.ova /f /q
VBOXManage export Windows7 -o mnt\VMBackup\Windows7.ova
初期設定例  (E:\VMBackup 以下にエクスポートする場合 
C:\>E:
E:\>cd \
E:\>md VMBackup
E:\>C:
C:\>cd \
C:\>md mnt
C:\>cd mnt
C:\mnt>mklink /d .\VMBackup E:\VMBackup
HOMEDRIVEを使う
hoge.bat (仮想マシン名:Windows7, 出力ファイル名:Windows7.ova
set VBOX_HOME="C:\Program Files\Oracle\VirtualBox"
set path=%PATH%;%VBOX_HOME%
%HOMEDRIVE%
cd \
del .\mnt\VMBackup\Windows7.ova /f /q
VBOXManage export Windows7 -o mnt\VMBackup\Windows7.ova
初期設定例  (E:\VMBackup 以下にエクスポートする場合 
C:\>E:
E:\>cd \
E:\>md VMBackup
E:\>%HOMEDRIVE%
C:\>cd \
C:\>md mnt
C:\>cd mnt
C:\mnt>mklink /d .\VMBackup E:\VMBackup


以上、VirtualBoxアプライアンスのエクスポートをコマンドで行う でした。


Viewing all articles
Browse latest Browse all 215

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>