VirtualBox VM で Linux のパフォーマンスを向上させる方法

VirtualBox VM で Linux のパフォーマンスを向上させるには、まずホストコンピュータに過負荷がかかっていないことを確認し、次に適切なゲスト アドオンをインストールして、VM の RAM、CPU、およびディスプレイ設定を調整します。リソースが多いほど VM が高速になるとは限りません。VirtualBox はホストから割り当てられたメモリを予約するため、仮想 CPU が多すぎると、ホストや他のタスクに使える時間が少なくなる可能性があります。

ハードウェア設定を変更する前に、仮想マシンを完全にシャットダウンしてください。

1. LinuxゲストOSにゲストアドオンをインストールする

ゲストアドオンは、統合、サイズ変更、ビデオサポートを向上させるゲストドライバとサービスを提供します。ゲストアドオンのバージョンは、ホスト上のVirtualBoxのバージョンと一致させてください。Linux VMを起動し、ウィンドウで「デバイス」>「ゲストアドオンCDイメージの挿入」を選択して、ゲストが外部カーネルモジュールをビルドできるように準備します。つまり、ゲストで現在実行されているカーネルに一致する開発ツールとカーネルヘッダーをインストールします。パッケージ名はLinuxディストリビューションによって異なります。

VirtualBoxのデバイスメニューで、Linuxゲストターミナルコマンドの上にゲスト追加CDイメージをマウントする
ゲストOSの追加機能CDイメージをマウントし、LinuxゲストOS内からインストーラーを実行します。

ゲストOSでマウントしたCDを開き、そのディレクトリからインストーラーを実行してください。

sudo sh ./VBoxLinuxAdditions.run

インストールが完了したら、Linuxを再起動してください。CDのマウントパスはディストリビューションによって異なるため、古いハードコードされたパスをコピーするのではなく、ゲストOSのファイルマネージャに表示されているマウント済みディスクを使用してください。インストールが失敗した場合は、カーネルヘッダーが一致していることを確認し、Linux Guest Additionsの前提条件とリカバリチェックについては、 Oracle VirtualBox 7.2ユーザーガイドuname -rを参照してください。ディストリビューションにプリインストールされているGuest Additionsを置き換える前に、VMのスナップショットを作成してください。

2. ホストのメモリを枯渇させることなく、Linuxに十分なRAMを割り当てる。

VMの電源をオフにした状態で、[設定] > [システム] > [マザーボード]を開き、[基本メモリ]を調整します。ゲストデスクトップとそのアプリケーションに必要なメモリ容量を確保しつつ、ホストオペレーティングシステムやその他の開いているプログラムにも十分なメモリを残してください。例えば、16GBのホスト上でデスクトップVMを1台起動する場合、4GBは妥当な最初のテスト値と言えるでしょう。これは必須要件ではありません。ホストの規模が小さい場合や、Linuxのインストールが軽量な場合は、これより少ないメモリで済むこともあります。一方、開発ツールや多数のブラウザタブを使用する場合は、より多くのメモリが必要になる場合があります。

VirtualBoxシステムのマザーボード設定で、基本メモリが4096MBに設定され、ホストメモリを保護するための警告が表示されている。
ベースメモリとはゲストOSに割り当てられるRAMのことです。ホストOSはスワッピングを避けるために、残りのメモリ容量を必要とします。

VirtualBoxは、VMの実行中にホストからこのメモリを要求します。ホストがディスクへのスワップを開始すると、両方のシステムが遅くなる可能性があります。Linuxでは、free -h速度低下を再現しながら、システムモニターを使用してください。メモリを増やすのは、ゲストOSに負荷がかかっている場合、かつホストOSにまだ余裕がある場合に限ってください。

3. 適切な数の仮想CPUを設定する

VMがオフの状態で、 [設定] > [システム] > [プロセッサ]を開きます。ホストに処理能力の余裕がある場合、2つの仮想CPUはデスクトップゲストのテストに役立ちます。まず、小規模なホストで1つの仮想CPUから始め、ゲストがCPUバウンドの場合にのみCPUを追加します。Oracleは、ホストの物理コア数よりも多くの仮想CPUを割り当てることを推奨しておらず、新規VMに関するガイダンスでは、割り当てを控えめにすることを推奨しています。利用可能なすべてのスレッドを1つのVMに割り当てるのではなく、ホストの処理能力を残しておいてください。

VirtualBoxのシステムプロセッサ設定で、CPU数を2、実行上限を100%に設定
まずは控えめなCPU割り当てから始め、処理能力はホスト側に残しておきましょう。

vCPUを増やすことで並列処理は改善されますが、ディスクアクセスの遅延、メモリ不足、グラフィックスのボトルネックといった問題は解決されません。パフォーマンス調整として実行上限を下げることは避けてください。これは意図的にCPU時間を制限することになり、タイミングの問題を引き起こす可能性があります。

4. 仮想ディスプレイを解像度に合わせて調整する

設定> ディスプレイ > 画面で、Linux ゲストの場合は、ディストリビューションのドキュメントで別のコントローラーが指定されていない限り、 VMSVGA を選択したままにしてください。ゲストがより高い解像度やより多くの仮想モニターを必要とする場合は、ビデオ メモリを増やしてください。利用可能な最大値(多くの場合 128 MB)に設定すると、これらの表示モードが利用可能になりますが、それ自体では CPU 負荷の高い処理の速度は向上しません。

VirtualBoxのディスプレイ画面設定(VMSVGA、ビデオメモリ128MB、3Dアクセラレーションオプション有効)
VMSVGAはLinuxゲストのデフォルトのグラフィックコントローラです。3Dアクセラレーションにはゲストアドオンが必要です。

