回答:
VMwareとVirtualBoxはどちらも、64ビットプロセッサを使用している場合、32ビットのホストシステムで64ビットの仮想マシンを実行できます。VirtualBoxのは、お使いのプロセッサは、ハードウェア仮想化をサポートしている必要があります(どちらかAMD-VまたはVT-xの、として示さsvm
及びvmx
中flags:
のライン/proc/cpuinfo
Linuxの下)。以前のものを除くほとんどのx86-64プロセッサー、特にすべてのコアi5モデルがこのサポートを持っていると思います。
それができない場合は、Qemuなどのソフトウェアでx86-64プロセッサをエミュレートする仮想マシンテクノロジーを使用できます。しかし、それが必要ない場合はお勧めできません。遅く、メモリを大量に消費し、扱いにくいものです。
私の推奨は、64ビットのホストまたは少なくとも64ビットのカーネルを入手することです。32ビットアプリケーションをx86-64(別名amd64)カーネルで実行できます。実際、完全に32ビットのLinuxユーザーランドをamd64 Linuxカーネルで実行できます。
Ubuntuはi386ディストリビューションで64ビットカーネルを提供していません(Debianは提供しています)。amd64ディストリビューションからカーネルを取得でき、アプリケーションは実行する必要がありますが、nattyではパッケージを簡単にインストールできません。
したがって、64ビットアプリケーションを実行する最も簡単な方法は、amd64 Ubuntuを並行してインストールすることです。別のパーティションにインストールし、既存の32ビットインストールも保持します。64ビットシステムで、既存のパーティションをマウントし、32ビットプログラムを実行するように32 ビットschroot(このガイドを参照)をセットアップします。
Gillesは、VirtualBoxとVMwareが32ビットのホストで64ビットのゲストをサポートしていることを誤解したと指摘している。VirtualBoxは、virtualbox-ose
パッケージのUbuntuリポジトリで利用できます。
VirtualBoxのドキュメントには、64ビットオペレーティングシステムの実行に関する次のアドバイスが記載されています。
VirtualBoxは、次の条件を満たす場合、32ビットのホストオペレーティングシステムでも64ビットのゲストオペレーティングシステムをサポートします。
ハードウェア仮想化をサポートする64ビットプロセッサが必要です(「ハードウェア仮想化とソフトウェア仮想化」のセクションをご覧ください)。[お使いのプロセッサはこの要件を満たしています。]
64ビットのサポートが必要な特定のVMに対してハードウェア仮想化を有効にする必要があります。ソフトウェア仮想化は64ビットVMではサポートされていません。
32ビットのホストオペレーティングシステムで64ビットのゲストサポートを使用する場合は、特定のVMに64ビットのオペレーティングシステムを選択する必要もあります。32ビットのホストで64ビットをサポートすると追加のオーバーヘッドが発生するため、VirtualBoxは明示的な要求があった場合にのみこのサポートを有効にします。
64ビットホスト(通常、ハードウェア仮想化サポートが付属)では、設定に関係なく64ビットのゲストオペレーティングシステムが常にサポートされるため、ゲストに64ビットオペレーティングシステムをインストールするだけで済みます。
警告
任意のホストで、64ビットモードで使用する予定の仮想マシンのI / O APICを有効にする必要があります。これは特に64ビットWindows VMに当てはまります。「「詳細」タブ」を参照してください。さらに、64ビットのWindowsゲストの場合、AMD PCNetカードには64ビットのドライバーがサポートされていないため、VMがIntelネットワーキングデバイスを使用していることを確認する必要があります。「仮想ネットワークハードウェア」と呼ばれるセクションを参照してください。VirtualBoxグラフィカルユーザーインターフェイスの「VMの作成」ウィザードを使用する場合(「最初の仮想マシンの作成」を参照)、VirtualBoxは選択した64ビットオペレーティングシステムタイプごとに正しい設定を自動的に使用します。
ソフトウェア仮想化を使用する必要がある場合qemu
は、Ubuntuリポジトリからパッケージをインストールできます。それを制御するために利用可能なGUIパッケージがいくつかあります(私はを好みますaqemu
)が、コマンドラインから使用することもできます。
または、代わりに64ビットバージョンのLinuxを実行することを検討してください。Ubuntu x86_64は、仮想化を一切行わずに32ビットバイナリの実行をサポートします。