ブートローダ設定を編集したりカーネルパラメータを渡したりすることなく、目的の解像度を使用するようにVirtualBox VMを設定する方法

ブートローダ設定を編集したりカーネルパラメータを渡したりすることなく、目的の解像度を使用するようにVirtualBox VMを設定する方法

VirtualBoxで複数のliveCDディストリビューション(特にそのインストーラ)をテストしたいと思います。一部のLinuxディストリビューションでは、呪いベースのインストーラ(X11以外)を使用しています。デフォルトでは、VMのウィンドウは800x600と非常に不便です(特にパーティションポイントではメニューをナビゲートするのが難しい)。 nomodesetを介してvga = NNNを渡したり、video = XxYパラメータのみをカーネルに渡すことができることを知っていますが、高速システムの再起動のためにこれを頻繁に実行する必要があります。 ISOイメージを再作成して、基本的に言及されたパラメータを含めることができることを知っています。ただし、テストしたい各ISOイメージを手動で編集する必要があるため、それほど実用的ではありません。

したがって、質問は:ロードされたオペレーティングシステムがコンソール解像度を便利な値にデフォルト設定するようにVirtualBoxシステムを設定する方法はありますか?

VBoxManage setextradata "VM name"を使用して特定のシステムのパラメータを設定できることを知っています。
たとえば、次のようになります。

VBoxManage setextradata "VM name" VBoxInternal2/EfiGopMode 2  
VBoxManage setextradata "VM name" VBoxInternal2/EfiGraphicsResolution HxV  
VBoxManage setextradata "VM name" VBoxInternal2/UgaHorizontalResolution 1920  
VBoxManage setextradata "VM name" VBoxInternal2/UgaVerticalResolution 900  
VBoxManage setextradata "VM name" "CustomVideoMode1" "1400x1050x16" 

その後、VBoxManage getextradata「VM Name」を使用してコンピュータのカスタム設定を取得できます。

私の要求を処理するのに役立つものを含めることができますか?

答え1

TLDR:efiモードは可能ですが、事前定義された解像度の1つを使用します(任意ではありません)。まだレガシーモードの解決策が見つかりませんでした。

マニュアルによると、3.14.1。 EFIのビデオモード

EFIは、グラフィック出力プロトコル(GOP)とユニバーサルグラフィックアダプタ(UGA)の2つのビデオインターフェイスを提供します。 Mac OS Xのような最新のオペレーティングシステムは通常GOPを使用していますが、古いオペレーティングシステムはまだUGAを使用しています。 Oracle VM VirtualBoxには、両方のインタフェースのグラフィカル解像度を制御するための構成オプションが用意されているため、ユーザーにとって違いはほとんどありません。

デフォルトの解像度は1024×768です。 EFIのグラフィック解像度を選択するには、次のVBoxManageコマンドを使用します。

VBoxManage setextradata "VM 名" VBoxInternal2/EfiGraphicsResolution HxV 次の基本解像度リストで水平解像度 H と垂直解像度 V を決定します。

VGA 640×480、32bpp、4:3

SVGA 800x600、32bpp、4:3

XGA 1024×768、32bpp、4:3

XGA+ 1152x864、32bpp、4:3

HD 1280x720、32bpp、16:9

WXGA 1280x800、32bpp、16:10

SXGA 1280x1024、32bpp、5:4

SXGA+ 1400x1050、32bpp、4:3

WXGA+ 1440x900、32bpp、16:10

HD+ 1600x900、32bpp、16:9

UXGA 1600x1200、32bpp、4:3

WSXGA+ 1680x1050、32bpp、16:10

フルHD 1920x1080、32bpp、16:9

WUXGA 1920x1200、32bpp、16:10

DCI 2K 2048x1080、32bpp、19:10

フルHD+ 2160x1440、32bpp、3:2

名前なし2304x1440、32bpp、16:10

クワッドHD 2560x1440、32bpp、16:9

WQXGA 2560x1600、32bpp、16:10

QWXGA+ 2880x1800、32bpp、16:10

QHD+ 3200x1800、32bpp、16:9

WQSXGA 3200x2048、32bpp、16:10

4KウルトラHD 3840x2160、32bpp、16:9

WQUXGA 3840x2400、32bpp、16:10

DCI 4K 4096x2160、32bpp、19:10

HXGA 4096x3072、32bpp、4:3

ウルトラHD+ 5120x2880、32bpp、16:9

WHXGA 5120x3200、32bpp、16:10

WHSXGA 6400x4096、32bpp、16:10

HUXGA 6400x4800、32bpp、4:3

8KウルトラHD2 7680x4320、32bpp、16:9

この基本解像度のリストが要件を満たさない場合は、セクション 9.7.1「VESA 解像度のカスタマイズ」を参照してください。カスタムビデオモードで指定された色濃度値を指定する必要があります。 8、16、24、32の色深度を許可します。デフォルトでは、EFIは色濃度を32と仮定します。

EFIデフォルトのビデオ解像度設定は、VMがシャットダウンした場合にのみ変更できます。

以前のマニュアルバージョンでは、VBoxManage setextradata "VM 名" VBoxInternal2/EfiGopMode N の説明がありました。

そのうち、Nは0、1、2、3、4のいずれかであり、それぞれ640×480、800×600、1024×768、1280×1024、1440×900の画面解像度を意味します。たぶん今は時代遅れです。

efiモードでカスタム解像度が利用可能かどうかわかりません。 EfiGraphicsResolutionにカスタム値を設定するとうまくいかないようです。ご存知の方は知識を共有してください。

今、既存のBIOSモードはどうですか?
マニュアルによると9.7.1。カスタマイズされたVESA解像度

標準のVESA解像度に加えて、Oracle VM VirtualBox VESA BIOSを使用すると、ゲストオペレーティングシステムに報告されるカスタムビデオモードを最大16個まで追加できます。 Oracle VM VirtualBoxゲストアドインでWindowsゲストを使用する場合、フォールバックVESAソリューションの代わりにカスタムグラフィックドライバが使用されるため、この情報は適用されません。

追加のデータ機能を使用して、VMごとに追加のビデオモードを設定できます。追加のデータキーはCustomVideoModeと呼ばれ、xは1から16までの数字です。次の数字が定義されていないか16に達するまで、パターンは1から始めて読み取られます。次の例では、多くのノートブックのデフォルトの表示解像度に対応するビデオモードを追加します。

VBoxManage setextradata「VM名」「CustomVideoMode1」「1400x1050x16」カスタムビデオモードのVESAモードIDは0x160から始まります。上記で定義したカスタムビデオモードを使用するには、Linuxに次のコマンドラインを提供する必要があります。

VGA = 0x200 | 0x160 vga = 864 Oracle VM VirtualBoxゲストアドインを持つゲストオペレーティングシステムの場合、ビデオモードプロンプト機能を使用してカスタムビデオモードを設定できます。

したがって、とにかくvga =パラメータを使用する必要があるように見えるので、あなたのニーズには役立ちません。

UgaHorizo​​ntalResolution と UgaVerticalResolution オプションの効果がわからず、うまくいかないようです。以前のモードでリクエストを実装する方法がわかっている場合は、知識を共有してください。

VirtualBoxの仮想ディスプレイが私が望む解像度の1つだけをサポートするカーネルに応答できると思ったので、kmsはそれを使用します。

関連情報