ゲストOSの追加機能をインストールした後、ウィンドウの動きやデスクトップのエフェクトがカクカクする場合は、 「3Dアクセラレーションを有効にする」をテストしてください。仮想マシンを再起動し、同じタスクを実行してみてください。ゲストOSでちらつき、フリーズ、その他の表示上の問題が発生する場合は、ゲストOSの電源を切り、このオプションを無効に戻してください。この設定は、ワークロードの改善に役立つ場合にのみ使用してください。

5. ゲストの作業を減らす

リソースバランス調整後も仮想マシンの動作が遅い場合は、VirtualBoxの設定を変更する前にLinuxの動作を確認してください。使用していないアプリケーションや起動サービスを閉じ、不要なデスクトップ効果を減らし、ディスプレイがボトルネックになっている場合はゲストOSの解像度を下げてください。RAMやグラフィック性能が限られているホストOSでは、XfceやLXQtなどの軽量デスクトップ環境を使用することで、ゲストOSのバックグラウンド負荷を軽減できます。

ストレージも重要です。可能な限り、VMの仮想ディスクは高速なローカルSSDに配置し、ホストドライブに十分な空き容量があることを確認してください。ホスト自体のCPUまたはメモリ使用率がほぼ満杯の場合は、ホストアプリケーションを閉じるか、同時に実行するVMの数を減らしてください。ホストが既に過負荷状態にある場合、VMは正常に動作しません。

リソースを追加する前にボトルネックを確認してください。

ゲストOSのシステムモニターを使用するか、top処理が遅いタスクの実行中に、ホストOSのCPUとメモリの使用状況と比較してください。スワップが頻繁に発生している場合はRAMの負荷が高いことを、CPUの使用率が持続的に高い場合はCPU負荷の高いタスクを、コマンドライン操作はスムーズに動作するもののグラフィックがカクカクしている場合はディスプレイ設定に問題があることを示しています。ボトルネックとなっているリソースのみを変更してください。

関連するVM設定およびLinuxゲストアドオンの手順については、OracleのVirtualBox 7.2ユーザーガイドを参照してください。

コメントを残す

失われたパーティションとハードディスクデータを安全に復元する方法

失われたパーティションとハードディスクデータを安全に復元する方法

TestDiskとPhotoRecを使って、失われたパーティションやファイルを復元する方法を学びましょう。ソースドライブを保護し、安全にスキャンを行い、復元したデータを別のディスクに保存します。

LinuxデスクトップでQRコードをスキャンする方法

LinuxデスクトップでQRコードをスキャンする方法

CoBangを使えば、Webカメラまたは画像ファイルでLinux上でQRコードをスキャンできます。インストールオプション、セットアップ手順、Flatpakカメラへのアクセスに関する修正方法については、こちらをご覧ください。

Cameractrlsを使ってLinuxでウェブカメラの設定を変更する方法

Cameractrlsを使ってLinuxでウェブカメラの設定を変更する方法

Cameractrlsを使用してLinux上でウェブカメラの設定を変更しましょう。露出、色、フリッカー低減などのサポートされているコントロールを調整し、互換性のあるビデオモードを確認できます。

LinuxにPhpStormをインストールする方法:ツールボックス、Tar.gz、Snap、およびAUR

LinuxにPhpStormをインストールする方法:ツールボックス、Tar.gz、Snap、およびAUR

LinuxにPhpStormをインストールするには、JetBrains Toolboxを使用するか、スタンドアロンのtar.gzアーカイブを使用するか、SnapおよびArch AURオプションを選択してください。Javaは既にバンドルされています。

LinuxにCisco Packet Tracerをインストールする方法

LinuxにCisco Packet Tracerをインストールする方法

Cisco Packet Tracer 9.0.1 を Ubuntu 64 ビット版にダウンロードし、APT を使用して DEB パッケージをインストールし、ターミナルでライセンスに同意してサインインすると、ラボを開始できます。

LinuxでCD-ROMをISOイメージとしてバックアップする方法

LinuxでCD-ROMをISOイメージとしてバックアップする方法

Linux上でGNOME Disksまたはddコマンドを使用してCD-ROM ISOイメージを作成します。光学ドライブを識別し、コピーを監視し、イメージを検証し、破損したディスクやオーディオディスクに別のツールが必要な場合を把握できます。

XFCE 4でデュアルパネルを設定する方法

XFCE 4でデュアルパネルを設定する方法

各ディスプレイごとに個別のXFCE 4パネルを作成し、2番目のパネルを右側の出力に割り当て、位置とサイズを調整し、必要なランチャーとステータス項目を追加します。

LinuxでGIMPを使って画像を切り抜く方法

LinuxでGIMPを使って画像を切り抜く方法

LinuxでGIMPを使って写真の背景を削除する方法:被写体をトレースし、選択した背景を削除し、透明度を保持して、再利用可能なPNG形式でエクスポートします。

FlightGearを無料でダウンロード:公式インストールガイド

FlightGearを無料でダウンロード:公式インストールガイド

FlightGearは公式サイトから無料でダウンロードできます。Windows、macOS、Linuxの各パッケージを比較し、データファイルをインストールして、最初のフライトを開始しましょう。

OKSampler:キーボードビートのための無料かつシンプルな音楽サンプラー

OKSampler:キーボードビートのための無料かつシンプルな音楽サンプラー

OKSamplerはMP3クリップをキーボードのキーにマッピングし、音声をループ再生できます。この旧型フリーウェアの機能、旧機能が失われた箇所、ダウンロード前に確認すべき点について解説します。