連載 /UNIX Communcation Notes—⑩ 表 1 waisindex がサポートするファイルタイプ タイプ text bibtex bio dash dv i emacsinfo first_line filename gif 1 て g 」 argon mail—digest mail ftp cmapp nhyp rmai 1 medline mh_bboard netnews one_line para pict PS refer server tiff 意味 通常のテキストファイル BibTVfX ファイル biology abstract フォーマット ファイルの内容がダッシュ列で区切られ ているようなファイル dvi ファイル GNU Emacs lnfo ファイル ファイルの頁の行をタイトルに使う ファイル名をその文書のタイトルに使う GIF ファイル lnternet Resource Guide フォーマット Jargon File 2.9.8 フォーマット lnternet Mail Digest フォーマット メール (UNIXMail) フォーマット・ファ イル MedIine フォーマットのファイル MH での bboard フォーマット USENET news の記事 各行が 1 つのドキュメントを構成するよ うなファイル 各パラグラフが空行で分かれているような テキストファイル PICT ファイル ( ファイル名だけがイン デックス化される ) PostScript ファイノレ refer ファイル ニュースリーダーてⅡで保存された USE ー NET の記事 WAIS での Directory-of-Servers の記 述に使われるフォーマット TIFF ファイル ( ファイル名だけがイン デックス化される ) FTP archive のインデックスに使う ( ヨ勺でない ) ( ヨ勺でない ) 1 5 工ラーメッセージおよび警告メッセージのみを出力 します。 さらに、どのファイルをインデックス化しているか という情報を出力します。 このオプションか指定されると、インデックス作成中の 工ラーが filename に言泉されます。 filename を扣疋 しないと、エラーはいっさい出力されません。 ー 1 level インデックス作成中のログ出力をどの程度おこなうかの 孑票を level で与えます。現在は、 0 、 1 、 5 、 10 カ甘旨定 できます。各レベルは、次のような出力を生成します。 0 ログを何も出力しません。 UNIX MAGAZINE 1993.6 10 すべてのログ情報を出力します。 —mem mb リ インデックス作成に使用するメモリの量を、 MB 単位 で指定します。大量のファイルからデータベース ( イ ンデックス ) を作成する場合、この値を大きくしてお くと処理か高速化されます。 -POS 語 (word) がファイル内のどこにあるかという情報を 作成します。標準ではこの情報は得られません。この情 報を作成すると、インデックスがかなり大きくなります が、語の検索スピードは速くなります。 ¯nopalrs 大文字だけからなる単言リのインデックスは作成しませ ん。標準では作成されます。 —nocat 標準では、インデックス作成時にどのファイルをデー タベースに加えたかというカタログが作られますが、 のオプションを指定すると作成されません。データベー スを構成するファイルが多いときにこれを指定すると、 インデックスが矢可間で作れます。 意 1 -register オプションを指定すると、 Thinking Ma- chines の Directory-of-Servers データベースに登求されま す。このデータベースに当求されるべき WAIS サーバーは、イ ンターネットから利用できるノワ。リックな WAIS サーバーで す。したがって、 -register オプションを指定するときには、 十分な注意が必要です。登録する場合は、はかのデータベース と名前か重複しないことはもちろん、る当素後は WAIS サーバー の安定運用をするなどの責任も負わなければなりません。 waisindex の使用例 さて、使用例をみてみましよう。 /wais/rfc1000 に は RFC1000 ~ 1099 まてが用意されています。これをも とにデータベースを作成してみましよう。作成するデータ べース名は C1000 とします。リスト 1 にその実行例を 示します。 こで、次の 7 つのファイルが作成されます。 53
連載 /NET WORTH—O 表 2 一般的な NIS のマップファイル マップファイル名 b00t params ethers. byname ethers. byaddr group. byname group. bynumber hosts. byname hosts. byaddr mail. byaddr mail. aliases netgroup. byhost netgroup. byuser netid. byname netmasks. byaddr networks. byname networks. byaddr p asswd. byname passwd. byuid protocols. bynumber protocols. byname rpc. bynumber servlces. byname ypservers 内容 /etc/bootparams /etc / ethers /etc/ethers /etc/group /etc/group /etc/hosts /etc/hosts /etc/aliases /etc/aliases /etc/ netgroup /etc / netgroup UID と GID 情報 /etc / net masks /etc/networks / etc / networks /etc/passwd /etc/passwd /etc/protocols /etc/protocols /etc/rpc /etc /services NIS サーノヾー名 統合法 追加 置換 置換 助日 置換 置換 助日 追加 置換 置換 継承 置換 置換 置換 追加 追加 置換 置換 置換 置換 置換 スクリプトを使って必要な修正を加え、さらに修正したテ キストファイルから新しいマップファイルを作成するとい う手順でおこなわれる。したがって、 make コマンドと、 YP 用の makefile を利用すれば、これらのイ乍喋を簡単に すませることができる。また、このあとに NIS のスレー プサーバーは、マスターサーバーから孑ぐを受けてマップ ファイルを新しいものに更新する。 クライアント ( ネットワークに接続されたホストまたは ワークステーション ) は、 NIS サーバーにリクエストを送 信することで、これらのマップファイルの内容を参照でき る。このサーピスは、システム・ライプラリや I 。 g ⅲなど のコマンドのなかでそっとおこなわれるので、ユーサーは はとんどの場合、このサーヒ、スの存在を意識することはな い。クライアント側では ypbiud というネットワーク・ デーモンが、どのシステムで NIS サーノヾーか動いている かという情報を管理している。 NIS のサーピスは、単純かっ透過的なモデルにもとづい て構築されているが、クライアントにとってパスワードの 管理だけは例外である。ューザーがバスワードを変更する と、 NIS マップも当然変更されなけれはならない。このた めに passwd コマンドの YP ノヾージョン、 yppasswd 142 アクセスキー ホスト名 ホスト名 Ethernet アドレス グループ名 グループ ID ホスト名 IP アドレス IP アドレス ェイリアス名 ホスト名 ューサー名 ューザー名 IP アドレス ネットワーク名 IP アドレス ューサー名 ューサー ID ポート番号 プロトコル名 ホスト名 サーピス名 RPC 番号 後のパスワードを送信する。こうすることで、 NIS のパス するマスターサーバー上の yppasswd デーモンに、変更 を利用する。このコマンドは、マップファイルを直接更新 UNIX MAGAZINE 1993.6 ている。 ログラムて参照するために、短いニックネームカ咐けられ プファイルのいくつかには、 NIS のユーティリティ・プ 使われるものとがある。表 2 に挙げた標準的な NIS マッ 置き換えるものと、そのファイルの内容を参照したあとで NIS マップファイルは、 /etc にあるファイルを完全に スをインデックスとして検索するためのものだ。 ト名をインデックスとし、 hosts . byaddr は IP アドレ なるマップファイルが作られる。 hosts ・ byname はホス て、 hosts. byname と hosts. byaddr という 2 つの異 このため、 / etc な osts からアクセスキーの違いによっ されることがよくある。 してインデックスの付いた 2 つのマップファイルが作成 た 1 つのファイルに対し、ファイルアクセスのガ去に応 した。データベースの構造は単純なので、 /etc に置かれ 表 2 に、 NIS が生成する一ヨ殳的なマップファイルを示 合を与えないようにしている。 ワード・マップファイルを即座に更新し、ユーサーに不都
図 9 プリントアウト士組み ワークステー / e p 叩 : プリントアウト : してね ! あとは任せた ファイル よし、引き受けた ! 任せなさい ! フィルタ ファイルのコピー スプールディレクトリ 表 1 /etc/printcap のオプションの意味 : br # 19200 : mx # 0 :sf : sh:rw: sb: :ms=¯isig, igncr,cstopb,—echok: \ : fc # 0177777 : fs # 003 : \ : if=/usr/local/lib/lpdfilters/psif : \ : af=/usr/adm/okips . acct : \ : lf=/usr/spool/okips—log : \ : lp=/dev/ttya: sd=/usr/spool/okips : \ okipsl durianlOKI MicroLine 801PS \ # PostScript Printer for Monkey Project 図 10 /etc/printcap 」 名称 lp sd If af if 、 of br mx sf sh rw sb df nf tf vf rf 内容説明 プリンタがつながるテンヾイス名 スフ。ーノレ・ディレクトリ 工ラーメッセージを書き込むファイル名 アカウント情報を書き込むファイル名 デフォルトのテキストフィルタ名 tty につながったプリンタの中応も玉度 プリントアウトするファイルの最大サイズ 改ページのコードを出力しない ヘッダべージを出力しない プリンタデバイスを読み書きできるモードて開く 1 行だけの短いへッダを出力する rIbX の dvi ファイル用のフィルタ ditroff 用のフィノレタ troff 用のフィルタ ラスタイメージ用のフィルタ Fortran(ratfor) 用のフィルタ それでは、この図に載っているオプションのなかで今回 使うものについて、設定を考えながらすこし詳しくみてい 36 きましよう。 プリンタがつながるデバイス名を指定します。 今回は、 RS232C ポートに接続するので /dev/ttya と 指定します 11 ・ sd プリントアウトするファイルは、 lpr によってここで 指定されるスプール・ディレクトリにコピーされます。 /usr( または v 矼 ) / SP001 / 2 厩 e れ me というディ レクトリにすることが多いようです。 ・ If lp や lpd からのエラーメッセージがこのファイルに書 き込まれます。 ・ af アカウント機能を利用するとき、その情報を書き込むた めに指定するファイルです。アカウント機能について は、『 SUN システム管理』などを参照してください。 ・ if プリントアウトするファイルの内容を、プリンタに合っ た形式に直すのに利用するフィルタ ( プログラム ) あるいはプリンタドライバ " と呼ばれるプログラムを 指定します。 ・ br RS232C などのシリアル・インターフェイスに接続する 場合、データの転送速 . 度を指定しなくてはなりません。 11 RS232C ポートが /dev/ttya や /dev/ttyb など複数ある場合、対 応するデバイスファイルを石忍、してください。 UNIX MAGAZINE 1993.6
本誌では、電話回線を利用したフリー・ソフトウェアなどの配 布サーピスをおこなっています。 配布サーピスを希望する方は、編集部のホスト (WEnet) に モデム経由でログインし、希望するソフトウェアなどをダウンロー ドしてください。事前のお申込み、パスワードの求などは必あ りません。また、接続料金は通言辞第金を除き無科です。 配布するファイル 原則として UNIX のソフトウェアやデータです。回度お よび回線数の都合により、原則的にアーカイプ / 圧縮後のファ イルサイズが 250KB 以下のものに限定します。 WEnet のアーカイプ・ファイルの形式 UNIX の tar 十 compress 形式 ( *. t 2 ) GNU の gzip 形式 ( * 諸 ) UNIX の shar 形式 ( *. s ん ) lharc/lha 形式 ( *. ん ) 一部のファイルと README ファイルは、展開してありま す。ファイル名は UNIX にましているので、 MS-DOS な どから利用するときはご注意ください。 文字コード 日本語の README ファイルなどの文字コードは、日本語 EUC です。ただし一 - 部のドキュメント・ファイルは、日本 ・モデム間のプロトコル 接続プロトコル 語 EUC と Shift-JIS()S 漢字 ) コードになっています。 なし (MNP5 、 V. 42 / V. 42bis ) 、 lbit なし 8bit 300 / 1 , 200 / 2 , 400bps 全 2 重明司期無手順 受信第記攵行コード 送信 1 記攵行コード ホスト ( リモート ) 工コー ・ホスト側の設定 モデム間フロー制御 ストップピット ノヾリテイピット データビット ピットレート CR 十 LF CR あり XON/XOFF 運用時間・メンテナンス WEnet の利用方法 午前 8 時 30 分 ~ 午後 2 時 40 分 回線です ( 電話番号を間違えないようにご注意ください ) 。 WEnet にオ売すると、次のように表示されます。・ ( 孑を後、何 も表示されない場合は RETURN キーを押してください ) 。 We1come tO WEnet , type "wenet" and hit return ← ( ログインプロンプト ) ログイン名、 wenet" を入力し、 RETURN キーを押しま す。ログイン名を間違えると、、 passwd : " プロンプトが表示さ れます。この場合は何も入力せすに RETURN キーを押し、 1 。 gin : " プロンプトが表示されてから、改めて wenet と入力 してください。 WEnet のコマンド ・ディレクトリ、ファイル乍 ◇ ls または dir 第 I 引市 cto 型 ] ディレクトリ内容の表示 ◇ cd directory ◇ pwd ◇ cat files.. ・ダウンロード カレントディレクトリの変更 カレントディレクトリの表示 テキスト形式ファイルの内容表示 ◇ protO [none ー xmodem ー xmodem 0 を 0 れ s ー ymo- dem op 0 れ司 kermit] プロトコルの設定の未は一己のとおりです。 none ファイル車幻医にプロトコルを使用しない xmodem xmodem (CRC) を使用 xmodem lk xmodem をロングノヾケット ( IKB / ノヾ ケット ) モードで使用 xmodem modem7 xmodem を modem7 batch モードて使用 xmodem lk modem7 xmodem をロングノヾケット と modem7 batch の両モードで使用 ymodem [lk] [modem7] ymodem を使用 ( lk 、 modem7 も設定可能 ) kermit kermit をイ更用 ◇ b inary ◇ t ext バイナリ形式のファイルを軏送 テキスト形式のファイルを軏送 ( 以 E 3 つは、次の get コマンドの実行前に使用 ) ◇ get filename . ◇ set ・そ . ファイルの送を開始 プロトコル、ファイルモードク寉認 運用嗤 変 3 時 10 分 ~ 年後 9 時 定期メンテナンス毎週月曜日 障害などにより、予告なしに一印判勺にサービスを停止すること ◇ help [ comm 佖れ岡 利用可能なコマンドの一覧を表力、引数にコマンド名を指定 すると、そのコマンドの詳しい使去か表示される もあります。 ログイン オ電話番号は、 ◇ quit 03 ( 3797 ) 1092 、 03 ( 3797 ) 1357 の 2 UNIX MAGAZINE 1993.6 ログアウトし電話回線を切る 117
連載 IJN Ⅸ Communication N0tes リスト 5 インデックス・ファイルの更新 # ! /bin/sh waisindex —d /wais/rfc1000 -a —t mail /wais/rfc1000/* . txt ・ソースファイルの配布 ・インデックス・ファイルの更新 アクセス・コントロール UNIX MAGAZINE 1993.6 やメーリングリストのダイジェストのような場合、もとの データベースとして提供するものが、ニュースの記事 インデックス・ファイルの更新 各組織での運用状態に合ったガ去を採用してください。 スを作成し、 WAIS サーバーを起動すれはできます。 waisindex でタイプに server を指定してデータベー る場合は、これが便利です。ソースファイルを収集し、 ガ去もあります。かなり大莫なデータベースを構築す ・ Directory-of-Servers データベースを社内で用意する ニュースやメーリングリストによる配布も効果的です。 るのがもっとも簡単で、手間のかからないガ去です。 ・ Anonymous FTP を使ってソースファイルを提供す ときは、次のようなガ去があります。 一方、系騰哉内だけのネットワークで WAIS を運用する になります。 Servers データベースに登録すればソースを配布したこと サーノヾーならば、 Thinking Machines の Directory-of- する必要があります。インターネットに公開する WAIS サーバーにアクセスするには、ソースファイルを配布 ソースファイルの配布 している WEnet から入手してください。 しよう。もし入手する去がなけれは、本言集部が運用 などを使って、国内のアーカイプ・サイトから捜せるで す。ノヾッケージ名は tcp-wrapper. tar. Z です。 archie tcpd はフリー・ソフトウェアで、国内でも入手できま クに許すかという tcpd などのツールを用いるといいでし い場合は、 TCP コネクションをどのホスト / ネットワー 機能はありません。簡単にアクセス・コントロールをした WAIS サーバー自体には、アクセス・コントロールの データは時々刻々と増えていきます。したがって、それ をデータベースとするインデックス・ファイルも更新しな くてはなりません。これには、 waisindex に -a オプショ ンを付け、リスト 5 のようなスクリプトを毎日 daily や cron などで実行するのがよいでしよう。 WAIS のそのほかの利用 waisindex は、サーバーカ甘是供するデータベースだけで なく、各ューサーのファイルを対象にインデックスを作成 し、高速アクセスを実現することにも利用できます。 たとえは、ニュースリーダーを使って個人的に記事を 保存しているディレクトリがある場合、 waisindex を用 いてインデックスを作成すれば、 xwais などで検索できま す。前号でも説明したように、ソースファイルはシステム 全体で共有するもの (/usr/local/wais/source など に置かれている ) のほかに、召固人か記述したものも使え ます。この機能を使って自分のファイルのインデックス を作成し、そのソースファイルを言己して利用すればいい のです。 具イ勺な例を示しましよう。たとえば、ホームディレク トリの下に News / comp ・ sys ・ s Ⅱ n というディレクトリが あり、そのなかに各記事か別々のファイルとして保存され ていたとします。この場合は、ます以下のようにインデッ クスを作ります。 % /usr/local/wais/bin/waisindex —d My—News—Sun\ —t netnews ¯/News/comp. sys ・ sun/* このインデックス・ファイルを個人用のソースファイル をオ絲タするディレクトリ ( ーヨ殳に -/wais-sources) に 移動ければ、 xwais などから検索できます。 このように、 WAIS はネットワークでの情報共有だけ ではなく、ユーザー刎固人ファイルのデータベース化にも 使えます。 57
SunOS 5. X のテモプログラム radio Guido van Rossum の radio はプロードキャスト ( 同 輌機能を利用しますが、 SunOS 5. X のデモプログラム (/usr/demo/SOUND ディレクトリにあります ) は、特定 のグループ 0 ンヾケットを伝達するためのマルチキャスト機 能を使います。したがって、 IP 上のマルチキャスト機能 のデモとしての性格か強く、この機能の実装された OS 以 外では利用できません。 なお、このプログラムが用いるマルチキャスト・アドレ スは 224.0.3.255 ( IP マルチキャストのための cl s D の 1 つをサンプルとして使用 ) で、これを使えは複数 の利用者が音声による・聳義をおこなうこともできます。 プログラムには、ウインドウ・べースの送信フ。ログラム xmit と、受信プログラム radio があります。後者には、 コマンド行で利用できる radio-xmit と radio-recv があ ります。機能か高いぶんオプションも豊富で、実際のラジ オ放送のようにコールサインや DJ ( 発信者 ) の名前を付 けて送ったり、ラジオのダイヤルを合わせるような機能も 含まれています。 これらの radio プログラムでは、 LAN 上に常時 64 Kbps (Ethernet では約 0.6 % ) を利用するデータが発 生します。気にならないレベルではありますが、混雑した LAN で実行すると、音声を運ぶバケットが失わ聞く に堪えない情報になってしまいます。 しつは本誌の編集部の LAN にも、つねに NHK 第 1 放送のバケットカヾ充れています。なにも仕事中にラジオを 聞こうというわけではなく、ラジオの日赫長を利用してワー クステーションの内部日 t を合わせるためです。ここで使 われているのが、この記事の主題である radiotime プロ グラムです。オーディオデータも UNIX のツールととも に利用できますから、これらのツールを組み合わせれば、 図 7 のような応用も可能です。 0 肝腎のプログラムにいき着く前に、誌面が残り少なくな ってしまいました。次回は、この radiotime プログラム について説明します。 ( なかむら・まことシャーフ ) WEnet の配本ファイル ☆、 MEnet のディレクトリ README. sj 利用案内 (Shift-JIS) README. euc 利用案内 (EUC) ログイン日 ) カレントディレクトリ 1s—1R オファイルー一覧 -/WEnet/ 7cmd/ ~ / 15g / -/src/ "/tex/ 116 ファイル転送フ。ロトコルなど UNIX 用各不重ユーティリティ unix/ ms-dos/ MS-DOS 用各種ューティリティ 各種 UNIX コマンド 各種ドキュメント・ファイル GNU ソフトウェアに関するもの Emacs Lisp の各種フ。ログラム elisp ispell ー 2.0.02 spell チェック・プログラム rCS RCS version 5.6 プログラミング言語 / ツールなど perl perl/jperl version 4.019 プログラム・ソース / ノヾッチなど ' I び、に関するもの -/unixmag/ 本誌に掲載されたリスト、目次ファイルなど 19YYNM/ 19YY 年 MM 月号の記事に関する もの UNIX MAGAZINE 総目次 index/ ☆今回は新たに次のものを ~ / u / el 土 sp / に置きました。 「 Nemacs 入門」 1993 年 1 、 3 月号で紹介した cmutex 「 Nemacs 入門」 1993 年 5 月号で紹介した calendar ☆不上のも意 プログラムの利用や再配布にあたっては、各ソフトウェアのド キュメントにある指示に従い、作者に迷惑をかけないように注意 してください。バージョンアップなどについては、本誌の誌面で お知らせします。 WEnet に対するご意見、ご要望などは、かならす書面で下記 宛にお送りください。 〒 107-24 東京者巷区南青山 6 ー 12-1 大仁堂ピル ( 株 ) アスキー UNIX MAGAZINE 部「 WEnet 」係 FAX 03 ( 5485 ) 8588 UNIX MAGAZINE 1993.6
NIS を使っている環境では、かならすマップ (services) も更新してください。 以 - ヒで準備は終了です。 WAIS サービスの構築 こからは、 RFC (Request For Comments) の 1000 番台のドキュメントをデータベース化し、 WAIS サ ービスを提供することを例にして、その手順を説明してい きます。なお、さきはどの Makefile での $ ( TOP ) には /usr/local/wais を指定し、必要なプログラムはすべ て /usr/local/wais/bin にあるものとします。 テータの収集 ます、データベースに求するデータを集めます。 こでは、 RFC1000 ~ 1099 のドキュメントをディレクト リ /wais/rfc1000 の下に置きます。各ドキュメントは、 、 RFC 番号十拡張子 (. txt)" という名前のファイルにな っているものとします。たとえば RFC1041 が、 /wais/ て fC1000 / 1041. txt という具合にです。 データを集める段階では、 1 つのデータベースを構成する ファイル群 (f 列では /wais/rfc1000/* . txt) を 1 つのディ レクトリにまとめておくと、あとの管理が簡単です。量が多い 場合は、いくっかのサプディレクトリに分割して保存するとよ いでしよう。 連載 UN Ⅸ Communcation Notes—⑩ waisindex によるテータベースのイ乍成 次に、情幸財是供のための WAIS 用のデータベースを作 成します。これには waisindex コマンドを用います。デ ータベースのデータとなるファイルが川 e だとすると、 -d れ佖 me は、次のものが用意されています。 というようにデータベースを作成します。オプションに % waisindex 0 0 れ s file file た場合は、データベース名として f 。。が用いられ、イン 定できます。 dbname として /wais/db/foo を指定し クトリに作成されます。れ佖 me にはパス (path) も指 定された名前のインデックス・ファイルか現在のディレ 作成するデータベースの名前を指定します。通常は、指 52 デックス・ファイルは / wais / db に作成されます。この オフションを省略すると、データベース名には index か使われ、現在のディレクトリにインデックス・ファ イルが作成されます。 データベースを構成するファイルをいくっかのサプディ レクトリに分けて保存しているときに使用します。この オプションを使うと、再帰的にサプディレクトリを探索 し、インデックスを作成します。 —export 作成したデータベースを、 waisserver によってネット ワーク経由で公開する場合に指定します。このオプショ ンを指定すると、あとで説明するソースファイルに、 ・データベースを提供するホスト名 ・データベースカ甘是供される TCP のポート番号 の記述が追加されます。 ¯register Thinking Machines が管理している Directory-of- Servers データベースに自重加勺に登録されます。このオ プションの指定には注意してください ( 次ページのラも意 1 参照 ) 。 則号でも説明したように、 WAIS では高速かっ質の高 い検索ができるように、ソースに関する独自のインデッ クスを作成しています。このために利用するプログラム が waisindex です。インデックスの作成では、ファイ ルの構造に合わせてインデックス作成アルゴリズムを変 更しています。現在の waisindex は、表 1 に示したファ イルをサポートしています。このオプションでは、もと になるファイルのタイプを匆としてインデックスを 作成します。これを省略すると、 text か驃準のタイプ として指定されます。 すでに存在するインデックスに対して、差分を加える場 合に使います。たとえば、毎日ファイルか増加するメー ルの保存ディレクトリのインデックスを作るために、毎 回すべてのファイルのインデックスを作成するのは大変 です。このオプションを付けると、 waisindex は変更 部分のみのインデックスを作成し、既存のインデックス に追加します。 UNIX MAGAZINE 1993.6
特集ドン一ときたら困るけど、ネットワーク卸里・・ 2 banana% dvi2ps —R 400 date llpr —P0kips こで使っているオプションの意味は、 18 プリンタの解像度を指定します。 MICROLINE は 400dpi なので、 400 にしています。 です。 dvi2ps の出力結果 (PostScript) をファイルに落 としたい場合は、 banana% dvi2ps —R 400 date >date . ps UNIX MAGAZINE 1993.6 18 jdvi2kps では、一です。 タ名を間違ってはなんにもなりませんよ。 コマンドて市寉認してみましよう。ただし、石忍するプリン しばらく待ってもプリントアウトされない場合は、 lpq 「ちゃんとプリンタの待ち行列には入ってるやろな」 石忍しましよう。 コマンド行の一 p 旨定したプリンタ名が合っているかを 出力されているかもしれません。環境変数 PRINTER や、 ひょっとしたらプリンタを間違えて、違うプリンタから 「プリンタ名は合ってるかな ? 」 ので、ます原因の究明が先決です。 とがあります。このようなトラブルの原因は一様ではない たしかにプリントアウト命令をしたのに出力できないこ んなあ」 「あれ ? ちゃんとプリント命令したのになんにも出えへ なんにも出ないぞ しておきましよう。 続・設定に関するトラブルと、その対去をいくつか紹介 最初から完璧とはかぎりません。最後にプリンタの接 ねんな」 「なんや、なんや ? どっかおかしいで。何か起こってん トラブル・シューティンク おめでとう monkey 君。古労さまでした。 「よっしゃ ! こオ t で完璧や」 る手順を、図 11 にまとめておきます。 最後に、に EPS ファイルを取り込んで出力す ントアウトしても、さきほどと同し結果カ碍られます。 とします。こうしておいて、あらためて date. ps をプリ banana% lpq —Pokips okips is ready and printing Rank Owner Job Fi1es Tota1 Size active monkey 16 more—date . ps 129 bytes このような場合は、プリンタがハングアップしている か、あるいはケープルの接続不良が考えられます。プリン タがハングアップしているときには、たいていリセットす ると直ります。 banana% lpq —P0kips Ⅱ 0 entries 上のような場合には、ログファイルを見ましよう。フ イルタブログラムが原因で出力されない場合は、一般に printcap のなかで指定したログファイルに書かれます。 プリンタデーモンが原因のときには、 syslog という機能を 用いてエラーメッセージを出力することもあります o/etc /syslog ・ conf ファイルのなかの lpd の出力先を石忍し て、そのファイルを見てください。ログファイルのなかに 原因か書かれていたら、その原因を取り除けばいいわけで す。もし何も書かれていないときは、ログファイルのオー ナーが daemon になっていて、ちゃんと書き込めるよう になっているカ忍してください。 さらに、プリンタか接続されているデバイスファイル が、 daem 。Ⅱで書込み可能かどうかも確認しましよう。も し daemon か書き込めない場合は、 banana# chmod 0666 /dev/ttya などとして、誰でも書き込めるようにするのが簡単です。 あるいは、 banana# chown daemon /dev/ttya banana# chmod 0600 /dev/ttya として、 daemo Ⅱだけか書き込めるようにしておいてもい いでしよう。 これでもまだ出力できない場合、 printcap ファイルの 次の事項を石忍してみましよう。 1. 必喫なエントリカ甘前っているか 2. \ が余分に付いていないか 3. \ の付け忘れはないか 4. # や + を間違えていないか 41
IJN Ⅸへの招待⑩ ば Bourne シェルです 1 。したがってこの例では、ユー サー aya のログインシェルは C シェルです。 引数なしでシェルを起動すると、シェルは端末へプロ ンプトを出力し、端末からの入力を読み込みます。ログイ ンシェルは、 /etc/passwd 中に (/bin/csh など ) 引 数なしで言当されています。ログインすると ( 引数なしで シェルか起動されるので ) 端末からのコマンド入力かでき /bin/sh filename 一方、シェルを、 るようになるわけです。 プログラムやシェル丁続きと呼ぶようですが、とくにこだわる必要はない リプト、 Bourne シェルて疾行するように言己主したファイルをシェル・ 2 慣習的に、 C シェルで実行するように言己したファイルをシェル・スク れぞれ jc 、 jsh などのファイルになっているものがあります。 1 OS によっては、日本言韶 ) 使える C シェルや Bourne シェルが、そ マニュアルを見る、というイ檪は次のように言当します。 たとえば、環境変数 LANG を取り消して man コマンドで と同し要領で、ファイルにコマンドを列挙していきます。 好みのエデイタを利用し、端末からコマンドを入力するの う。といっても、特別なガ去があるわけではありません。 ますはシェル・プログラムの作成ガ去から勉強しましょ シェル・プログラムの作成 ( ファイルに言己し ) 作成しておくと便利です。 あるなどの場合は、その手順をシェル・プログラムとして ければ目的が達せられない、いつも決まった一 - ー漣の手順が 手続きなどと呼びます 2 。いくつかのコマンドを実行しな ではシェル・プログラム、シェル・スクリプト、シェル すなわちコマンドカ黝」挙されたファイルのことを、 UNIX さて、シェルコマンドの引数として指定するファイル、 ます。 そして、ファイルの内容か終了すると、シェルは終了し ル中に列挙されているコマンドを順次実行していきます。 終了すると次の 1 行を読み込む " 、というように、ファイ ん。、、ファイルの 1 行を読み込んでそれを実行し、実行が 実行します。このとき、シェルはプロンプトを出力しませ ( 端末ではなく ) そのファイルからコマンドを読み込み、 のように、引数にファイル名を指定して起動させると、 166 でしよう。 こで、 unset はシェル変数 ( あるいは環境変数 ) を 取り消すコマンドで、次のように使います。 unset 変数名 また、 man の後ろて使われている $ * は、このシェル・ プログラムを実行するときに渡された引数に置き換えら れます。たとえば、 % sh eman IS のように実行すると、シェル・プログラム eman 中の $ * が、引数として与えられた ls に置き換えら最糸勺に man コ - マンドカゞ、 % cat eman unset LANG man $ * man IS と実行されることになります。こうしておけば、シェル・ プログラム中の man コマンドの引数を変えることかでき ます。 シェル・プログラム中の変数 話は脱線しますが、 SunOS では、環境変数 LANG に japanese という値を代入しておくといくつかのコマン ドで日本語が使えるようになります。 man コマンドもそ の 1 つです。 LANG のイ直が japanese に設定されている と、日本語のマニュアルが表示されます ( 正確には、マ ニュアルを検索するディレクトリの順番か変わり、英語 よりも日本語が優先されます ) 3 。このため、英語のマニュ アルを読みたいときは、 LANG の設定をいったん取り消し てから man コマンドを実行しなければなりません。これ らの処理を、いちいちコマンドラインから入力していたの では面倒です。そこで、則記のようなシェル・プログラ ムを作っておくと便利なのです。 また、 LANG を未設定のままにしておくと、はかのコマ 3 これはあくまでも 1 つのガ去です。このほか、竟変数 MANPATH の 値を変える、竟変数 LC-MESSAGES 刎直を japanese にするなどの方 法で日本語マニュアルカ俵示できます。 UNIX MAGAZINE 1993.6
連載 /NET WORTH—O 表 1 NIS のサービスを受けるシステムファイル ファイル名 /etc/servxces /etc/rpc /etc/protocols /etc/networks /etc/netmasks /etc/passwd /etc/aliases /etc/hosts /etc/group /etc/ethers /etc/bootparams 内容 ディスクレス・ワークステーションの起動に利用 インターネットの ARP(Address Resolution Protocol) などのプロトコルか利用できないホス トマシンで、 48 ビットの Ethernet ハードウェア・アドレスを調べるのに利用 グループ LAN につながっているホストや周辺装置などの名前と IP アドレス メールプログラムカリ用する alias とメーリングリスト ューサー名、パスワード、ユーサー ID 、ホームディレクトリ、起けるシェル・ IP サプネットで用いるネットワーク・マスク ネットワークの名前と IP アドレス サポートされているネットワーク・プロトコルの名前と番号 RPC プログラムの名前と番号 ネットワーク十てサポートされているサーピスの名前とポート番号 プログラム 両方が 100 社以上のべンダーから縣合ささまざまなマ シン竟上て利用できるようになった。 また、 System V ReIease 4 の元成は、 System V と BSD 系 UNIX を 1 つに融合しようとした AT&T と Sun の努力の結品である。 System V Release 4 には、 NIS と NFS カ齟み込まれている。 UNIX 市場の動向を眺 めていると、どうやら皆さんの机の上にあるマシンにも、 もうすぐ NIS が対応することになりそうだ。もちろん、 そのマシンがまだ NIS に対応していなければの話だが。 さて、 NIS についてのお話は、ネットワーク階層の最 上段にあたるアプリケーション層から始めることにする。 とはいえすぐに、階層の下にある RPC ネットワーク・プ ロトコルや、 NIS が下地としている XDR データ表現に も触れることになるだろう。 データベース・テキストファイル UNIX は、システムの設定や管理に用いるデータベー スとして、数多くのテキストファイルを利用している。も ちろんこれらにはユーザーやパスワード、ネットワーク、 ホスト、ネットワーク・プロトコル、利用可能なサービ スなどを名前に変換するのに利用されるファイルも含まれ る。 NIS はこれらのファイルをネットワーク上のローカ ルマシンのあいだで分配したり、修正や変更を同期してお こなう必要から開発されたのだ。 NIS は、一ヨ殳に利用されるシステムファイルの管理を簡 単におこなうための分散型データベースである。 NIS が対 応する標準ファイルには、たくさんの不鶤頁がある ( 表 1 ) 。 さらに、ネットワーク環境で使われるそのはかの情報や、 140 ファイルの管理にも利用される。 NIS システムを動かすに は、以下のものが必である。 ・ NIS サーノヾー ( マスターサーバーとスレープサーバー コマンド群 ・ NIS マップの作成や糸財寺に必要な NIS ューティリティ・ み込まれている NIS クライアント・コード ・さまざまなシステム・ライプラリやユーティリティに組 ・ NIS ドメイン (domain) と呼ばれる平坦な名前空間 イル (NIS ではマップと呼ふ ) ・マスターサーバーか管理する NIS データベース・ファ が必要 ) UNIX MAGAZINE 1993.6 べース・ファイルに変更を加えたシステム管理者もおこな でマップを更新しなければならない。この竹喋は、データ こる。スレープサーバーは、マスターサーバーからの指示 バーがマスターサーバーとの同期をとれない状況がよく起 to live) パラメータをもたない。実際には、スレープサー DNS の場合と異なり、 NIS マップは生存時間 (time プサーバーに送信する。 ての更新を管理し、変更されたファイルをすべてのスレー 受け取る。マスターサーバーは NIS マップに対するすべ ら各データベース・ファイル ( マッフ ) の完全なコピーを する。スレープサーバーは、起重加にマスターサーバーか ために、通常はかのマシンをスレープサーバーとして利用 ビスの信頼生を高め、マスターサーバーの負荷を分散する ファイルは、マスターサーバーのもとて管理される。サー な形式で記述されている。また、これらのデータベース・ NIS て利用されるデータベース・ファイルは、ごく簡単