root - みる会図書館


検索対象: UNIX MAGAZINE 2005年8月号
32件見つかりました。

1. UNIX MAGAZINE 2005年8月号

module /b00t/initrd—fc3. img bridge モードを使わないのなら、 1 行目の、、 check-br- ct にのメッセージは無視してもかまいません。ただし、以 降で紹介するテストでは bridge モードを利用するので、 こでの説明どおりに試したい場合は、以下のコマンドを実 行してインストールします。 # yum install bridge—utils 一方、 2 行目のメッセージは無視するわけにはいきませ ん。 Twisted は Fedora Core 3 には含まれていないの で、次の URL からソースパッケージを入手します。 ・ http://www.twistedmatrix.com/products/ get-current. epy ダウンロードしたら、 root 権限で以下のコマンドを実行 します。 # tar —xvfz Twisted—I . 3.0. tar ・ gz # cd Twisted—1 . 3 . 0 # python setup ・ py install 次に、下記の URL から Fedora Core 3 用の initrd の イメージファイルをダウンロードし、 / boot ディレクトリ にコピーします。 ・ http://www.cl.carn.ac.uk/Research/SRG/ netos/xen/downloads/initrd-fc3. img そろそろ疲れてきたかもしれませんが、あとひとふんば りです。 最後に、 /etc/grub. conf に図 11 のエントリを追加しま す。ただし、図 11 の内容をそのままコピーすると、起動し ない可能性があるので、竟に合わせて変更してください。 ・カーネルファイルを読み込むパーティション 注意するポイントは以下の 4 つです。 /boot ディレクトリを専用のパーティションに割り当て ・ bOOt ノヾーティション です。 の部分は、基本的に既存のエントリをコピーするだけ パーティションの番号を、、 ( hd0 , 0 厂に設定します。 36 図 11 Fedora Core 3 の /etc/grub. conf に〕皀加するエントリ t it 1 e Xen 2 . 0 . 6 root (hdO,O) kernel /boot/xen. gz domO ー mem = 131072 module /boot/vm1inuz—2.6.11 ー xe Ⅱ 0 root=/dev/sdal ro console=tty() ルート・ディレク ている場合は、図 11 から、、 / b 。。 t " を削除します ( 3 カ 所あります ) 。これも、既存のエントリに合わせます。 ・ドメイン 0 に割り当てるメモリ dom()-rnern の引数に KB 単位で設疋します。通常は、 ドメイン 0 では制御コマンドを実行するだけなので、 64 ~ 128MB ( 65536 ~ 131072 ) くらいを割り当てればよ トリのパーティションの名前を設疋します。 カーネル起動時パラメータ root に ・ルート・ノヾーティション いでしよう。 ・ kernel-xen-nongpl-2.6.11.4 ・ kernel-xen-2.6.11.4 ・ xen ー 2.0.5c れている、 SUSE 9.3 の場合には、インストール・メディアに含ま SUSE 9.3 の場合 これでインストール作業は終りです。 のコマンドを実行しましよう。すぐにインストールが始ま マウスでクリックするのが面倒な ( せつかちな ) 人は、次 です ( 図 13 ) 。 存パッケージも自動的に選択してくれるのでたいへん便利 を使ってインストールすると ( 図 12 ) 、 Twisted などの依 の 3 つの RPM パッケージをインストールします。 YaST ります。 # yast2 —i xen kernel—xen kernel—xen—nongpl さらに、以下のコマンドを実行し、ユーザーズ・マニ アルも入れておくとよいでしよう。 # yast2 —i xen—doc—html xen—doc—pdf \ xen—doc—ps コ . RPM パッケージからインストールしたので、 GRUB の 設定ファイルも自動的に更新されるかも、 ・・と期待して いたのですが、そこまで親切ではないようです。 UNIX MAGAZINE 2005 . 8

2. UNIX MAGAZINE 2005年8月号

