図 2 、 Vindows Time の言聢ウインドウ 全般恒グわー回復は存関叫 サービス名 : 物 32T 派 0W3 Time コンビュータのクロを験定します。 実行ファイ効バス ( 印 : e.*MNNf*Syste ”焦 8 スタートアップの 種頡 0 サービスの状態・問始 ( ローカルコンビュダな 0W3 Tltne のプロバティ ここでサービスを問するときに適用すを始パラメータを指定してください。 OK コントロールノヾネルの、、管理ツール " から、、、サービ ス・設定パネルを呼び出します。このパネルは Win- dows 2000 で実行される各種サービスを管理するため のもので、このなかの Windows Time" と書かれた 項目をマウスでダフルクリックします。すると、図 2 の ような設定ウインドウカ覡れます。いくつか項目が並 んでいますが、いままでとくに設定したことがなけれ は、、、スタートアッフ。の不 fi" の値は、、手動 " 、、、サー ビスの状態 " の値は、、停止 " になっているはすです。前 者を、、自動 " にすると、 Windows 2000 の起重加に自 重加勺に Windows Time サービスカ鯛始されます ( す なわち、指定した NTP サーバーと通信して時刻の同 期がおこなわれます ) 。また、再起動せすにサーピスを 開始したければ、 [ 開始 ] ボタンをクリックします。 以で設定は終りです。 利用できる NTP サーバーが分からない場合は、ネット ワークの管理者に間い合わせてください。また、インター ネット上で公開されている NTP サーバーの情報について は、 NSPublic NTP Time Servers" の Web サイト 5 な [ 参考文献 ] どをご覧ください。 UNIX MAGAZINE 2001.7 5 http://www.eecis.udel.edu/-mills/ntp/servers.html ZINE 、 2001 年 2 月号 [ 1 ] 大江将史「 VMware で UNIX ( 2 ) 」、 UNIX MAGA- SC 翡 たのしい LJNIX IJN Ⅸへの招待 坂本文著本体 L845 円 LJNIX をっと″たのしく学べる入門書 QJNIX 載当初から好評の QJNIX への招待」 を単行本化。 UN Ⅸの根底にある文化や流儀をまじえつつ再構成、 大幅加筆。ワークステーションの急速な普及によって UNIX の習 得が急務と言われ見在、まさに必言 ) 1 冊。 続・たのしい IJN Ⅸ シェルへの招待 坂本文著本体し 845 円 「 LJN Ⅸへの招待」単行本第 2 弾 シェルは UNIX の世界のいわば「裏方さん」。その動きや仕組みを 知れば、 UNIX がいっそう楽しく、便利にイ - るようになる。本書は、ひ ろく使われている C シェルを中・じに、シェルの使い方から仕組みまて、 を分かりやすく解譓前巻とともに入門者必携の 1 冊。 ハッピー・ネットワーキング 新入生のためのインターネット入門 山本和彦著本体し 456 円 豊富な実例で学ぶインターネット 世界各地の二百数十万台ものコンピュータを結ぶ巨大なネットワー ク、インターネット。利用て、きる竟にありながら使い方が分からずに 躊躇している人たちを対象に、 UNIX 上の Emacs を使ったメール やニュースの読み書き、ファイルのイ士組みなど 文書里システム ATEX ラ・テック レスリー・ランポート著、エドガー・クック、倉沢良一監訳、大疆治、小暮博道、藤浦はる美訳本体 2. 引 8 円 使いやすさと豊富な機能を備えたマクロ・バッケージ い X は、もっとも進歩した糸目版システムといわれる X の実用性 をさらに高め、使いやすくしたマクロ・パッケージ。これを利用すれば、 複ょ数式すらユーザー自身の手て、自在にレイアウトて、きる。開発 者の手による見書の決定版。 SLJN システム里 下山智明、城谷洋司共著本体 6.796 円 SunOS 4 ココ (SPARC system 、 Sun3) 文寸応 TFS 、 RFS の機能のほか、マニュアルて、は見つけにくい dump 時 のパラメータやテープの不頁、オートマウントの設定を詳説。さらに ッステムにトラブルが生じた際の対処方法、メモリ UNIX やミニル ートの使い方など、システム管理に必要な情報を満 Life with LJNIX LJN Ⅸを愛するすべての人に ドン・ライプ、サンディ・レスラ共著、坂本文監訳、福夋博訳本体 2. 引 3 円 だれも知らなかった I.JNIX の魅力の世界 UNIX の歴史的背景や社会重加ともに、 UN Ⅸの技術面や市場 面、今後の展望などを幅広く解説。また UNIX 人名辞典、アングラ 情報、名言などの貴重なデータや一風変わった情報を満 UNIX ユーザーに新しいネ f を提供する好読物。 ルート 「 00t から / へのメッセージ 高野豊著本体し 553 円 人とコンビュータを観察するスーバーユーサーの目 日本に UNIX が導入されたばかりの頃、管理者を任された著者の 悪戦苦闘の経験をつづる。著者が、今日まて、めぐりあったさまざまな エピソードを紹介。夋に富む告白談と、飽くなき探求心の物語は、シ ステム管理者に限らず多くのユーザーの共感平ぶだろう。 株式会社アスキー 株式会社アスキー出版営業部電話 ( 03 ) 535 ト田 94 〒 15 ト 8024 東京都渋谷区代々木 4- -10 ※表示価格には消費税は含まれません。 151
表 4 Deskpro ENSF 6350 のおもな仕様 CPU メモリ チップセット HDD CD-ROM グラフィックス オーディオ 拡張スロット I/F Pentium II 350MHz 192MB lntel 440BX AGPset 12GB X 2 24 倍速 ATI RAGE PRO TURBO AGP 2X ( オンポード ) ESS 1869 (Sound Blaster 互換 ) ( オンポード ) PCI x 1 十 PCI/ISA 共用 x 1 シリアノレ X 2 、ノヾラレノレ X 1 、 USB X 2 ネットワーク I/F lntel 82558 - 10B ” e T/ 100Base TX ( オンポード ) 例にとる PC は Compaq Deskpro ENSF 6350 で、 表 4 のような仕様のモデルです ( メモリとハードディスク は、購入後に変更・追加してあります ) 。 UNIX は、 lntel 版 Solaris 8 です。 「 Linux 使うてるのに、それやったら役に立たへんやな し ) か」 という声か聞こえてきそうです。年寄りにふさわしく、説 教くさいことをいわせてもらえば、 UNIX を利用する以 上ハードウェアや UNIX の不鶤頁か変わったくらいて騒 いではいけません。さいわい、その他の UNIX 、たとえ ば Linux や FreeBSD 、もしくは HP-UX などの商用 UNIX でも、 UNIX とハードウェアとの関係はそれほど 大きくは違いません。ですから、、、役に立たへん " という ことはないでしよう。 「ハードウェアって壊れるから嫌い」 という人がいるかもしれません。たしかに ハードウェア の扱いにはルールというかコッといったようなものがあ り、不得手な人はいるでしよう。しかし、ソフトウェア から触っているかぎりは、めったに壊れることはありませ ん ( 糸寸にないとは断言できないのが残念てすが ) 。ですか ら、食わす嫌いはやめて、どんなふうにみえるかといった 程度の知識は頭に入れておきましよう。 ハードウェアが見えるところ UNIX のユーサーがハードウェアに関する情報を目に するのは、どのようなときでしようか。たとえは、 SoIaris UNIX MAGAZINE 2001.7 では prtconf コマンドを実行すると、 ードウェアを制 御するデバイスドライバの様子が表示されます。ただし、 これは SoIaris 独自のコマンドです。 「カーネルの設定画面 ! 」 Linux ではそうです。しかし、 BSD UNIX をもとに した FreeBSD などの OS では、このあたりは違ってい ます。 SoIaris でははは完全に自重川ヒさカーネルの設 定そのものがありません 3 。 どの UNIX でも共通してハードウェアに関係する情報 がみられるのは、 UNIX か起動するときです。画面には 各種のメッセージか表示されます ( 図 7 ) 。 「こんなん、出ーへん」 商用 UNIX の一部には、この種のメッセージが表示さ れないものもあります。しかし、これらのメッセージは重 要な情報なので、表示されなくてもちゃんと言当求されてい ます。 /var/adm ディレクトリの messages というファ イルを見てみましよう ( 図 8 ) 。 そのなかに、日付の清報などとともに、ほは 1 司じ内容が 言求されています。 「そんなファイル、あらへん」 簡単にあきらめてはいけません。 messages. 0 や mes- sages. 1 という名前のファイルはありませんか ? mes- sages ファイルにはカーネルやデーモンからの情報か当求 されるため、放置しておくとどんどん大きくなっていきま す。ファイルが巨大化するといろいろと都合が悪いので、 一定の時間カ釜過すると、その点の messages ファイ ルを messages. 0 という名則に変更し、新たに messages ファイルを作ってそこに言当求するようになっています。す でに messages. 0 というファイルがあれば、そのファイル 名を messages. 1 に変更します。たとえば、言当求するファ イルを 1 日おきに変更するように設定している場合には、 次のようなファイルがあるはすです。 messages 当日 messages. 0 昨日 messages. 1 ー印乍日 3 まったくないわけではなく、 /etc/system というファイルで設定しま す。ただし、通常は言立する必要はありません。 81
特集 UN ー X の基礎知識② のユーサーのホーム・ディレクトリに各種の設定ファイル が自重加勺に作られます ( オプションを指定しないと作成さ れない場合もあります ) 。 このファイルは、ユーサー作成コマンドカ当 E 成するわけ ではなく、どこかにあるディレクトリからコピーされてき ます。このディレクトリは、手許にあるシステムで調べた ところ、 Linux や Solaris では /etc/skel 、 BSD 系の UNIX では /usr/share/skel でした。ただし、システム によって異なる可能性もあるので、正確な場所は useradd や adduser のマニュアルて十ヾてください。 ここにあるテンプレート・ファイルは、システムによっ て、、これやったら、なくても同じゃ " というものから、、 こまて世話焼いたら、自立じ、か育たん " というものまであ ります。いすれにせよそのまま使えるとは思いませんが、 システムに固有の設疋に関するヒントか書かれていること もあるので、すくなくとも 1 回は目をとおしておきましょ う。もちろん、設定ファイルをスクラッチから書くときの 彡としても使えます。 もっとシェルを使おう とも、このくらいは知っていないと困る " という程度のも ページ数が多くなってしまいましたが、内容は、、すくなく について説明しました。シェルの機能はたくさんあるので 今回は、コマンドラインでの bash の基本的な使用法 のにしたつもりです。 シェルは美しいグラフィックで彩られているわけでは なく、操作もキーポード中心で、わけの分からない記号を 使ったり、シェルか返すメッセージもまるで暗号のよう にみえます。そのため、シェルにれないうちは、たんな る、、ほかのプログラムを起動するための小道具 " として利 用しているのではないでしようか。しかし、使っているう ちに、シェルには万能ナイフのようにいろいろなツールが 備わっていることが分かってくるでしよう。シェルを使い こなせるようになると、複数のファイルを処理するときな どの作業効率は確実に上がります。そして、作業がスムー ズに進められるようになると、だんだん UNIX を利用す るのか楽しくなってきます。 こで説明したことをマスターしたら、次はせひマニュ アルを読んでください。 「たっ、こんなこともできるんか ! 」 と驚きの連続は必至で、シェルの世界から足を洗えなくな ってしまうでしよう。 コマンドラインでの操作に慣れたら、シェル・スクリ プトにも挑戦することをお勧めします。いままで、 やるんやったつけな。あ違うがな。こうやったかな。 " と長い時間をかけてやっていた作 あ、これも違った・・ 業をあっという間に、しかも間違いなく終えることができ るようになります。 UN Ⅸからみたハードウェア UNIX システム上で GNOME や KDE などの GUI 、 あるいは bash や tcsh といったコマンドラインからメー ルのやりとりや文書作成、ソフトウェア開発などをしてい ると、 UNIX か力いているハードウェアと妾かかわる作 業をすることはあまりないかもしれません。山も丘は OS の ハードウェア・サポートか充実し、インストール・プログラ ムも使いやすくなってきたため、 PC やワークステーショ ンに新たに UNIX をインストールする際のハードウェア 関連のトラブルも減ってきています。しかし、 UNIX で 80 最新のハードウェア、たとえば Gigabit Ethernet カー ドやビデオキャプチャ・カードなどを利川したり、最新の ノート PC に UNIX をインストールする場合には、ハー ドウェアに関する知ルフゞ必要になってきます。 以下では、 UNIX か動く PC を例にとってハードウェ アについて説明します。ただし、ハードウェアそのものや 取付け方法には触れません。 UNIX というソフトウェア からハードウェアがどのようにみえるのか、というところ を説明していきます。 UNIX MAGAZINE 2001.7
シェルの魔術 森島直人 シェルってとんなもの ? ・丘の UNIX 環上竟での GUI (Graphical User lnter- face) の進化には目を瞠るものがあります。 GNOME や KDE といったデスクトッフ環竟か開発さ Windows のようなツールバーやドラッグ & ドロッフ。がサポートされ るようになりました。ファイルを管理するためのウインド ウには各ファイルを示すアイコンカ並び、マウス窈巣作だ けでファイルを移動したり削除することかできます。デス クトップにはアプリケーションへのショートカット ( ! ) が あり、タフルクリックするだけて起動するという凝りよう Windows 上で VMware を動かし、そのなかで UNIX を利用する人も多くなってきました。ウインドウ・マネー ジャーとして Windows を利用し、 Windows 用の X サ ーバーに VMware 上で重川乍している X クライアントを 貼り付ける、といった使い方をするわけです。 そうすると、 Windows によく似た GUI の UNIX な のか、あるいは Windows から UNIX を使っているのか、 ひと目見ただけでは分かりません。「これって Windows? BSD? 」などと訊いてしまうこともしばしばです。 このような GUI のシェルは、直感的にさまざまな操 作かできるため、初心者にはたいへん分かりやすいものだ と思います。いままで、、難しい " と苟もされていた UNIX 系の OS にも初心者のユーザーか増え、裾野がひろがって いるのもこのあたりに理由があるようです。 しかし、 「このディレクトリにあるファイル、それぞれ最後に ・ orig " を付けた名前のファイルにコピーしたいなあ」 とか、 「これらのファイルのなかにある〇〇という文字列をすべ UNIX MAGAZINE 2001.7 て xx に変更したいんだけど」 というような、すこし凝ったことや複雑なことをしたいと きには、 GUI よりも CUI (Character User lnterface のシェルのほうカイ甦リです。また、上で例に挙げたファイ ルの移動編集も、慣れてしまえばコマンド行からのほう か圧倒的に速く操作できるようになります。 この連載では、いわゆる CUI のシェルについて、、、シ ェルってこういう仕事してんねんシェルってこんな便 利なことできんねんで " ということを解説していきます。 シェル - ってなんだろう 皆さんの手許には、 FreeBSD や NetBSD 、あるいは Linux や Solaris など、いわゆる、、 UNIX" と呼はれる環 境があると思います。 PC やワークステーションの電源を 入これらの UNIX を起動し始めると、さまざまなメッ セージが出力されます。それか終ると、、 1 。 gin : " などのロ グイン・プロンプト 1 か表示されて、ログインするように促 されます。ューサー名を入力すると、次に、、 Password: と表示されます。続いてパスワードを入力すると、図 1 の ようになにやらたくさん文字が表示されるでしよう ( 表示 内容は利用する環竟によって異なります ) 。 一番下の行に注目してください。この例では、 graffiti:&[501]% ■ と表示されていて、ユーザーからの入力を侍っています。 そう、これはシェルのプロンプトなのです。ューザーは こからさまざまなコマンドを入力し、実行できることを 1 このようになんらかの入力を促すような表示のことを、プロンプト " と いいます。 131
特集リ N ー X の基礎知識② れます。イ料去というと、なんだか格式張った感しを受けま シェルは、ユーサーからコマンド入力を受け取り、そ の入力文字列を解釈して UNIX カーネルに命令を発行し、 す。プログラムを実行したあとで「結構なお手前で」とか、 「こちらはどちらの作で ? 」「 GNU でございます」といっ プログラムを起動したり、一日亭止や強制終了などのプロ た受け答えをしなければいけないと思うかもしれませんが セス制御をおこないます。つまり、シェルはユーサーと UNIX カーネルのあいだを仲介しューザーの命令をカー ( そんな人はいない ? ) 、 UNIX の場合はオプションの書き 方や、標準入力と標準出力の使い方のことです。つまり、 ネルに送ったり、カーネルからのメッセージをユーザーに UNIX 上のほかのプログラムと上交したとき、 ( 悪い未 伝えたりします。 で ) 異彩を放っプログラムを書かないための知識を養うと 一方、シェルには変数と変数展開、関数定条件分皮 いうことです。 やレープなどの制御文を処理できる機能があります、たん 山も匠の UNIX では GUI アプリケーションが充実して にコマンドラインでプログラムを実行するだけでなく、複 きたので、 Windows などと同様な使い方をしている人も 雑な処理を実現するプログラム言語としてのインターフェ いるでしよう。もちろん、特定の GUI アプリケーション イスをユーザーに提供します。このような、シェルを用い を利用しておこなう作業が寸イ本ならは、そういった使い方 て実行するプログラムをシェル・スクリプト ( またはシェ をしてもかまいません。しかし、場合によってはコマンド ル・プログラム ) と呼びます。 ラインで操作をせざるをえなかったり、コマンドラインで ところで、なぜ、、シェル ( shell) " と呼はれているので の作業のほうが GUI よりも楽なこともあります。それに しようか。石油会社を思い浮カべる人がいるかもしれませ もかかわらす、「僕はもともと Macintosh のユーザーで んが、まったく関係ありません。シェルは、カーネルと すから」とか、「自宅では Macintosh しか使っていませ ューサーのあいだに位置し、カーネルを覆う、、殻 " である ん」と胸を張り、いつまでもコマンドラインに農れようと ことからこう名付けられたそうです。 しないユーサーも困りものですが・ UNIX の牛致の 1 つは、カーネルとシェルカ材懾造的に 去も丘は Linux や FreeBSD などの PC UNIX か普及 分離されているため、ユーサーが独自のシェルを作った したこともあって、いわゆる、、新人君 " でもコマンドライ り、インストールしたり、自分がデフォルトで使うシェ ン・インターフェイスに慣れている人が多くなってきまし ルを容易に変更できる点にあります。 た。それはそれでいいのですが、たいていは、、僕 (8J0 の そのため、 UNIX では数多くのシェルカ咄発されてき 言算機 " しか知らすに過ごしてきたため、 OS が異なる計 ました。ューサーは、そのなかから好みに合ったものを選 算機でのシェル環竟の設定ガ去が分からす、、、僕 ( 稠の び、用途に応して使い分けることができます。いままでに 算機 " 環竟に閉しこもる傾向カ襁いようです。 作られたシェルを細かく分類すると、おそらく数十不頁に 今回は、代表的なシェルの 1 つである bash を例にと なると思いますが、現在使われているシェルは大きく B り、その基本的な使い方と、複数の OS を使いこなすため シェル ( sh ) 系と C シェル ( csh ) 系の 2 つに分けられま の設定ガ去について説明します。 す。そして、ほとんどのシェルは、既存のシェルになん らかの機能を付け加えたものと考えてよいでしよう。たと えは、 bash は sh を、 tcsh は csh を孑長したものです。 変わったところでは、データベース・サーバーに接続し、 シェルのコマンドライン・インターフェイス上で SQL を 実行できるものもありますが、これも既存のシェルに機能 を追加したものです。 bash とは bash (Bourne-Again SHell) は、 GNU OS の標準シ ェルとして開発されたものです。その名前から孑則できる 一卩 シェルと bash UNIX におけるシェルは、おもに次の 2 つの彳齬リをもっ ています。 ・ OS 上でプログラムを夫行するインターフェイスをユー サーに提供するためのコマンド言語 ・ほかのプログラムを組み合わせて実行し、複雑な処理を 実現するためのプログラム言語 52 UNIX MAGAZINE 2001.7
UNIX Communication Notes 山口英 情報整理の技術 (IO) メールの整理 ラップトッファ C の囃竟移行 らない。竟を移行するときには、この間題にいつも悩ま ケーションをインストールする順番にも注意しなけれはな Windows であろうがかなりの時間をとられるし、アプリ ケーションの再インストールである。 UNIX であろうが ラップトップ PC の引越しで一番厄介なのが、アプリ FreeBSD 3.5.1 十 PAO と Windows 98 を使っていた。 れはおこなえない作業があるからだ。 Tecra 8000 では、 ン資料の作成など、 Windows のアプリケーションでなけ Windows を使う。 PowerPoint によるプレゼンテーショ 必喫に応して別のパーティションにインストールしてある 可欠な基盤ともいえる。通常は UNIX で利用しているが、 出張の多い私にとって、ラップトップ PC は信事に不 えた。 芝の Tecra 8000 から IBM の ThinkPad T21 に取り 前回も述べたが、ふだん使うラップトップ PC を、東 Windows 竟の移行 される。 UNIX MAGAZINE 2001.7 し、 Office 2000 と 2 ~ 3 不鶤頁のツールを再インストール 境の移行は、それまでに蓄積したデータファイルをコピー のいくっかのツールだけである。そのため、 Windows 環 ているのは MS Office を除けば、 Adobe Acrobat など から移行することにした。私の場合、 Windows 上てイ吏っ sional かフ。レインストールされていたので、 Windows 98 新たに購入した T21 には、 Windows 2000 profes- かからなかった。 とはいえ、 Windows については今回はそれほど手間は するだけて完了した。 Windows 上でおこなう作業の大半 は MS Office があれは事足りるので、工竟の移行といっ ても、なすべき作業はそれはど多くはない。 おもに Windows を使っている場合は、データの移は かに相当量のアプリケーションの再インストールが必要になる ので、移行竹業はそれほど簡単ではない。それまて使っていた ツールが、新しい W ⅲ d 。 ws 工竟では利用できないこともある だろう。そうなると、新たなソフトウェアを購入したり、同様 の機能をもつ別のツールを探したりしなけ川まならない。 UNIX 系 OS を選ぶ このように、 W ⅲ d 。 ws の環境移行はさしたる間題もな くぶしに終ったのだが、 UNIX についてはどの OS をイ ンストールしようかと、すいぶん悩んだ。 Tecra 8000 で使っていた FreeBSD 3.5.1 十 PAO は 日常的な仕事に必要十分な能力があり、私としてはまっ たく不満はなかった。そこで、 T21 でも FreeBSD 4.2 を使おうと思っていたが、大きな問題があった。 T21 と FreeBSD 4.2 の組合迂では、音か鴫らないのである。私 は、高校生のころから音楽を聴きながら勉強や仕事をす る、いわゆる、、ながら族 " なので、ラップトップ PC と はいえ音か鴫らないのでは困る。 T21 には、 Cirrus Logic CS4280 というサウンドチッ プか載っている。 FreeBSD 4.2 のリリースノートを読ん だかぎりでは、このチップもサポートされているはすだっ たが、 T21 では何をどうしても音か鷓ってくれない。私 の周辺で T21 を使っている UNIX ューサーたちに訊い たところ、この間題への対処には次の 2 つの尺肢がある と教えてくれた。 91
, 信臼 : 信第信信第第信第信 : 第物信第第信 ( 第 : : ダ : 信み冫第信第信勢等第信第第′霊鬲第第 W : 第島第 ' ・今月の話題から ( 2001 年 5 月 20 日現在 ) Newsgroups: 巧 . unix Subject: Re: コマンドの意味を知るには ? UNIX のコマンドを知りたけれはナツメ社の『実用 UNIX ハンドブック』をお薦めします、という記事に対 する、ナツメ社の本は本文も索引もアルファベット順と いうことが多いし、間違いが多いので人に薦めたことはあ りません、知らないコマンドを調べるときは使えるのかも 、、こんなことがしたい " という目的がある しれませんが、 場合は物足りないでしよう、という意見記事です。 これに対して、 10 年くらい前に MS-DOS 関係の本は よく読んだ、自分が最後にナツメ社の本を買ったのもその ころだが、まったく参考にならなかったので数日で人に あげてしまった、 10 年前もいまもスタイルは変わってい ないようだ、 UNIX のコマンドを調べるのであ川ま、技 術評言の『 UNIX コマンド例文事典』がよい、これに は sh/bash 編と csh/tcsh 編があるので使っているシェ ルに合わせて選べる、コマンドをアルファベット順に並 ペ man の内容をはとんどそのまま載せたような従来型 の事典ではないところに好感がもてる、丘コマンド名で 引く Linux や UNIX 系 OS のマニュアルの類もいろい ろ出ているのに、それらを紹介する人がいないことに危機 感をもつ、といったフォローがきました。 Newsgroups: fj.rec. games. video. home. playstation2, . os.linux Subject: Re: PS2 Linux Kit 販売方法決まる PIayStation 2 (PS2) 用の Linux キットの販売方法 の記事に対する、 PS2 用の Linux キットは受注開始か らわすか 8 分て予約数か完売したそうですが、 2 , 000 台 ぶんしか用意しないのは読みがⅡすぎるのではないでしょ ーうか、という感想記事です。 これに対して、アンケート回答者を優先するなどの措 置をとってほしかった、多くの人がキャンセル待ちをし ているようだ、べータ版の意味が分からない人やプログラ ムを組んだことがない人、 Linux に触ったことすらない 人も申し込んでいるのではないか、 PS2 で Linux が使え るのはそれほど画期的なことなのか、値段や普及台数、リ アルタイム処理、対話的処理、 DSP 、 3 次元グラフィッ クスなどさまざまな点て期的である、たしかに安価でよ いのだろうが、 PC カード接続のハードディスクは遅くて UNIX MAGAZINE 2001.7 使いものにならないのではないか、そう感しるかどうかは 人によって違うだろう、けっきよく PS2 Linux て軻が したいかで評価は変わる、 PC をやめて PS2 に乗り換え るという話ではないので単純にいまの PC と仕様を上交 しても意味がない、もし PS2 で Linux をうまく動かせ れは PC はなくなるかもしれない、 2 , 000 台ぶんしか出 荷しないのは現段階で数を出して利益を上げようとは思っ ていないからではないか、 Microsoft の Xbox との相違 を際立たせようとしているのかもしれない、といったフォ ローがきました。 このあとさらに、追加で 7 , 000 台ぶんが生産されるよ うだ 1 、 Dreamcast でも Linux は動くが、あまり話題 にならないのはやがて消えていくハードウェアだからな のか、といったフォローがきました。 Newsgroups: fj.unix Subject: 他のログインユーザーと通信 UNIX マシンで、、 who " を実行したらほかのユーサー がログインしていたのですが、自分の存在を相手に知ら せる方法はないでしようか、という質間記事です。 これに対して、 write(l) コマンドを使ったらどうか、 はかに mesg(l) や talk(l) コマンドもある、通常は w(l) を使うので wh 。は使っていない、 X11 のアクセス 制限をどうやってくぐり抜けたのか憶えていないが、学 生時代に X11 を使っている人の画面に各種の画像をい きなり表示させるところをよく見た、山も匠は xauth か設 定されているのでこれは難しいだろう・、 su で root にな られたらアクセス制限は役に立たない、アクセス制限を 解除するスクリプトをふだんよく使うコマンド名で作り、 あちこちに仕掛けておけば r 。。 t にならなくてもよい、こ うやって、、 . " を path に入れてはいけないことを憶えて いくのだろう、といったフォローがきました。 Newsgroups: fj.unix. shells Subject: スクリプト亭止 bash スクリプトの実行中にエラーか起きたときに、ス クリプトを止める方法にはどのようなものが考えられる のでしようか、という質問記事です。 これに対して、 bash ( および Bourne シェル、 POSIX sh 、 ash 、 zsh 、 ksh) には—e オプションがあり、スクリ 1 5 月学点 0 助反売ぶんのイ受付川冬ー「しています。 163
連載 / シェルの魔術ー① 図 1 ログイン NetBSD/i386 (graffiti . morishima. net) (ttyEO) login: moley Password : Last login: Tue May 15 08 : 28 : 48 2001 0 Ⅱ ttyE0 Copyright (c) 1996 , 1997 , 1998 , 1999 , 2000 , 2001 The NetBSD foundation, lnc . A11 rights reserved. Copyright (c) 1980 , 1983 , 1986 , 1988 , 1990 , 1991 , 1993 , 1994 The Regents of the University 0f Ca1ifornia. A11 rights reserved. NetBSD 1 .5V (GRAFFITI) # 52 : Sat May 12 18 : 06 : 08 JST 2001 We1come to NetBSD ! graffiti:-[501]% ■ 表しています。 でも、ふだんからなにげなく使っているシェルとはいっ たい何者なのでしようか ? シェルは、殻 さきはど「 UNIX を起動」と書きました。 UNIX では、 システムを起動させるとカーネルと呼はれるプログラムが 動き始めます。カーネルは言算機のメモリやディスク、あ るいは時間などの資源割当てを管理する UNIX の心臓部 です。たとえば、メモリやハードディスクといった資源へ の入出力の管理や、ユーザーから要求された仕事の優頂 図 3 カレント・ディレクトリのファイル 位の決定、ファイルの管理などを担当しています。カーネ graffiti:-C501]% ls —F ルは、このような仕事を UNIX カ鮗了 ( シャットダウン ) test . 1 test . 2 tmp/ bin/ test graffiti : ~ [ 502 ] % ■ するまて休むことなく続けます。 ューサーがエデイタで文章を書こうとしたり、プラウサ います。しかし、シェルはユーサーにイ嶽頁された内容をそ で Web ページを見ようとするときには、カーネルになん のままカーネルに伝えるだけのものではありません。ユー らかの仕事を依頼しています。このとき、カーネルに直接 サーか馥雑なイ嶽頁を簡単にできるよう、さまざまな仕掛け お願いするのではなく、シェルに仲介を頼みます。シェル を用意しています。 はユーサーからの指示に従ってカーネルか理解できる命令 こでは、カレント・ディレクトリに図 3 のようなフ に変換し、カーネルに仕事をイ嶽頁します。 ァイルがあるものとします。最後が / ( スラッシュ ) で このように、シェルにはカーネルをユーザーから直接見 終っているものはディレクトリを表しています。 えないようにし、両者のあいだをとりもっという重要な役 割があります。まさしく、シェル (shell : はカーネル ファイル名の展開 (kernel : 物を包み込んでいるわけです ( 図 2 ) 。 シェルは、ユーザーが入力したコマンドに ~ や * 、 ? など シェルは、、ユーサー・インターフェイス・ の特殊な文字をみつけると、あるルールに従ってファイル ューザーはシェルを通じてカーネルに仕事を依頼しま 名に展開します。これによって、ユーザーはファイルやパ す。つまり、シェルはユーザーにとってカーネルへの窓 スを簡単に指定できます。たとえば、ファイル名にある文 ロ、ユーザー・インターフェイスとしての彳難リをもって 字を含む複数のファイルを一寸舌して指定することかできま シェル ( 殻 ) とカーネル ( 核 ) 図 2 UNIX ンエル ( 殻 ユーザー カーネル ( 核 ) 0 rk/ 132 UNIX MAGAZINE 2001.7
UNiX MAGAZINE CONTENTS 2001 / 7 特集 49 107 連載 99 123 137 144 157 情報系新人のための UNI starting Up IPv6 ・ シェルの活用、ハードウェアの基礎 N し A アドレスを使った 6bone 接続 UNIX Communication Notes ・・・・・・山口英 情報整理の技術 ( 1 0 ) 江将史 新連載 シェルの魔術・・・・・・森島直人 JSP ヘージの作成 JavaServer Pages ・・・・・・荒井美千子 レイヤ 3 スイッチ Summ の基本設定 ( 3 ) 新・倉敷芸術科学大学のネットワーク構築・・・・・小林和真 ・・・山口英、白崎博生、坂下秀 シェルってとんなもの ? プログラミング・テクニック・ し AN 上のシステム情報の取得 UN Ⅸ便利帖・・・・・・宮下健輔 MP3 ストリーミング Let's PIay with UNIX ・ デジタルカメラ ( 2 ) ・・多治見寿和 " 四本淑三 COVER, CONTENTS DESIGN ・ MORIYA, KAZUO (AUDREYTHE DESIGN)
特集リ N ー X の基礎知識② ジョブ掏 UNIX では、シェルの実装によってユーサーに素晴ら しい環境か提供されるようになった。現在では、多くの もう 1 つの優れた機構は、ジョブ制御 (job control) UNIX ューザーはシェルの存在を当然のように考えてい である。たとえば、あるプログラムを実行しながら、別の るだろうが、このような環境は以下に述べる傑出した欟冓 プログラムを実行したいことがある。この場合、 によって実現されている。 $ program & 入出力え方 とすると、 program はバックグラウンドて下力する。さ プログラムに割り当てられる入出力をどう設定するか らに、 BSD 系 UNIX では、簡単な操作でプログラムの は、たいへん難しい問題を含んでいる。たとえは、起動さ 実行を一時中断したり、フォアグラウンドで動かしたり、 せるプログラムにすべてを細かく記述してしまうと、テンヾ バックグラウンドに回すことができる。 fg 、 bg 、 jobs の イスの構成が異なるシステムて使うたびに修正しなけれは 各コマンドは、それぞれ次のような機能をもっている。 ならない。 そこで、標準入出力 (stdio : standard I/O) という考 ・バックグラウンドで動いていたプログラムをフォアグラ え方が生まれた。 UNIX では、標準入力 (stdin) 、標準 ウンドに戻す。 出力 (stdout) 、標準ェラー出力 (stderr) が用意され、デ ー印亭止していたプログラムをバックグラウンドで動か フォルトでは入力はキーポード、 2 つの出力は端末画面に す。 割り当てられる。プログラム側では、標準入出力用のライ ・フォアグラウンド、バックグラウンドて夫行中のプログ プラリを用いて乍を記すれは、面倒な入出力処理を記 ラムの一纜を表示する。 述しなくてもよい。 さらに、シェルでは入出力のリダイレクション (redi- フォアグラウンドで実行中のプログラムは、 Ctrl-Z を rection) という機能を用いてファイルやデバイスへの入 入力してヨ舸亭止状態にすることかできる 1 。 出力を指定できる。たとえば、 シェル・プロクラミンク $ program > /usr/home/suguru/dataout とすれば、 program の夫行結果が /usr/home/suguru/ このようなシェルの機能を用いてプログラムを作ること dataout ファイルに出力される。入力についても同様で、 もできる。シェルは基本的にコマンド・インタープリタだ から、通常は入力をキーポードから得るが、もちろんファ $ program く /usr/home/suguru/datain イルからも渡せる。これを利用すれば、ファイルに一一漣の とすれは、ファイルからデータを読み込むことができる。 処理を記述しておき、これをまとめてシェルに処理させる この標準入出力とリダイレクションの機能により、プログ ことかできる。つまり、日常的におこなうイ / ド業や、複数の ラムを書くときの手間を大幅に減らせるようになった。 プログラムを用いた一里の処理をシェル・プログラムとし パイプ て言当しておけばよいのである。 UNIX には、複数のプログラムを順番に実行し、それ シェルには、シェル・プログラムの作成を甘是としたさ ぞれの出力を入力として渡す仕組みがある。たとえは、 まざまな制御曜冓文が用意されている。そのため、たとえは $ progA ー progB ー progC for 文や while 文などを用いた系区しの構造も容易に滝見 できる。すなわち、シェル・プログラムでは本格的な処理 とすると、 progA の実行結果を progB に渡し、さらに カ藕単におこなえるのである。シェル・プログラミングの その出力を progC に渡すことができる。この、、「でフ 龕力を身にければ、 0 、、、をより 0 、そう便利 0 = 使え ログラムの入出力をつなぐイ督はみが、、パイプ (pipe)" であ るようになる。 る。パイプの導入により、 UNIX では単饑能ではあって も実装に優れたコマンドを数多く用意し、それらをつない 1 デフォルトでは、プロセスを - ー - 印亭」 E するキー入力は Ctrl-Z になって で多彩な処理をおこなえるようになった。 いるが、セットアップで変更することもできる。 50 UNIX MAGAZINE 2001.7