Hyper-V に CentOS をインストール

2010/03/08
★★★

Windows 2008 R2 Hyper-V に CentOS 5.4 をインストールする方法を紹介する。また、CentOS に "統合サービス" をインストールする方法も紹介する。

Windows 2008 R2 Hyper-V は、言わずと知れた Windows が提供する仮想環境だ。Windows 2008 がプラットフォームであるので、ゲスト OS として Windows OS を選択した場合、親和性が非常に高い。Hyper-V では、"統合サービス" というモジュールが .iso 形式で提供され、仮想 DVD ドライブに読み込ませ、対 Hyper-V ネットワークドライバ等のドライブ一式をインストールすることができる。

ゲスト OS に Linux を選択した場合にも、Linux 用の統合サービスが公式に提供されている。

Linux Integration Components for Windows Server 2008 Hyper-V R2 - 日本語

もちろんケースバイケースだが、開発環境は、Windows OS、サーバーは、Linux で構成するシステムも多々ある。今回は、Linux 系の OS である CentOS を Hyper-V 環境へインストールする方法について紹介する。

http://www.centos.org/ へアクセス。[Downloads] -> [CentOS-5 ISOs] を選択。今回は、32bit 版をインスールするので、[i386] から任意のミラーサイトで、"CentOS-5.4-i386-bin-DVD.iso" をダウンロードする。CD の ISO イメージでは、複数枚になってしまうので、DVD イメージをインストールすることを強く推奨する。

ホスト OS で、[スタート] ボタンから、[管理ツール] -> [Hyper-V マネージャー] を選択し、Hyper-V マネージャーを起動する。右部 [新規作成] -> [仮想マシン] で、[仮想マシンの新規作成ウィザード] を起動する。各設定項目は、

[ネットワークの構成] で、[接続] で、[XXXXXX - 仮想ネットワーク] を選択する。
[インストール オプション] [ブート CD/DVD-ROM からオペレーティング システムをインストールする] -> [イメージ ファイル (.iso)] で、ダウンロードした "CentOS-5.4-i386-bin-DVD.iso" を選択する。

これで、仮想マシンをブートすれば、インストールが自動的に実行され、何もなかったように完了する。しかし、悲しいながら、ネットワークカードを認識していない。

そこで、Linux Integration Components for Windows Server 2008 Hyper-V R2 - 日本語 の登場だ。

ただし、これも本末転倒的だが、gcc 等のモジュールを追加しないと、Linux Integration Components for Windows Server 2008 Hyper-V R2 - 日本語 をインストールできない。gcc をインストールするには、おなじみの yum を利用したいところだが、ネットワークが利用できないのであれば、gcc のインストールもできない。

そこで、"CentOS-5.4-i386-bin-DVD.iso" をインストールソースとして各種モジュールをインストールする。CentOS をインストールした [仮想マシン接続] を起動、[メディア] -> [DVD ドライブ] -> [ディスクの挿入] で、"CentOS-5.4-i386-bin-DVD.iso" を選択する。

次に、CentOS のデスクトップで、[アプリケーション] メニューから、[ソフトウェアの追加/削除] を選択する、すると、[リポジトリマネージャ] が自動的に起動するので、[c5-media] を選択し、[編集] -> [新しいリポジトリ] ダイアログを起動し、[場所] にある一部のパスを以下のように変更する。[リポジトリマネージャ] が自動起動しない場合は、[パッケージマネージャ] -> [編集] -> [リポジトリ] を選択し、[リポジトリマネージャ] を起動する。

変更前: "file://media/CentOS/" 
変更後: "file://media/CentOS_5.4_Final/"

さらに、[リポジトリマネージャ] で、[c5-media] 以外のリポジトリのチェックを外す。設定を保存する。この状態で、以下のコマンドを実行。

>yum install gcc

>yum install kernel-dev

>yum install make

次に、Linux Integration Components for Windows Server 2008 Hyper-V R2 - 日本語 をインストールする。 [仮想マシン接続] -> [メディア] -> [DVD ドライブ] -> [ディスクの挿入] で、"LinuxIC v2.iso" を選択する。

メディアをマウントする。

> mkdir /mnt/cdrom

>mount /dev/cdrom /mnt/cdrom

モジュール一式をローカルにコピーする。

>mkdir /opt/linux_ic_v2

>cp /mnt/cdrom/* /opt/linux_ic_v2 –R

統合サービスをインストールする。

>/opt/linux_ic_rtm/setup.pl drivers

これで、再起動しなくても、ネットワークカードを正しく認識していることを確認する。リポジトリの設定をもとに戻し、任意で、yum でソフトウェアのインストール、アップデートを行う。

Hyper-V サーバーへリモートデスクトップで接続して、[Hyper-V マネージャー] で CentOS を利用する場合に、マウスがキャプチャされない。統合サービスをインストールしてもマウスのキャプチャはされない。この点においては、改善を望む。

(*)仮想マシン作成時に "レガシ ネットワークアダプター" を追加すると、インストール時にネットワークアダプターが認識されることがわかった。以下の記事の手順を実行すれば、Linux 統合サービスをインストールすることなく、インターネット経由でリポジトリから、"yum" によりパッケージのインストールができる。以下は、CentOS x64 のインストールを説明した記事だが、インストール手順は x86 も同様。

Hyper-V に CentOS x64 をインストール

(*)新しく CentOS x64 へ Linux 統合サービスをインストールする方法を紹介した記事を投稿した。x86 も同様の手順で統合サービスをセットアップできるので、以下も参照されたい。

CentOS x64 に Hyper-V 統合サービスをインストール

(*)新しく Hyper-V Linux 統合サービスでマウスキャプチャを有効にする方法を紹介した記事を投稿した。マウスキャプチャ問題のソリューションとなる。以下も参照されたい。

Hyper-V Linux 統合サービスでマウスキャプチャを有効にする