連載 / Linux のツールたち 図 14 ドライバを vmxnet に変更 (FC3) [root@fedora3 ~ ] # lsmod ー grep net 30917 0 pcnet32 4673 1 pcnet32 m11 [root@fedora3 ~ ] # /etc/rc . d/init . d/network stop インターフェース ethO を終了中 : ループバックインターフェースを終了中 [root@fedora3 ~ ] # rmmod pcnet32 [root@fedora3 ~ ] # rmmod vmxnet ERROR : Modu1e vmxnet does not exist in /proc/modules Cr00t@fedora3 ~ ] # depmod -a Croot@fedora3 ~ ] # modprobe vmxnet Croot@fedora3 ~ ] # lsmod ー grep net 11140 0 vmxnet Cr00t@fedora3 ~ ] # /etc/rc . d/init . d/network st art ネットワークバラメーターを設定中 : ループバックインターフェイスを呼び込み中 インターフェース eth0 を活性化中 : Croot@fedora3 ~ ] # ロ FC3 でこれを実行すると、図 14 のようになります。 さらに /etc/sysconfig/hardware/hwcfg-bus-pci- 0000 : 00 : 11.0 の 1 行目を以下のように変更します。 SUSE92 の場合も同様で、実行後は pcnet32 の代わり に vmxnet ドライバが使われます。しかし、この方法で MODULE= 'pcnet32 は、ゲスト OS を再起動するともとに戻って (pcnet32 が MODULE= ) vmxnet ' 使われる ) しまいます。 なお、 FC3 の場合は pcnet32 モジュールもロードされ VMwareTools をインストールする際に、カーネル・モ ますが、、、 rmmod pcnet32" で pcnet32 をアンロードし ジュールの成疋ファイルである /etc/modprobe. conf と / てもネットワークカ坏リ用できるので、 vmxnet モジュール etc/modules. conf9 カ艚き換えられますが、どうやらこれ カ駛われていることが分かります。 カ澗題のようです。いろいろと試した結果、それぞれ以下 のように変更すると、再起動後も vmxnet カ陏効になりま 仮想 NIC を vmxnet に変更 0 2 番目の方法では、ゲスト OS のイ反想 NIC 自体を vmx- ・ FC3 の場合 net に変更します。方法は簡単で、ゲスト OS のイ反想マシ /etc/modprobe. conf の 1 行目を以下のように変更し ン構成ファイル (). vmx) をメモ帳などで編集し、以下の 1 ます。 行を書き加えるだけです。 alias eth0 pcnet32 Ethernet0. virtua1Dev vmxne t ー 、 EthernetO" は、 1 番目の仮想 NIC という意味です。 複数のイ反想 NIC がある場合は、 Ethernet1.. Et her- 、のように指定します。 net2. 変更前と変更後の違いは、ゲスト OS で /sbin/lspci コ マンドを実行すると分かります。たとえば、 FC3 で実行す ると、図 15 のようになります。 仮想マシン構成ファイルを書き換えたあとの対処は OS によって異なるので、 FC3 と SUSE92 のそれぞれについ て説明します。 OK OK ↓ ↓ a1ias eth0 vmxnet ・ SUSE92 の場合 /etc/modprobe. conf の 17 行目を以下のように変更 します。 install ethO /bin/true install ethO /sbin/modprobe vmxnet 9 /etc/modules. conf は 2.4 系カーネル用の言定ファイルなので、 2.6 系カーネルを使用する FC3 や SUSE92 では /etc/modprobe. conf か参照されます。 ↓ 168 UN 工 X MAGAZINE 2005 . 8

3. UNIX MAGAZINE 2005年8月号

図 16 ttylinux の言又疋ファイル (/etc/xen/ttylinux) kernel memory name "/boot/vmIinuz—2.6. II—xenU" 'ttylinux" 64 " 192 . 168.0.3 " IP disk [ 'file : /etc/xen/ttylinux "/dev/sdal て 0 " ・ lmg , sdal ントリが表示されているかを確認します。 SUSE の /boot ディレクトリには、 Xen 用のカーネル スは環境に合わせて適切に変更します。 に作成してください。ただし、ドメイン U 用カーネルのパ では、各工ントリの意味はあまり深く考えず、図のとおり 最後に、定ファイル ( 図 16 ) を作成します。この時点 # mv ttylinux—xen /etc/xen/ttylinux. img # bunzip2 ttylinux—xen. bz2 トールします。 入手したら、次のコマンドを実行してファイルをインス ・ http://sourceforge.net/projects/xen ードします。 次に、以下の URL から ttylinux-xen. bz2 をダウンロ ファイルが 1 つしかないので、 40 ルマシンは図 19 -a のようにネットワークに接続されます。 デフォルトの設疋の Xen では、ドメイン U のバーチャ いるはずです。 みましよう。図 16 で設定したアドレスが割り当てられて ンドでネットワーク・インターフェイスの状態を確認して root でログインできます。ログインしたら、 ifconfig コマ ttylinux のシステムにはユーザー名 root 、パスワード 18 のようなメッセージが表示されます。 と実行するとドメイン U 上でゲスト OS か起動し、図 17 ~ # xm create —c ttylinux これで準備カいました いないものを設疋しましよう。 また、 、、 ip" に設疋しているアドレスは、 LAN で使われて す。ですから、図 14 の vmlinuz と同じパスを設疋します。 ドメイン 0 とドメイン U で共用する仕組みになっていま と慌てるかもしれませんが、 SUSE のカーネルファイルは 「あ楸ドメイン U 用のカーネルがないっ」 ゲスト OS からは、同じネットワークに接続されたほかの ホストと直接通信できるので、 ping を実行したり、 telnet でリモートログインしてみましよう (ssh は含まれていま せん ) 。 トワークについて説明します。 次回は、ゲスト OS のインストールと Xen の仮想ネッ 説明しました。 今回は、 Xen の基本的な仕組みとインストールの手順を ☆ もんなんや " と思ってください。 詳しくは次回に説明するので、いまのところは、、こんな 番号です。 マンドで確認できます ) 、〃は同じドメイン U 内での通し カ咐けられます。 :r はドメイン U の ID 番号 (xmlist コ U を起動したときに自動的に作成され、ⅵ f ェ . リという名前 このイ反想ネットワーク・インターフェイスは、ドメイン されます。 ような見れないネットワーク・インターフェイスが表示 ドメイン 0 で ifconfig コマンドを実行すると、図 20 の 構成を作っています。 を図 19 ー b のようにプリッジすることで図 19 -a のような イン 0 側のイ反想インターフェイスと物理インターフェイス た 1 対 1 のネットワークでおこなわれます。そして、ドメ ドメイン U とドメイン 0 間の通信は、仮想的に作られ UNIX MAGAZINE 2005.8 ( しらさき・ひろお IIJ)

