32ビットLinuxに64ビットLinux仮想マシンをインストールする方法は?

32ビットLinuxに64ビットLinux仮想マシンをインストールする方法は?

32ビットLinux(ubuntu 11.04)がインストールされているコンピュータ(Intel Core i5)があり、64ビットコマンドラインアプリケーションをテストできるように64ビットLinux仮想マシンをインストールしようとしています。

答え1

両方仮想デバイスそして仮想ボックス64ビットプロセッサがある場合は、32ビットホストシステムで64ビット仮想マシンを実行できます。 VirtualBoxの場合、プロセッサへのハードウェア仮想化のサポート(AMD-VまたはVT-x、Linuxの下に表示されますsvm)、以前のプロセッサを除いて、ほとんどのx86-64プロセッサ、特にすべてのCore i5モデルがこのサポートをしていると思います。vmxflags:/proc/cpuinfo

失敗した場合は、Qemuなどのソフトウェアでx86-64プロセッサをエミュレートする仮想マシンテクノロジを使用できます。しかし、必要がなければ良い考えではありません。速度が遅く、メモリを占有し、厄介です。

私のアドバイスは、64ビットホストまたは少なくとも64ビットカーネルを購入することです。 x86-64(amd64とも呼ばれます)カーネルで32ビットアプリケーションを実行でき、実際にamd64 Linuxカーネルで32ビットLinuxユーザー領域全体を実行できます。

Ubuntuはi386ディストリビューションに64ビットカーネルを提供しません(Debianは提供しています)。 amd64ディストリビューションからカーネルを取得し、アプリケーションを実行する必要がありますが、このパッケージはnattyからインストールするのは簡単ではありません。

したがって、64ビットアプリケーションを実行する最も簡単な方法は、amd64 Ubuntuを並べてインストールすることです。既存の32ビットインストールを維持しながら、別々のパーティションにインストールします。 64ビットシステムでは、既存のパーティションをマウントしてから32ビットschroot(このガイドを参照))32ビットプログラムを実行します。

答え2

Gillesは、私がVirtualBoxとVMwareが32ビットホストで64ビットゲストをサポートすると誤って信じていると指摘しました。 VirtualBoxはUbuntuリポジトリにパッケージ化されていますvirtualbox-ose

VirtualBox ドキュメント64ビットオペレーティングシステムの実行に関する次の推奨事項を提供します。

VirtualBoxは、次の条件が満たされた場合、32ビットホストオペレーティングシステムでも64ビットゲストオペレーティングシステムをサポートします。

  1. ハードウェア仮想化をサポートする64ビットプロセッサが必要です(「ハードウェアとソフトウェアの仮想化」セクションを参照)。[あなたのプロセッサはこの要件を満たしています。 ]

  2. 64ビットのサポートが必要な特定のVMに対しては、ハードウェア仮想化を有効にする必要があります。 64ビットVMではソフトウェア仮想化はサポートされていません。

  3. 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ビットオペレーティングシステムの種類ごとに自動的に正しい設定を使用します。

ソフトウェア仮想化を使用する必要がある場合は、qemuUbuntuリポジトリからパッケージをインストールできます。これを制御するために使用できる複数のGUIパッケージがありますが(私は好むaqemu)、コマンドラインで使用することもできます。

または、64ビット版のLinuxを実行することを検討してください。 Ubuntu x86_64は、仮想化なしで32ビットのバイナリ実行をサポートします。

関連情報