SOHOや自宅で,Red Hat Enterprise Linux(RHEL)を導入したサーバーを2台使う。ぜいたくな使い方だが,これに近いことは簡単に実現できる。RHELのクローンOSで無償で入手できる「CentOS」と仮想化技術「Xen」を組み合わせる手法だ。

(5)各サーバー環境を構築

 サーバーに割り当てる2つのゲストOS「Xen-inet」と「Xen-lan」が起動できれば,サーバー設定は通常通りに行えばよい。

 ゲストOSには,ドメイン設定ファイルで指定したディスクとネットワーク,メモリー以外にアクセスできないという制限があるだけで,それ以外は,1台のマシン上にCentOSを導入して使っている場合と同じだ。では,順番に,Webサーバーとファイル共有サーバーの構築方法を紹介していこう。

Webサーバーに仕立てる

 まず,Xen-inetのコンソールを再び表示させる。それには,

のようにxm consoleコマンドに仮想サーバー名を指定する。「************ REMOTE CONSOLE: CTRL-] TO QUIT ********」が表示されたら,〔Enter〕キーを押す。これでXen-inetのコンソールに切り替わる。切り替わったら,rootでログインし,passwdコマンドでパスワードを設定しておこう。

 前述したyum groupinstallコマンドにより,Xen-inetには既にWebサーバーとして運用するために必要なソフトが導入されている。よって,

と実行するだけで,Apache HTTP Serverが起動する。実際に,別のマシンのWebブラウザからXen-inetに設定したIPアドレスを指定し,CentOSのテスト・ページを閲覧できることを確認してみよう。

ファイル共有サーバーに仕立てる

 続けて,Sambaを用いたファイル共有サーバーも構築しよう。〔Ctrl〕キーと〔]〕キーを同時に押し,いったんXen-inetのコンソールを終了する。今度は,

のように入力し,Xen-lanのコンソールに切り替える。同じくrootのパスワードを設定しておく。

 Xen-lanにも既に,ファイル共有サーバーとして運用できるように必要なソフトがインストールされている。ただしファイル共有サーバーの場合,立ち上げるには若干の設定が必要だ。

●コンピュータ名の設定
 Sambaでは,Linuxのホスト名がMicrosoftネットワークのコンピュータ名としてそのまま利用される。現在の設定では「localhost」になっているが,このままではWindows搭載機から接続した際にエラーが表示されてしまう。「localhost」ではないホスト名に変更しよう。

 変更する手順は以下の通りだ。まず/etc/sysconfig/networkファイルにある「HOSTNAME=localhost.localdomain」の「localhost」部分を,任意の名前に書き換える。

 例えば,ホスト名を「xensamba」にするなら,

と書き換えればよい。設定し終えたら,ネットワークを再起動する。

●Sambaの設定
 利用環境に合わせたSambaの設定も必要だ。Sambaの設定は/etc/samba/smb.confファイルに書き込む。図14が筆者が行った設定だ。

図14●Sambaの設定
図14●Sambaの設定
この設定で,ワークグループ「XEN」に所属するコンピュータ名「xensamba」の/var/sambaディレクトリを,共有フォルダ「public」として利用できる。
[画像のクリックで拡大表示]

 この設定では,ワークグループ「XEN」に所属するコンピュータ名「xensamba」の/var/sambaディレクトリを,共有フォルダ「public」として利用できるようにした。/var/sambaディレクトリが存在しないため,次のように作成する

 さらに,この共有フォルダにアクセスできるユーザーを「tdbsam」というデータベースに登録する。

のように,useraddコマンドにユーザーID(この例では「fukuda」)を指定してLinuxのユーザーとして登録したあと,pdbeditコマンドに-aオプションを付けてSambaのユーザーとして登録する。ここで入力を求められるパスワードが,共有フォルダにアクセスするパスワードになる。

 以上2つの設定を行ったら,

を実行して,Sambaのデーモンを起動する。これで,Windows搭載機の「マイ ネットワーク」などから共有フォルダにアクセスできる。

CentOSでyumコマンドを実行させる

 CentOSでは,yumコマンドを用いて別のルート・ディレクトリにソフトを導入する際,エラー・メッセージが表示されインストールできないことがある。これは,別のルート・ディレクトリを指定したことで,yumコマンド実行に必要なファイルや環境変数をうまく取り込めないためだと思われる。Fedora Core 4ではこのようなエラーは起きない。

 この不具合を解決する方法は次の通り。ソフトウエアを導入したいルート・ディレクトリ内にyumコマンドの設定ファイル群をコピーする。

 そして,コピーした中の/mnt/img/etc/yum.repos.d/CentOS-Base.repoファイルを書き換える。

 まず,GPGキーが正常に読み込まれずに発生するエラーを解消するために,「gpgckeck=1」の直後に,

を追加する。これを[base][update][addons][extras]の項目に対して行う。

 また,環境変数の$releaseverに正しく数値が代入されない問題は,$releasever変数を「4.1」の数値に書き換えて解決する。これも[base][update][addons][extras]の項目に対して行う。