4. UNIX MAGAZINE 2005年8月号

へテロな環境の基礎知識〇 6 図 2 プロセスグループとセッション 図 1 RHEL3 のシングルユーザー・モードにおけるプロセス一覧 ? 5 ? 91 / 52 IZ 日 blocks / 臧 ev / 5 bZ : clean, 158 9 / Z6Z1 飛「一 les. ou れ t ーれ local filesystems ・ Enabl ing ー 1 fi lesystem quotas: Enabl i swap space & ト -2 .95 ト物 ps ー 0 「 C STIHE TTY ~ ー 0 PPID IJ ー D 2 : 46 ? B 1 ? root 1 9 : 46 ? root 1 9 92 : 46 ? root : 46 1 9 B2 rOOt 1 B 82 : 46 ? 9 92 : 46 ? 1 1 9 92 : 46 ? r00 土 62 : 46 ? 1 rcn)t 1 92 : 46 ? root Z : 45 ? 1 9 root ? 2 00t 62 : 46 ? 489 1 9 root 1 9 BZ : 46 ? root 481 1 9 92 : 46 ? 46Z root BZ : 46 ttgl Z8 1 3 9 92 : 46 土 t リ 1 929 今 28 r00 土 2 : 47 ttyl 939 929 ′ 00t & 物 -2 . ß5b # ロ TIHE CMD 8B:ßB;B3 init ー ー ke 、宅第 t ] 99 浦 9 : 99 tksoftirqd/BJ 田日 lbdf lushl 8B : 9 : 9 LkswapdJ lkscandl 93 : 96 浦 9 一 ted 1 99 : 96 ー・ r に CO 、宅 r リ ] tkhubd] ー kJO r ” al 鼠 1 eø : 96 ーⅸ jo “ r 1 ] init 【 93 : 99 :eø /binzsh 制御端末 - ヒッシ・ヨン・ - ヒッション リーダー フ。ロセスグループ リーダー シェノレ プロセスグループ 1 プロセスグループ リーダー プロセスグループ リーダー かのすべてのプロセスを起動する。詳細は、次回に予定し ている「プートとシャットダウン」で解説する。 Linux では、 ps コマンドで出力されるプロセス一覧に、 、、 [ ] " でプロセス名が囲まれた keventd ( カーネル内部で発 生するイベントを配信する ) や、 kjournald (ext3 ファイ ルシステムのジャーナル処理をおこなう ) が表示される場 合がある ( 図 1 ) 。これらは、、カーネルスレッド " と呼ばれ 個々のプロセスは 1 つのプロセスグループに属し、各プ るもので、厳密にはプロセスではない。 Linux では、プロ ロセスグループは 1 つのセッションに属している。すべて セスとスレッドがほば同じ仕組みを用いて管理されている のプロセスは、 2 階層にグループ化されているわけである。 ため、カーネルが生成したスレッド 1 がプロセス一覧に表示 プロセスが生成されたときには、親プロセスのプロセスグ されてしまうのである。したがって、生成されるカーネル ループ ( とセッション ) を引き継ぐ。このうち、端末と結 スレッドを調整するにはカーネルの再構築が必要になる。 びつけられるのが、、セッション " である。すなわち、ある 制御端末に関連づけられているすべてのプロセスは同一の プロセスグループとセッション セッションに属することになる ( 図 2 ) 。 例を挙げて説明しよう。ログインシェルは新しいセッシ ューザープロセスとサービスプロセス (UNIX ではデー ョンを作成してセッション・リーダーとなり、コマンドが モン (daemon) と呼ぶ ) の相違を示すために、プロセスを 実行されるたびに新しいプロセスグループを生成する。パ 制御する仕組みである、、プロセスグループ " と、、セッショ イプを使用する場合など、 1 つのコマンドラインで生成さ ン " について説明しよう。 UNIX では、伝統的に tty ( 文 れるプロセスは 1 っとはかぎらないので、セッション・グ 子緬末 ) からログインし、シェルのコマンドラインでコマ ループに複数のプロセスカ嘱することもある ( パイプの場 ンドを入力することで各種のプロセスを起動するという考 合は、いすれかのコマンド ( 通常はう頁のコマンド ) がプロ え方が基本となっている。そのため、各プロセスは、、どの セスグループのリーダーになる ) 。なお、プロセスがどのプ 端末から起動されたか " を示す、、制御端末 " という情報を保 ロセスグループに属しているかは、カーネル内のプロセス 持しており、端末操作 ( セッション ) カ院了したときなど 管理情報や、プロセスグループを生成したシェルの内部に に、関連するプロセスにそれを通知する仕組みがある。 ps イ尉寺されているが、コマンドで一覧表示することはできな コマンドによるプロセス一覧のうち、、、 TTY " フィールド い。一方、 1 つの端末装置か馥数のセッションに結びつけ に表示される端末デバイス名 (ttY* や ptS* など ) が、そ られることはないので、 ps コマンドの一 t オプションで制 のプロセスの制御端末である。 御端末を指定すれば、特定のセッションに属するプロセス 1 一ヨ殳には、カーネル・モジュールカリト同期処理をおこなうために生成するこ の一覧カ等られる。 とが多い。 プロセスグループ 2 プロセスグループ 3 77 UNIX MAGAZINE 2005.8

