連載 / Linux のツールたち VMware のマウスモシュール UN 工 X MAGAZINE 2006 . 4 をロードしようとした時点で実行工ラーとなって X カ閉ルませんでした。 リにコピーしてみましたが、 X. org のバージョンカ嗹うためか、モジュール 6 このモジュールを /usr/X11R6/lib/m0dules/drivers ディレクト Driver "vmmouse " ・変更後 Driver t'm01.lSe ・変更前 mouse-drv. 。を使うように指定します。 れているので、 40 行目を以下のように書き換えて vm- スモジュールは X. org 標準の mouse-drv. 0 が指定さ と、このファイルが自動的に書き換えられますが、マウ タで開きます。 vmware-config-t001S. pl を実行する X. org の設疋ファイル /etc/Xll/xorg. conf をエディ 2. X. org 設疋ファイルの変更 [root@mandriva ~ ] # ロ /usr/X11R6/1ib/modu1es/input/ /conf igurator/XOrg/6.8. x/vmmouse—drv. 0 , [root@mandriva ~ ] # cp /usr/lib/vmware¯tools=> これを X. org の標準ディレクトリにコピーします。 ます。もっとも新しいのは x.org 6.8 用のものなので、 ル (vmware-drv. 0)6 とマウスモジュールが置かれてい クトリ以下に VMware 用のグラフィック・モジュー ると、 /usr/lib/vmware-tools/configurator ディレ vmware-tools の RPM パッケージをインストールす 1. VMware 用マウスモジュールのコヒー 使ってみました。これは、以下の手順でおこないます。 vmware-tools に付属するマウスモジュールをコピーして 動するのはもったいないと思うかもしれません。そこで、 ルでもフォーカスの移動は可能ですが、そのためだけに起 vmware-tools を起動しておけば、標準マウスモジュー スモジュール (mouse-drv. 。) が使われます。もちろん、 も vmmouse-drv. o がコピーされず、 X. org 標準のマウ 利用しているからか、 vmware-tools をインストールして しかし、 mandriva20()6 では X. org バージョン 6.9 を 切替えや、文字列のコピー & ペーストが可能になります。 ゲスト OS ←ホスト OS 間のマウス移動によるフォーカス す。これを使うと、 vmware-toolbox を起動しなくても、 ウスモジュール (vmmouse-drv. 0) がインストールされま 通常、 vmware-tools をインストールすると、 X 用のマ mandriva2006 を通常のランレベル 5 で実行している 場合、再ログインなどで x を再起動すれば VMware 用 のマウスモジュールがロードされ、 vmware-toolbox を起 動しなくてもマウスの移動によるフォーカス切替えができ るようになります。ただし、 X. org のバージョンが違うた めか、文字列のコピー & ペーストまではできませんでした。 私の場合、ゲスト OS では x サーバーを起動せず、ホス ト OS 上の ASTEC-X を使ってゲスト OS の X クライ アントを実行しています。したがって、 VMware の文字 列コピー & ペースト機能は使っていませんが、これが必要 な人は標準のマウスモジュールのまま、 vmware-toolbox を起動しておくしかなさそうです。 トラブル・シューティンク 最後に、インストール後に気づいた問題の対処法をいく つカ齠介しておきます。 日本語オンライン・マニュアル さきほど、「追加インストール」の項で日本語のオンライ ン・マニュアルをインストールしましたが、 mandriva20()6 ではこれが正しく表示できません。たとえば、、、 man ls" を実行すると、以下のようにエラーになってしまいます。 環境変数 LANG を一時的に変更して英語マニュアルを 表示させようとしても、図 22 のように日本語マニュアル カ観れ、しかも表示の乱れや文字化けがあります。 [hayao@mandriva ~ ] $ man ls /usr/bin/groff : can't find 'DESC' file /usr/bin/groff : fatal error : invalid device 111PP0n ' [hayao@mandriva ~ ] $ ロ 調べてみたところ、オンライン・マニュアルの整形に使 われる groff が原因らしく、 mandriva2006 に付属する バージョン 1.19.1 には日本語の扱いに問題があるようで す。今後のバージョンアップなどで解決されるとは思いま すが、それまで指をくわえて待っているわけにもいかない ので、 Fedora Core 4 ( 以下 FC4) のソースパッケージを 入手して入れ替えることにしました。 まず、 FC4 のミラーサイト 7 から、以下の 2 つのパッケ ージを入手します。 7 http://fedora.redhat.com/Download/mirrors.html 161
連載 / ネットワークとセキュリティ 図 11 里ツールのダウンロードとインストール # rpm —ivh vzctl ー 2.7.0 ー 26. i386. rpm vzctl ー lib ー 2.7.0 ー 26. i386. て pm vzquota-3.0.0 ー 2 . i386 . rpm http://download.openvz.org/uti1s/vzquota/3.0.0 ー 2 / vzquota ー 3.0.0 ー 2 . i386. rpm http://download.openvz.org/uti1s/vzct1/2.7.0-26/vzct1-1ib-2.7.0 ー 26. i386. て pm \ $ wget http://download.openvz.org/uti1s/vzct1/2.7.0ー26/V2Ct1ー2.7.0 ー 26. i386. て pm \ $ su Preparing ・ 1 : vzquota 2:vzct1—1ib 3:vzct1 図 12 OpenVZ の走カ # /etc/init . d/vz start Starting OpenVZ : Bringing up interface venet0 : [ OK ] [ OK ] Configuring interface venetO : net . ipv4. conf . venet0. send—redirects = 0 [ OK ] 図 13 OS テンプレート嵂里ツールのダウンロードとインストール $ wget http://download.openvz.org/temp1ate/uti1s/vzpkg/2.7.O-18/vzpkg—2.7.0 ー 18. noarch. rpm \ http://download.openvz.org/temp1ate/uti1s/vzyum/2.4.0 ー 11 / vzyum ー 2.4.0 ー 11. noarch. rpm $ su # rpm -ivh vzpkg—2.7.0 ー 18 . noarch. rpm vzyum ー 2.4.0 ー 11. noarch. rpm iptables の言聢変更 私が試したかぎり、 OpenVZ 版のカーネルをインスト ールした直後のホスト OS 上では、コネクション追跡機 能 (ip-conntrack) カ陏効になったルールか慟作しません。 そのため、 iptables の自動起動を停止します。 # /sbin/chkconfig —-del iptables ランレベル 3 で iptables の起動が無効になっているこ 管理ツールのインストール # /sbin/reboot OpenVZ 版カーネルで起動します。 これらの作業が完了したら、マシンを再起動し、新しい # /sbin/chkconfig —-list iptables とを確認します。 UNIX MAGAZINE 2006.4 必要なので、一・にダウンロードしておきます ( 図 11- a ) 。 ンロードします。 vzctl の動作には vzct い ib パッケージも にアクセスし、アーキテクチャに適したパッケージをダウ ・ http://openvz.org/download/utils/ るユーティリティです。 vzquota は仮想サーバー上のクオータ (quota) を設疋す vzctl は仮想、サーバーを操作するためのユーティリティ、 をインストールします。 次に、 OpenVZ の管理ツールである vzctl と vzquota なお、原稿執筆時点での最新版は、 vzctl が 2.7.0 ー 26 、 vzquota カゞ 3.0.0 ー 2 です。 ファイルのダウンロード後、これらのパッケージをイン ストールします ( 図 11 -bo ファイル名はダウンロードし たファイルに読み替えてください ) 。 続いて、 OpenVZ を起動します ( 図 12 ) 。 これで、 OpenVZ 用の Loadable KerneI Module カゞ 読み込まれ、イ磨課サーバーを構築する準備か整いました。 OS テンプレート・キャッシュの作成 OpenVZ では、イ磨誤サーバーごとに異なる Linux ディ ストリビューションを同時に利用できます。各ディストリ ビューションで利用するパッケージ群を、 OpenVZ では 、 OS テンプレート " と呼びます。そして、パッケージ群を 圧縮し、すぐに仮想サーバーを構築できるようにしたアー カイプを、、 OS テンプレート・キャッシュ " と呼びます。 OpenVZ のページでは、すでに作成済みのテンプレー ト・キャッシュを公開していますが、旧いパッケージが含 まれているため、今回は新しいテンプレート・キャッシュ を作成します。 まず、 ・ http://openvz.org/download/template/utils/ にアクセスし、 OS テンプレートを作成するためのツール をダウンロードします。 43
連載 / ネットワークとセキュリティ uti1s/vzrpm44/4.4.1 ー 22.5 / vzrpm44 ー 4.4.1 ー 22.5. i386. rpm http://download.openvz.org/template/utils/* 4.3.3 ー 7 ーⅡ 0 Ⅱ ptl .6/vzrpm43-python-4.3.3—7_nonpt1.6. i386. rpm http ://download.openvz.org/template/=> vzrpm43—4.3.3 ー 7 ー 0 Ⅱ ptl. 6. i386. rpm http ://download.openvz.org/temp1ate/uti1s/vzrpm43/=> $ wget http ://download.openvz.org/temp1ate/uti1s/vzrpm43/4.3.3 ー 7 ー no Ⅱ ptl. 6 / - 図 14 OS テンプレートで不する RPM のダウンロードとインストール vzrpm44/4.4.1 ー 22 .5/vzrpm44-python—4.4.1 ー 22.5. i386 . rpm $ su # rpm -ivh vzrpm43-* . rpm vzrpm44—* . rpm 図 15 Fedora Core 3 用テンプレートのダウンロードとインストール ( 誌面の都合上、で折り返しています。以下同様 ) $ wget http : //download. openvz. org/temp1ate/metadata/fedora—core—3/=> vztmp1-fedora—core—3—2.0ー2. i386 . rpm $ su # rpm —ivh vztmp1-fedora-core-3-2.0 ー 2 . i386. rpm vzpkg は OS テンプレートを管理するツール、 vzyum は RPM パッケージ管理ツールである yum のラッパー プログラムです。原稿執筆時点での最新版は、それぞれ 2. 7.0 ー 18 、 2.4.0 ー 11 です。 ほかのツールと同じようにダウンロード、インストール をおこないます ( 図 13 ) 。なお、依存性の関係で vzpkg と vzyum は同時にインストールする必要があります。 次に、 OS テンプレートで利用する RPM をダウンロー ド、インストールします。イ反想サーバー上で利用するディ ストリビューションによって必要となる RPM のバーショ ンが異なるため、 RPM 4.3 と RPM 4.4 のパッケージが 用意されています。ここでは、 vzrpm43 と vzrpm44 を 両方ともインストールしておきます ( 図 14 ) 。 通常、 OS テンプレートを作成するには、、 OS テンプレ ート・メタデータ " を用います。 OS テンプレート・メタ データは、 OS テンプレートに含まれるパッケージの一覧、 パッケージの入手先、インストールに必要なスクリプト、 OpenVZ 環境に対応するためのパッケージなどで構成さ れています。 OS テンプレート用ツールが揃ったら OS テンプレー ト・メタデータを入手します。下記のページから、 Fedora Core 3 、 Fedora Core 4 、 CentOS 4 用のメタデータが 入手できます。 ・ http://openvz.org/download/template/ metadata/ こでは、ホスト OS と異なるディストリビューション のイ反想サーバーを試すため、 Fedora Core 3 用のメタデー タをダウンロード、インストールします ( 図 15 ) 。 44 準備か整ったら、いよいよ OS テンプレート ュを構築します。キャッシュを構築するには、 # vzpkgcache OS テンプレート名 というコマンドを入力します。、、 OS テンプレート名 " は、 ・キャッシ これにより、テンプレート・キャッシュが再作成されま # vzpkgcache —f fedora—core—3 行します。 集し、—f オプションを付けて vzpkgcache コマンドを実 /fedora-core/3/i386/config/default. list ファイルを編 ます。パッケージの構成を変更するには、 /vz/template OS テンプレートの内容をカスタマイズすることもでき # vzpkgcache fedora—core—3 ドです ) 。 プレート・キャッシュを更新します ( 作成時と同じコマン など、 OS テンプレートをアップデートする際には、テン セキュリティ対応版のパッケージがリリースされた場合 OS テンプレートのアップデートとカスタマイズ かるかもしれません ( 私の場合は数時間程度でした ) 。 ロード、インストールするため、環境によっては時間がか 使って OS テンプレートに含まれる全パッケージをダウン OS テンプレート・キャッシュの作成過程では、 yum を となります ( 図 16 ) 。 とメタデータのバージョン番号を除いた、、 fedora-core-3 fedora-core-3-2.0ー2. i386. rpm の場合、先頭の vztmpl OS テンプレート・メタデータのファイル名が vztmpl- す。 UNIX MAGAZ 工 NE 2006 . 4
特集 白崎博生 使ってみよう OpenS0 恰 ris SchilliX 、 BeleniX 、 Nexenta る活動もおこなわれているようです 2 OpenSOIaris とは 使いやすさという点にかぎれば、現状では Linux の各 Sun Microsystems は、 2005 年 6 月に OpenSolaris 種ディストリビューションにくらべて二歩も三歩も遅れて . orgl において solaris を無償公開しました。無料で試用 いる観は否めません。とはいえ、これからおもしろくなり 可能な Solaris は、それまでも Sun の Web ページから そうな雰囲気が漂っています。この特集では、今後、大き ダウンロードできました。しかし、 OpenSolaris.org から く育っていきそうな OpenSolaris の雰囲気を味わってい 入手できる Solaris は、ソースコードが公開され、ユーザ ただくために、いずれも誕生したばかりではありますが、以 ーが自分でビルド可能という点が大きく異なります。 下の 3 つのディストリビューションのインストール方法を それまでの、、 Solaris " は、カーネルとシステム・プログ 中心に紹介します。 ラムを Sun がパッケージ化した OS 環境のことを指してい ・ SchilliX ました。つまり、 Solaris といえば Sun カ己布する Solaris ・ BeleniX 以外にはなかったわけです。 Nexent a 一方、 OpenSolaris.org は派生物を認めています。これ なお、以降の説明は X86 アーキテクチャの PC で動か は、入手したシステムをユーザーカ融自に改変し、配布し すことを豺是としています。 てもよいということです。この点では、 Linux に Fedora これらのディストリビューションをインストールすると Core や Debian など、さまざまなディストリビューショ きは、テスト専用の PC を 1 台用意するか、 VMware3 や ンがあるのと似ています。 QEMU4 などの仮想 PC を使うとよいでしよう。 OpenSolaris のおかげで無料で使えるようになったと はいえ、 Solaris が Sun の商用 OS であることに変わり 「デュアルプートにしたらええやん」 はありません。インストーラも Fedora Core や SUSE と思うかもしれませんが、 Windows や Linux などがすで Linux ほと。親切ではなく、 Linux にくらべるとどうしても に入っているハードディスクの空きパーティションにイン 敷居カ皜いというイメージがありました ( もしかすると、プ ストールしようとすると、それらの既存のパーティション 口かオタク、あるいはフリークカイ吏う OS だと思われてい を壊してしまうおそれがあります。 たかもしれません ) 。 最初に断っておきますが、私自身はこれらの OpenSo- しかし、 OpenSolaris の公開後、 Solaris カーネルをベ laris を本格的に使っているわけではありません。したが ースとするフリーなディストリビューションがユーザー って、どのくらい安定しているかといった点にはお答えで コミュニテイからリリースされました。ディストリピュー 2 http://www.blastware.org/ ションを作るだけでなく、 Solaris を PowerPC へ移植す 3 http://www.vmware.com/ 4 http://fabrice.bellard.free.fr/qemu/ 1 http://www.opensolaris.org/ 21 UN 工 X MAGAZ 工 NE 2006 . 4
ネットワークで使える 共有型スプレッドシート ソリューション S600.0 「 9 で “定時帰宅主義”に なりきした。 S600.0 「 g の特徴 ・インターネット経由でスプレッドシー トアプリケーションが利用できます。 ・同時に複数の人が、 1 枚のスプレッド シートを参照、編集することができ ・通信内容は暗号化するため、安全に 利用できます。 ・ PC にソフトウェアをインストールす る必要がありません。 ・マクロやスクリプト言語を使って、 スプレッドシートアプリケーション を作ることができます。 0 第・ 0 - ☆聊 0 0 0 5 6 00.0 ー q - 0 価知血第 & メィ・ヨ「 r—、・ゴ・ ウインドウヘルプ的 フ , イルの・第・を示物入・式ツールのチータ , , ■・・第“産・ラみ第・・ : チ " クイン・ノ物 : 亟 = 国 [ 二ロ 社用交通費精算を 年月日 S600. org のテモ版を提供開始 ! h p : 〃 www. S60 0 「 9 / 田空再空第 空用一羽空第 0 0 口を S600. org は、独立行政法人情報処理推進機構の 2005 ・ビジネスパートナーを募集 年度中小ぼべンチャー支援事業で採択され ( テーマ名 : 安 全なサーバー型共有スプレッドシート ) 、同事業の支援を ① S600.0 「 g を使ったスプレッドシートアプリケーションを開発し 受けて開発しているソフトウェアです。 ませんか ? ② S600.0 「 g を使った ASP サービスを展開しませんか ? 株式会社アクタスソフトウェア 3S600.0 「 g 向けに既存のスプレッドシートアプリケーションを移 〒 141-0021 東京都品川区上大崎 2-13-20 植しませんか ? 高砂ビル白金 507 詳細は、 http://www.s600.org/をご覧ください。 http://www.acutus.co.jp/ Tel 03-5791-1786 Fax 03-5791-1787
特集 使ってみよう OpenSo ris 図 18 Nexenta の、 veb ページ 第ま鱒 : ー物当ユ 、 0 ィ”ま物 05 : 氛、 ! 0 、物ア写 Welcome tO Nexenta Operating System! ー 0 第第尊ーを当拯当 ! リを自ー・第れい新を 建ー第第′第鷲第・のを 70 ~ ー第′いレメ、第 0 ーを 00 、一 ~ こ ( 咋に 5 ! , , 、げ物、、 , 物イを、 k ′「第 0 ー、代ををし、を 0 b ・第・さ 5 をを引 0 、い物第を 4 、び 4 れな・・警、 10 : h “翁ーい・ 、 ` 、・ OS こ 0 , ー , け、 00 ”ー 0 ′、ををなを物 00 を・、 0 ! ・ 00 い : 0 ! 第 霪 0 をを ( 第 を 0 豊え -5 一気 をアワ一を・ 20 を一、、遥な′′つけ・、 ( 第 ` ・ 0 ト・・一、。 0 、一嶝、物 0 第ををみ望し 0 ・ http://www.gnusolaris ・ org/ 感を覚えるかもしれません。 Nexenta は、、、 Solaris カーネルをベースにした Debian システム " を目指しているらしく、 Debian GNU/SoIaris という別名カ咐けられています。ただし、 Debian と同じ 仕組みを使っているとはいっても、現在は Debian プロジ ェクトとの直接の関係はなさそうです ( もしかすると、将 来的には合流することがあるのかもしれません ) 。 apt-get で必要なパッケージをインストールできるのは 便利ですが、注意すべき点が 2 つあります。 1 つは、 Debian GNU/Linux と同じパッケージがすべ て用意されているわけではないことです。とくに日本語関 連のソフトウェア・パッケージはまったくないので、日本 語環境を整えるには自力でコンパイルする必要があります。 このため、 Linux の場合ほど楽はできないでしよう。 もう 1 つは、 pkgadd などの solaris のパッケージ管理 プログラムがないことです。これはけっこう不便です。た とえば、 Freeware for solaris のページで公開されている パッケージや、ハードウェア・べンダーカ己布するドライ パ・パッケージがインストールできないのです。 今後、 Nexenta のユーザーカ寸曽えてくれば、 2 つのパッ ケージ形式を変換するようなツールが用意されるかもしれ ません。しかし、それまでにどうしても pkgadd コマンド を使いたい場合は、以下の URL からダウンロードできる pkgutils. i386. tar. bz2 を利用しましよう。 ・ http://opensolaris.org/os.com/unity/ tools/pkgtools/ UN 工 X MAGAZINE 2006.4 インストールは、ルート・ディレクトリ上で上記のファイ ルを展開するだけです。ただし、いくっかの共有ライプラ リが足りないといわれます。これらについては、 SchiIIiX や BeIe ⅲ X からコピーするとよいでしよう。 動かしてみる 下記のダウンロード・ページにアクセスし、ユーザー登 録をおこなって ( もちろん無料です ) 、 LiveCD 用の ISO イメージファイル (elatte 」 ivecd_aIpha3_i386. iso. (z) を 入手します。 ・ http://www.gnusolaris.org/gswiki/DownIoad/ ユーザー登録時に入力する項目はいくつかありますが、 すくなくとも以下の 4 つの情報を入力すると実際のダウン ロード・ページに移動します。 ・名前 ・メールアドレス ・ Nexenta のイ吏用経験 ・ダウンロードの目的 ファイルをダウンロードしたら、 gunzip コマンドを実 行して圧縮されたファイルを伸長します。 伸長後のファイルサイズは約 700MB になります。これ を CD-R に書き込むか、 VMware を使う場合は仮想 CD ドライプにパス名を設定します。 Nexenta の LiveCD を起動すると、 SchilliX や Be- IeniX と同様、 GRUB のメニュー画面が表示されます。 ・ Nexenta OS ' ' EIatte" LiveCD [32bit] を選択するとシステムが起動し、 GNOME のログイン画 面が表示されます。 r 。。 t ユーザーでログインしてみましょ う。パスワードは livecd です。 Nexenta には、 Firefox だけでなく、なんと OpenOf- fice.org 2 も含まれています ( 図 19 ) 。 700MB という限 られた容量のなかに、よく収められたものだと感こ、してし まいました。 VMware のゲスト OS として起動する場合は、特別な 設疋は不要です。 VMware 用の XFree86 ドライバやネッ トワーク・ドライバも含まれているので、ごくに使う ことができます。ただし、 Ens 。ⅲ q のサウンドドライバは 29
04 谷崎文義 林檎の暮らし Mac OS X のアプリケーション えます。図 1 の例では、 src というディレクトリをデスク ついに、 lntel の CPU を用いた Macintosh が発売され ました。皆さんのなかには、すでに手許にあるという人も トップの source. zip にバックアップしています。これ以 いるかもしれませんね。私も、 AppIe Store のサイトで思 外にもいろいろなオプションがあるので、オンライン・マ わず MacBook Pro をクリックしそうになりました。魅 ニュアルで確認してください。 力的な機能が満載ですが、 ExpressCard/34 スロット 1 に 挿さるカードの動向をみてから決めようと思っています。 Mac OS X 固有のツール Mac OS X のユーザーランドは FreeBSD をもとにし たものですが、コマンド行で使える Mac OS X 固有のツー ルもあります。そのなかから、いくつかを紹介しましよう。 hostinfo そのホストのカーネルのバージョンや CPU の : 犬態、メ モリの状態などを調べることができます ( 図 2 ) 。アプリケ ーション・メニューから、、ユーティリティ " →、、システムプ ロファイラ " としても、同様な情報を取得することができ ます。 system-profiler システムプロファイラと同じ情報を取得します ( 図 3 ) 。 XML 形式での出力も可能です。オプションを指定すれば、 より詳細な情報を出力することもできます。 otool open 以下のようにして、コマンド行からファイルやフォルダ を開くことができます。 URL を指定すれば、 Web プラウ ザでその URL にアクセスすることも可能です。 アプリケーション・フォルダを開く。 そのアプリケーションが参照しているライプラリを表示 % open /App1ications/ することができます。ー殳的な UNIX コマンドでいえば、 ・ Web プラウザで AppIe の Web サイトを開く。 ldd に似たようなものです。 % open http : //www ・ apple ・ com/jp/ Mac OS X の一般的なアプリケーションはアイコンの MS Excel や OpenOffice.org など、 Excel 形式のフ 形をしているため 1 つのファイルのようにみえますが、実 ァイルに対応したアプリケーションがインストールされ 際にはフォルダになっています。じつは、ここに MacOS ていれば、そのアプリケーションで書類を開く。 X の大きな特徴があります。 Finder の Finder メニュー % open &/Desktop/hogehoge ・ xls から、、環境誌定 " を選び、そのなかの、、詳細 " を選択します。 ditto すると、画面 1 が表示されます。ここで、、、すべてのファ イル拡張子を表示 " をチェックし、拡張子が見えるように します。、、 . app" という拡張子がイ寸いているのがアプリケ ーションです。これを右クリック ( ノート型では ControI バックアップのためのコマンドです。複製元のディレク トリと複製先を指定すれば、簡単にバックアップがおこな 1 http://www.expresscard.org/ 127 UNIX MAGAZINE 2006.4
SC 翡 3 月 29 日発売 ! FreeBSD の ブートプロセスをみる 連載 / ネットワークとセキュリティ vzctl exec 101 : イ反想サーバー上で任意のコマンドを実 行する。 vzctl stop 101 : イ反想サーバーを停止する 6 vzctl destroy 101 : イ磨課サーバーを削除する。 また、充実したユーザーガイド [ 1 ] が用意されているの で、 OpenVZ を利用する際には一読をお勧めします。 FreeBSD の プートプロセスをみる OpenVZ は、異なる種類の OS やカーネルをテストす る用途には向きませんが、低いオーバーヘッドで Linux の 仮想化を実現できるため、 Linux によるサーバー構築や、 み物扉創とスの強 , 冖準′レろ空の - ルート・バーティシ第ンの学 4 ・ ・ 0 ・シスチムコール 教育用途に使えるでしよう。 カ - ネルテパッカ 「ネットワークとセキュリティ」は残念ながら今回で終了 となります。 1 年半ほどの期間でしたが、おっきあいいた だきありがとうございました。 ( しらはた・しん慶應義塾大学 ) [ 赭 URL] [ 1 ] OpenVZ User Guide http://openvz.org/documentation/guides/ OpenVZ-User-Guide. pdf [ 2 ] ITPro 、特集「仮想化の正体」 ( 2 ) ー part2 コンピュータ / 「分 割」を極め , 「結合」の段階に http://itpro.nikkeibp ・ co ・ jp/article/COLUMN/ 20051125 / 225202 / [ 3 ] Virtualizing I/O Devices on VN'Iware Workstation's Hosted Virtual Machine Monitor http://www.usenix.org/publications/library/ proceedings/usenix()l/sugerman. html http://www.10g0S.t.u-tokyo ・ ac ・ jp/-tau/os-lecture vmware. ppt 止の論文をとりあげた「オペレーティングシステ ム」講資料 ) [ 4 ] オペレーティングシステム講資料・ http://www.sslab.ics.keio.ac.jp/-kono/os/03/ 03-process. pdf http://www.sslab.ics.kei0.ac ・ jp/-kono/os/03/ 03-process-slide. pdf [ 5 ] The Xen virtual machine monitor http://www.digitalinfra.co.jp/xen xen-performance. html 白物博生 ☆ ・白崎博生著 ・ B5 判、 184 ページ ・ ISBN 4-7561-4743-7 ・ 3 , 150 円 ( 税込み ) 知識とテクニックの宝庫、 カーネルを読もう ! B ℃ S が、プートデバイスから読み込んだ最初のプロ ックに制御を移す。ブートプロセスは、ここから始まる init プロセスが起動するまでの道のりを FreeBSD の ソースを読みながら丁寧に解説。 目次から BOOt Manage 「 boot 1 boot2—BTX の初期化処理 boot2 ーーカーネルのロード btext init886 getmemsize mi sta 「 tup cpu_sta 「 tup p 「 OCO init c 「 eate-init() とプロセスの生成 vm ー fo 「 kp 「 oc ( ) と仮想アドレス空間の管理 idle setup() と initclocks() ルート・バーティションのマウント execve システムコール カーネルデバッガ 株式会社アスキー 〒 1 02 ー 8584 東京都千代田区九段北 1 - 1 3-5 日本地所第一ビル 電話 (03) 6888 ー 5500 ( 営業局 ) 6 テスト塘竟では vzctl stop コマンドカ常に動作しないことがありまし た。このような場合には、 /usr/sbin/vzctl exec 101 halt" コマン ドを使って、仮想サーバー上で halt コマンドを実行することで安全に仮想 サーバーを停止できます。 47 UNIX MAGAZINE 2006 . 4
連載 / ネットワークとセキュリティ 図 9 カーネルのダウンロードとインストール # rpm -ivh ovzkerne1-2.6.8 ー 022Stab064.1. i686 . rpm $ su $ wget http://download.openvz.org/kerne1/022stab064.1/ovzkerne1—2.6.8 ー 022Stab064.1. i686. rpm 1 : ovzkernel Prepar1ng ・ kernel /vm1inuz—2.6.9 ー 22.0.2. EL ro r00t=/dev/V01GroupOO/LogV0100 root (hdO,0) title CentOS ( 2 . 6 . 9 ー 22 . 0 . 2 . EL ) initrd /initrd-2.6.8 ー 022Stab064.1. img kernel /vm1inuz-2.6.8 ー 022Stab064.1 ro r00t=/dev/V01GroupOO/LogV0100 root (hdO,0) title CentOS ( 2 . 6 . 8 ー 022Stab064.1 ) hiddenmenu sp1ashimage=(hdO,O)/grub/sp1ash. xpm ・ gz timeout=5 default=l 図 10 GRUB の言綻ファイル (/boot/grub/menu. lst) initrd /initrd—2.6.9 ー 22 . 0.2 . EL. img カーネルのインストール OpenVZ では、ディストリビューション標準の Linux カーネルではなく、 OpenVZ 版のカーネルを利用する必要 があります。 ・ http://openvz.org/download/kernel/ に、複数の RPM パッケージが用意されているので、自分 の環境に適したカーネルをダウンロードします。不明な場 合には、、、 X86 (IA32)" の ovzkernel を選択してください ( 図 9-a)0 ・ ovzkernel : 通常のカーネル ・ ovzkernel-smp : マルチプロセッサ、もしくは Hyper Threading 機能か第・効な CPU 用カーネル ・ ovzkernel-enterprise : 4GB 以上のメモリが載ったマ シン用カーネル (IA-32 のみ ) なお、原稿執筆時点での最新版は 2.6. & 022Stab064.1 です。 続いて、ダウンロードしたカーネルをインストールしま す ( 図 9 ー b 。ファイル名はダウンロードしたカーネルのフ ァイル名に読み替えてください ) 。 次に、デフォルトで OpenVZ のカーネルで起動するよ うに GRUB の設定を変更します。 # vi /boot/grub/menu. 1st 私の環境では図 10 に示すとおり、デフォルトでは上か ら 2 番目のカーネルが起動するようになっているので (de- 42 fault の値は 0 から始まるため ) 、 default の値を、 defau1t=0 sysctl. conf を開き、以下の 2 カ所を書き換えます。 システム変数を変更します。テキストエデイタで /etc/ さらに、仮想サーバーが正しく動作するために必要な に書き換えます。 title OpenVZ ( 2 . 6.8 ー 022Stab064.1 ) を、 title CentOS ( 2 . 6 . 8 ー 022Stab064.1 ) いように、 title 行の、 に変更します。また、 OpenVZ のカーネルを区別しやす ・ 7 行目 net . ipv4. ip—forward net . ipv4. ip-forward ・ 16 行目 kernel . sysrq = 0 kernel . sysrq = 1 ↓ ↓ 0 1 また、末尾の行の後ろに以下の謎を追加します。 net net net net . ipv4 . ipv4 . ipv4 . ipv4 . default . proxy—arp = 0 . a11. rp—filter = 1 . conf . default . send_redirects . a11. send—redirects = 0 . C onf . C 011f . C onf 1 UN 工 X MAGAZINE 2006 . 4
連載 / ネットワークとセキュリティ gpg : keyring ' /home/shin/ ・ gnupg/pubring ・ gpg ' created gpg: keyring ' /home/shin/ ・ gnupg/secring ・ gpg' created $ gpg RPM-GPG-Key—OpenVZ. txt $ wget http ://openvz.org/down10ad/RPM—GPG-Key-OpenVZ.txt 図 8 GnuPG 鍵の入手とフィンカー・プリント忍 pub 1024D / A7AID4B6 2005 ー 09 ー 14 OpenVZ Project く security@openvz . org> 度でも問題はありませんでした。これは、複数のイ反想サ ーバーがカーネルのメモリ空間などを共有しているため と考えられます。テスト用途でイ磨課サーバーを稼動させ る場合は、とりあえず 256MB 程度でもよいでしよう。 ・ 4GB 以上の空き領域のある HDD イ反想サーバーの関連ファイルは、おもに / vz ディレクト リ以下に作成されます。そのため、既存の工麭竟に Open- VZ をインストールするのではなく、新たに / vz パーテ イションを作成するか、 / ( ルート ) パーティションに十 分な空き領域を確保した環境にインストールすることを お勧めします。 ・ネットワーク・カード OpenVZ では、利用できるネットワーク・カードの種 類に制限があります。推奨ネットワーク・カードとして lntel EtherExpress1()() などが挙げられています。詳 細については Virtuozzo ハードウェア互換リスト 4 を参 照してください。 ・対応ディストリビューション OpenVZ は、ホスト OS として以下のディストリビュ ーションをサポートしています。 ◇ Red Hat Enterprise Linux 3 / 4 ◇ CentOS 3 / 4 ◇ Fedora Core 3 / 4 技術的には、これら以外のディストリビューションにも OpenVZ をインストールできると思われますが、今回 は CentOS 4 を利用する前提で説明を進めます。 ホスト OS 運用の注意点 ホスト OS はイ反想サーバーを自由に制御できるため、ホ スト OS が侵入を受けると、その上で稼動している仮想サ ーにも容易に侵入されるおそれがあります。 そのため、ホスト OS は仮想サーバーを管理する目的で のみ利用し、 SSH や VPN サーバーなど管理に必要なサー 4 http://www.virtuozzo.com/en/products/virtuozzo/hcl/ UNIX MAGAZINE 2006 . 4 ビスだけを動かすようにしましよう。また、ファイアウォ ール機器などでホスト OS にアクセスできる IP アドレス を制限するのもよいでしよう。 OpenVZ のインストール OpenVZ は、機能拡張がおこなわれた Linux カーネル と、それを制御するためのユーザーランドのツールから構 成されています。以下、カーネルのインストール、ユーザ ーランド・ツールのインストール、仮想サーバーの構築の 順に説明します。 GnuPG 鍵の検証 OpenVZ の RPM パッケージは、 OpenVZ Project の GnuPG 鍵で署名されています。ここでは OpenVZ の公 開鍵を検証する方法を説明します。 Red Hat Enterprise Linux 4/CentOS 4 に含まれる GnuPG 1.2.6 は、 ~/. gnupg を自動的に作成しないとい う問題があるため、以下のコマンドを実行します。 $ gpg ¯¯check—trustdb 続いて、 OpenVZ project の公開鍵を入手します ( 図 8 ー ダウンロードした GPG の鍵のフィンガー・プリントを 確認します ( 図 8 ー b ) 。 こで、公開鍵のフィンガー・プリントの値が、、 A7A1 D4B6" となっていることを確認し、問題がなければ RPM データベースに登録します。 $ su # rpm ——import RPM-GPG-Key-OpenVZ. txt 念のため、公開鍵が正しくインストールされているかを 確認します。 # rpm -qi gpg-pubkey-a7ald4b6 実行結果で公開鍵の version として、、 a7a1d4b6 " が表 示されていれば、正しく登録されています。 41