5. UNIX MAGAZINE 2005年8月号

連載 / Perl 活用のヒント リスト 7 reg-wperl.reg リスト 6 reg-dotwperl.reg Windows Registry Editor Version 5.00 Windows Registry Editor Version 5 . 00 CHKEY_CLASSES_ROOT*. wperl] CHKEY_CLASSES_ROOT*WPer1] @="WPer1" CHKEY_CLASSES_ROOT*WPer1*Defau1tIcon] [HKEY_CLASSES_ROOT*. wper1*PersistentHand1er] @="C:**Per1**bin%*wper1. exe,0" = " { 5e941d80 ー bf96 ー llcd ー b579 ー 08002b30bfeb } ” [HKEY_CLASSES_ROOT*WPer1*she11] Perl をインストールしても wperl.exe に結びついた拡張 [HKEY_CLASSES_ROOT*WPer1*she11*Open] 子は登録されない。そこで、まず wperl.exe に結びついた [HKEY_CLASSES_ROOT*WPer1*sheII*Open*command] 拡張子を登録しよう。この連載ではそのような拡張子とし 9="判℃ :#PerI*%bin#wper1. exe*" 半 " % 1 \ " % * " て . plw を使ってきたが、 . plw は別の目的に用いられるこ リスト 8 drag-n-drop-demo. wperl ともあるので、今後は . wperl を使うことにする。 . pl に結 # !perl —w use StriCt; びつけられているプログラムを perl.exe から wperl. exe use Win32 : : OLE; my $sh = Win32 : : OLE->new("WScript . She11") ; に変更する方法も考えられるが、そうしないほうが安全だ $sh—>Popup(j0in("*n" , @ARGV) ) ; ろう。 ActivePerl では以前から . pl を perl. exe に結びつ 図 14 ショートファイル名が表示された けており、それに対する依存性がどこかにあるかもしれな いからである。 O.*tÜ3LIME 、 1鞆im破u¥MY以:C工1¥20簡勵6¥PERト『1¥AR3SーD為 . PLS 0 ¥以 ) ) UME 、 1 面ぅ¥ MYCE ℃ U -1 ¥ 2 〔目¥ 06 ¥ PER ト「 1 肥日 0 可 . wperl と wperl.exe を結びつける際は、 . pl と perl. exe の結びつきを参考にするとよいだろう。レジストリの HK- ると、 . bat ファイルで使われている、、 { 86C86720 ー 42A0- CR*. pl キーの既定の値は、、 Perl" で、 HKCR*Perl キ 1069 ー A2E8 ー 08002B30309D } " を用いればよいとの指摘 ーに perl.exe との結びつきが登録されている。そこで、 があった。ためしにこの値を登録してみよう。いうまでも HKCR*. wperl の既定の値を WPerl にして、 HKCR* なく、登録をおこなう際はこの値を手作業で入力するので WPerl キーに wperl. exe との結びつきを登録する。 はなく、 HKCR*batfile*SheIIEx*DropHandler の規 実際の操作としては、 HKCR*. pl キーと HKCR*Perl 定の値をコピー & ペーストするべきである。 キーの内容を工クスポートし、ワードバッドなどで変更し この作業が終ったら、リスト 8 を drag-n-drop-demo. たうえでインポートするのがよいだろう。 regedit コマン wperl という名前で保存し、そこにファイルをドラッグ & ドがェクスポートしたファイルは 1 文字が 2 バイトの U ⅲー ドロップしてみよう。 2 つのファイルをドラッグ & ドロッ code 、つまり UCS2 形式になっている。メモ帳やワード プした結果、図 14 のウインドウが表示された。 2 つのフ パッドでは問題なく扱えるが、エデイタ・ソフトウェアに ァイルのパスがプログラムに渡されているものの、パスの よってはうまく開けないかもしれない。 各要素を必要に応じて、、 8 文字 .3 文字 " 形式に縮めた、、シ 具体的には、 HKCR*. wperl の内容がリスト 6 、 HKCR ョートファイル名 " になっている。ショートファイル名で ¥ WPerl の内容がリスト 7 のようになる。これらのファ もファイルの読込みに支障はない。ただし、ファイルの内 イルは、冒頭に示した Web ページからダウンロードでき 容を変換し、もとのファイルの名前を使った別のファイル るようにしておくので、入手してダブルクリックすればレ に出力する場合などには困るだろう。 ジストリを簡単に登録できるだろう。 それでは、 HKCR*WPerl*ShellEx*DropHandler *. wperl へのドラッグ & ドロップを可能にする に HKCR*VBSFile*ShellEx*DropHandler と同じ 値を設定したらどうだろうか。この値は、さきほども触 *. wperl のファイルは、このままではドラッグ & ドロ ップを受け付けない。これは、 HKCR*WPerl*ShellEx れたとおり、、 SheII Extension For Windows Script H 。 st " となっているが、 WSH 以外にも使えるかもしれな *DropHandler がないからである。 DropHandler には どんな値を登録すべきだろうか。インターネットで検索す い。なぜなら、そのドロッブハンドラは、 SheII*Open* Windows コ・ i HO 130 UNIX MAGAZINE 2005 . 8

6. UNIX MAGAZINE 2005年8月号

図 1 テパッガの重加乍 (a) ローカルホスト上でのテパッグ ( ネイテイプ・テパッガを利用 ) ターゲット・コンピュータ テパッガを操作 テ、 / ヾッカ プログラムを制御 対象プログラム RPU -100 では、このような普通のテパッガと同様の使い方も可能 図 2 ヘッダとライブラリ Ca1pha] % cd /usr/local/speecys Ca1pha] % 1s ー 1 ↓ディレクトリ名に含まれる数字はバ ージョン番号 tota1 8 lrwxr— 1 whe e 1 11 Mar 1 15 : 32 include ー > inc1ude1005 root drwxr 2 wheel 512 Jan 28 01 : 01 inc1ude1000 root —x 2 wheel 512 Jan 29 16 : 02 inc1ude1001 2 wheel 512 Feb 25 16 : 55 inc1ude1004 drwxr—xr root drwxr x 2 wheel 512 Mar 1 15 : 35 inc1ude1005 root lrwxr 1 wheel 7 Mar 1 15 : 32 lib ー > 1ib1005 root —x 2 512 Jan 28 wheel 01 : 03 1ib1000 2 512 Jan 28 01 : 04 1ib1001 wheel て 00t —x 2 whe e 1 512 Feb 25 16 : 53 1ib1004 —x 2 512 Mar wheel 1 15 : 34 1ib1005 Ca1pha] % ムカ E 常に動かないこともあるようだ。 開発キットといっても、基本的には C 言語用のヘッダフ ァイルとライプラリ・ルーチンだけである ( 図 2 ) 。ヘッダ ファイルでは、 RS485 をはじめとするさまざまな機能のた めの定数、各種ライプラリ関数が定義されている。 関数自体もさほど数があるわけではなく、かなりシンプ よいし、もちろん紙に E 卩刷することもできる ) 。とはいって ルな開発キットである。 C 言語のソースファイルでヘッダ も、 Windows 環境とは異なり、大量のファイルが含まれ ファイルをインクルードし、適当なライプラリ関数を呼び ているわけではない。最初は CD-ROM ( 写真 1 ) で受け 出せば、ロポットの各部を簡単に操作できる。私が使って 取ったが、以後のバージョンアップ版はメールで送っても いるレベル 2 の開発キットでは、サーポやセンサー、カメ らっている。ユーザー向けの Web ページ ( ユーザー・ア ラ、 LED などを操作するためのライプラリ関数を用いて、 カウントがないとアクセスできない ) もあり、参考情報な C 言言吾のプログラムカ乍れるようになっている。 どカ甘曷載されている。 開発キットには、このほかにマニュアル、サーボやセン サーの資料などが含まれている ( ドキュメントは、基本的 ライプラリとヘッダファイルは圧縮アーカイプ形式で提 に PDF 形式のファイルである。オンラインで参照しても 供されるので、開発用マシン上で展開して適当なディレク (b) クロス開発時のテパッグ ( リモートデバッガを利用 ) ホスト・コンピュータ ターゲット・コンピュータ te 旧 et などでアクセスし、 対話的に使用 シェ丿レ ユーザーの指示 シェ丿レ 対象プログラム OS のないプロセッサの場合 プログラムを制御 0 の ッ キ レ」 の 付 ロ tJ な ター、守ノ″、 K - 、・叱′い羅・い、い 0.0 154 UNIX MAGAZ 工 NE 2005.8

7. UNIX MAGAZINE 2005年8月号

ワークステーションのおとーー 図 2 加寺に表示される警告 201 WARNING: bge0 : 5701-based subsystem 'pci103c, 128a ' not supported bgeO: BCM579x driver vO .44 : type "ether" mac address 00 : 03 :ba: 12 : c3:4d うなのに認識されなかったカードの場合、同様なことをす れは動く可能性カ皜いと考えられます。 それでは、この ID はどのようにして取得すればいいの でしようか。手近に L ⅲ ux マシンがあれば、カードを装着 してから lspci コマンドを実行してみれば分かります。あ るいは、 Windows XP か勠いているマシンでも確認でき ます。 Windows のデバイス・マネージャーで、そのデバ イスのプロバティを選び、、、詳細 " タブを開きます。ドロッ プダウン・リストで、、デバイスインスタンス ID" を選ぶと、 次のように表示されるはずです。 PCIWEN_14e4&DEV_1645&SUBSYS_103c128a& ・・ 謎めいた文字が並んでいますが、これらのうち、 VEN- と DEV ーに続いて書かれている値を /etc/driver-alias フ ァイルに言杢します。 さて、これで大丈夫かというと、すこし気になる点があ りました。起動時に、図 2 のようなメッセージカ俵示され るのです。 しかし、この問題は簡単に解決できました。 4 月号で触 れた /platform/sun4u/kernel/drv/bge. conf ファイル の bge-known-subsystems に、図 2 のメッセージにある 、、 103C128a " という数値を追加するだけです。 これは、次のように言当すればよいでしよう ( 下線部を /opt/sfw/bin/sudo に注意 ふだん、私はシステムの設疋作業をおこなうときに sudo コマンドを利用しているので、 Solaris 10 でも使えるよう にしましよう。 Solaris 10 の Companion CD をインストールすれ ば、 sudo はすでに入っているはすです。ただし、利用する には、 /opt/sfw/etc/sudoers で設疋をおこなう必要があ ります。 さて、定を終えて実行してみると・・ $ /opt/sfw/bin/sudo sudo : must be setuid root 「あれ ? 」 ちょっと変です。 / 叩 t/sfw/bin/sudo の権限を調べる と、 $ cd /opt/sfw/bin $ ls ー 1 . /sudo —x——x——x 1 root sudO となっています。なぜかは分かりませんが、 setuid ビット カ第又疋されていません。そこで、 追加 ) 。 bge—known—subsystems $ su # cd /opt/sfw/bin # chmod u + s . /sudo # 1s ー 1 sudo —S——X——X 1 root # exit $ /opt/sfw/bin/sudo Password : root sudo 0X108e1647 , 0X108e1648 , 0X1028865d , 0X0e11005a , 0X103C12bC , 0X103C128a ; この、 103C128a " は、 Windows のデノヾイス・マネージ ャーで表示させたとき、、、 SUBSYS ー " の次に表示されてい たものと同じです。 ここで紹介した方法は、 bge ドライバ以外にも応用でき るかもしれません。正常に動いているカードと同じチップ を使っているのに、認識されないものがあったら、試して みてはどうでしようか。 UNIX MAGAZINE 2005.8 としたら、 ( 当り前ですが ) 使えるようになりました。 その後、マニュアルやいくつかの Web サイトで調べた ところでは、セキュリティに注意する必要があるため、初 期た態では sudo の実行ファイルに setuid ビットを設疋 していないようです。 ( さかした・しゅう Acutus Software) 145

8. UNIX MAGAZINE 2005年8月号

図 18 ttylinux のブートメッセージ ( 2 ) ( 図 17 から続く ) Freeing unused kernel memory: 112k freed kjournald starting. Commit interval 5 seconds ttylinux 4.2 by Pasca1 Schmidt く der. eremit@email . de> root@tiny ~ # ifconfig ethO Chop wood, carry water . tiny. 10Ca1 login: root Linux 2 . 6 . 11. 10—xenU 0 Ⅱ i686 arch ttylinux 4.2 Starting inetd : Mounting sysfs : Mounting proc : done done done eth0 Link encap :Ethernet HWaddr AA:OO : 00 : 07 : 01 : FB inet addr : 192. 168.0.3 Bcast : 192. 168 . 0 . 255 Mask : 255 . 255 . 255 . 0 UP BROADCAST RUNNING MULTICAST MTU : 1500 Metric : 1 ( 0 . 0 B) TX bytes : 0 (0 . 0 B) : 0 txqueuelen: 1000 TX packets : 0 errors : 0 dropped: 0 overruns : 0 carrier: 0 RX packets : 0 errors : 0 dropped: 0 overruns : 0 frame : 0 RX bytes : 0 collisions 図 19 Xen によるネットワーク ( a ) 論理的には物理ネットワークに接続されている LA N eth0 ドメイン 0 ホスト 192.168.0.0 / 24 (ttyli n ux) ドメイン U eth0 ( b ) 実際にはブリッジ接続されている LA N eth0 xen-brO ドメイン 0 vifl .0 eth0 図 20 ドメイン 0 に作られるイ反想ネットワーク・インターフェイス # ifconfig vifl . 0 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF RX bytes:322 ( 322 . 0 b) TX bytes:17390 ( 16 . 9 KiB) collisio s : 0 txqueueIen:O TX packets : 125 errors : 0 dropped: 20 overruns : 0 carrier: 0 RX packets : 5 errors : 0 dropped:O overruns : 0 frame : 0 UP BROADCAST RUNNING MULTICAST MTU: 1500 Metric : 1 42 192.168.0.0 / 24 UNIX MAGAZINE 2005.8 (ttylin ux) ドメイン U

9. UNIX MAGAZINE 2005年8月号

図 7 デモ CD の GRUB メニュー 図 8 /etc/X11/XF86Config-4 の変更 Section "Monitor" GNU 6 盟田 X--Rind0NS X—wind0RS, Text 0 れ一リ vers ー 0 れ 6.95 ( 638R / 4 ? 3924R upper H 田和「リ ) を 5 ー 2 M B ト協 c h い ) ” 0 RGP ( 512HB M : ⅱ s ) ( 256HB machines) ldentifier HorizSync VertRefresh EndSection "Monitor() " 1 ー 10000 1 ー 10000 Use 村旧↑れれ keys を 0 Press enter to boot the CO 准 s before b00 をⅱ , The ーⅱ 9 い ght を d entry “ロー select Hhich 0 第 tr リ is highlighted. se ーをじー e OS, 'e' を 0 日 d ーを the or 'c• for 秘 CO , 物れーー ine. もも 00 ま e はれⅡを 0 日 t ー c れ一一リ in 9 seconds. Section Subsection 'tDispIay" ←追加 ←追加 ←追加 デモ CD で Xen を試す Xen の公式サイトには、ためしに Xen を使ってみたい 人のためにデモ CD ( のイメージファイル ) が用意されて います。このデモ CD から xen をプートすると、メモリ 上にファイルシステムを作成してファイルを展開するので、 ノ、一ドディスクには何も書き込みません。そのため、既存 の PC 環境をいっさい変更せずに Xen を起動することが できます。 まずは、これを使って Xen を体験してみましよう。た だし、 PC のメモリは最低でも 256MB 以上、できれば 512MB は必要なので、どんな PC でもよいというわけで はありません。 デモ CD をダウンロードするには、以下の Web ペー ジにある、、 xendemo ー 2.0.6. iso " へのリンクをクリックし ます。 ・ http://www.cl.cam.ac.uk/Research/SRG/ netos/xen/downloads. html ダウンロードしたファイルは ISO 形式なので、そのま ま CD ー R に書き込むことができます。 VMware を使っているのなら、入手した ISO ファイル を仮想 CD-ROM ドライプに入れれば、 CD-R を作る手 間が省けます。 きを選ぶかどうかは、ホスト PC の構成に合わせて決めて windows" を選択しましよう。 no AGP" オプション付 メモリが 512MB 以上ある場合は、メニューから、、 X ー されます。 を入れると、図 7 のような GRUB のメニュー画面が表示 デモ CD を CD-ROM ドライプに挿入し、 PC の電源 32 ください。 Depth Modes EndSection EndSubsection 16 " 1280X1024 " 一方、メモリが 512MB 未満だったり、テキストモード でのデモを見たいときは、、、 Text only" を選択します。 X-windows モードでのテモ X-windows" を選択した場合は、 xdm のログイン・ウ インドウが表示されたところで、ユーザー名とパスワード の両方に、、 root" を入力してログインします。 UNIX MAGAZ 工 NE 2005 . 8 start-debian. sh ・ Debian GNU/Linux 3.1 ( カーネル 2.6.11 ) クリプトが含まれています。 デモ CD には、下記のゲスト OS を起動するシェル・ス う。わくわくどきどきの瞬間です。 それでは、 Xen のバーチャルマシンを起動してみましょ # /etc/init . d/xdm restart たサイズでウインドウか再表示されます。 す。すると、 X サーバーのプロセスか再起動して、指定し ファイルの編集が終ったら、以下のコマンドを実行しま いるシステムに合わせて変更してください。 Depth に合った位置に追加します。また、サイズは使って 編集します。ただし、 Modes のエントリはホスト OS の す。そこで、 /etc/X11/XF86Config-4 を図 8 のように 設定に不備があるのか、 640X480 で表示されてしまいま を自由に言定することができます。しかし、デフォルトの ドライバがロードされるので、仮想ディスプレイのサイズ VMware を使用している場合も、自動的に VMware 用

10. UNIX MAGAZINE 2005年8月号

連載 / Linux のツールたち 166 ューム時に /etc/init. d/network restart" を実行します。 6 デフォルトでは、サスペント畤に、 /etc/init. d/network stop" 、レジ てインストールされます。 5 旧バージョンと犲兼のものも、 /usr/bin/vmware-toolbox-old とし 行するようです 6 。 About は、 VMware Tools のバージ と、 /etc/vmware-tools に置かれているスクリプトを実 御するためのタブで、、、 Use Script" をチェックしておく サスペンド / レジュームの際に実行されるスクリプトを制 されました。 Scripts は、ゲスト OS の起動 / 停止および でと同じですが、、、 Scripts" タブと、、 About" タブが追加 ち、、 Options Devices" Shrink" の各タブはこれま vmware-toolbox も新しくなっています 5 。図 12 のう VMware5 の VMware Tools では、図 12 のように vmware—toolbox きないはずです。 ージに含まれているので、 SUSE92 のようなトラカレは起 さい。 FC3 のほうは、必要なファイルがカーネルのパッケ バージョンと同じなので、 2005 年 5 月号を参照してくだ コンパイルできないことがあります。この場合の対処は旧 ware Tools のファイル共有モジュール (vmhgfs) などが と、カーネルのヘッダファイルがないという理由で VM- ただし、 SUSE92 でカーネルをアップデートしている せる必要はありません。 ットアップ・スクリプトを修正して X の設疋をスキップさ 行後に X か起動しないというトラブルは起きないので、セ に対応しています。旧バージョンのように、スクリプト実 が、 VMware5 に付属のセットアップ・スクリプトは X. org また、セットアップ・スクリプトを実行すると分かります 的にはリターンキーを押してデフォルト値を選ぶだけです。 pl を実行します。実行中にいくつか質問されますが、基本 トアップ・スクリプト /usr/bin/vmware-config-tOOlS. 次に、旧バージョンと同様に、 VMware Tools のセッ を実行してパッケージをインストールします。 rpm —Uvh VMwareT001s-5.0.0 ー 13124. i386. rpm SUSE92 では RPM パッケージのほうが管理が楽なので、 従来の *. tar. gz 形式のアーカイプもありますが、 FC3 や [root@fedora3 ~ ] # ロ VMwareT001s—5.0.0 ー 13124. tar. gz VMwareT001s—5.0.0 ー 13124. i386 . rpm Croot@fedora3 ~ ] # IS /media/cdrom 図 12 vmware-toolbox Options Dwices Sgipt9 Shrink A 破 VMware T ( メ引、 prop にⅲに、 S 朝可 Event Suspend Guest Operating System 曰 Use Script Help 象 Nmv Close ョン情報などが表示されるだけです。 なお、旧バージョンの VMware Tools は、 vmware- toolbox を実行しなくてもゲスト OS の時刻をホスト OS に合わせてくれましたが、 VMware5 に付属の VMware Tools では、マウスによるフォーカスの自動切替えも有効 になります ( ゲスト OS が Linux の場合、これカ駛える のは X を使用しているときだけです ) 。したがって、イ反想 CD ドライプの接続 / 切断を vmware-toolbox で制御し ないのなら、通常は vmware-toolbox を起動する必要は なさそうです。 共有フォルダ VMware TooIs には、ホスト OS のフォルダをゲスト OS と共有する機能があります。 2005 年 5 月号で触れた ように、旧バージョンでは、 FC3 と SUSE92 のいずれで もファイル共有機能がうまく働かない不具合がありました。 VMware5 に付属の VMware Tools ではこの問題が解 消され、共有フォルダにあるファイルの読み書きも問題な くおこなえます。 また、ゲスト OS (FC3 と SUSE92) の文字コードをデ フォルトの UTF-8 に言定 (LANG=ja_JP. UTF-8) して おくと、日本語を含むファイル名も正しく扱えるようにな ります。たとえば、ホスト OS (Windows) で作成したフ ァイルに日本語を含む名前を付けても、ゲスト OS (FC3 の NautiIus や SUSE92 の Konqueror など ) 上で正し く表示されます。これとは逆に、ゲスト OS で作成した日 本語ファイル名もホスト OS で正しく表示されます。 ただし、私のように文字コードを日本語 EUC に言し ている場合 (LANG=ja-JP. eucJP) は、残念ながら文字 UNIX MAGAZINE 2005.8