リス日 UNIX WS からの利用例 ( sunOS 4. 凵の場合 ) % tip 0ut24 connected at z OK atdt0 , 37971357 CONNECT 2400 (UNIX のシェル・プロンプト ) (tip コマンドの設定、使用方法については省略します。 こでは、 0ut24 というホスト指定名で、Ⅵに接続した モデムに直接アクセスする設定になっていると仮定します ) (ATD コマンドで発信する ) ← ( モデムを初期化する ) WeIcome tO WEnet , type 'wenet" れ d hit return archive,/distribution 押してみる ) ( このプロンプトが表示されない場合、 RETURN キーを 1 ~ 2 回 We1come to UNIX MAGAZINE file A11 Rights Reserved (C) Copyright 1986 ー 1990 , MIPS Computer Systems RISC/os (UMIPS) 4.52 umws01 > > > wenet WEnet : WEnet : WEnet : total drwxr— WEnet : WEnet : WEnet : cd doc/junet—guide dir 721 xr—X 1 て 00t 1 て 00t 1 て 00t 2 root proto xmodem lk binary get j unet¯guide . lzh (WEnet のコマンド・モードのプロンプト ) ← ( カレント・ディレクトリを doc/junet-guide に変更 ) Sep 28 23 : 46 junet—guide . lzh 204759 Sep 28 23 : 46 junet—guide . tar . Z Sep 28 23 : 42 junet-guide . dvi . Z Sep 28 23 : 45 text ← ( ファイル転送プロトコルを xmodem ロングバケット・モードに設定 ) ( 転送するファイルは、パイナリ形式 ) ← ( 転送を開始する ) 1024 304709 194141 XMODEM Version 3 . 9 (November 1990 ) UNIX—Microcomputer Fi1e Transfer Faci1ity Fi1e junet—guide .1zh Ready tO SEND in binary mode Estimated Fi1e Size 190K , 1517 Sectors, 194141 Bytes Estimated transmissxon time 3 minutes 45 seconds Send several Co Ⅱ t て 01 ー X characters tO cancel &CLoca1 command? xmodem —rb ← ( tip のエスケープ・コマンド ~ c で、ローカル側のファイル転送プロ グラムを起動する ) XMODEM Version 3 . 9 (November 1990 ) UNIX—Microcomputer Fi1e Transfer Faci1ity Send several Contr01—X characters tO cancel Ready for BATCH RECEIVE in binary mode fO て X minute XX seconds 166 NO CARRIER WEnet : quit ← ( 転送終了 ) ← ( 、 MEnet をログアウトし、回線を切断する ) ← ( 回線が切断された ) ← (tip を終了する ) ( UNIX のシェルに戻る ) UNIX MAGAZINE 1992.3
RISC/os (UMIPS) 4 . 52 umws01 (C) Copyright 1986 ー 1990 , MIPS Computer Systems A11 Rights Reserved ( この部分に、編集部からのお知らせ、メンテナンスの予定など のメッセージが入る場合もあります ) We1come to UNIX MAGAZINE file archive/distribution service WEnet : などのメッセージが表示され、 WEnet のコマンド・モード に入ります。接続されすに電話回線が切れる、文字が化け る、ログイン・プロンプトが表示されないなどの場合に は、モデムの設定などをもう 1 度確認してください。 なお、ログインした状態で 1 分間以上なにも操作しない 利用方法 と、自動的に回線が切断されます。 164 ダウンロードに使用するファイル転送プロトコルの設 ymodem の砺引 kermit] ー xmodem のー proto cnone ー xmodem ・ダウンロード操作 テキスト形式ファイルの内容表示 cat 万ん s. ・ファイル操作 カレント・ディレクトリの表示 pw d カレント・ディレクトリの変更 cd 市 0 ディレクトリ内容の表示 ()s コマンドと同し ) dir [ 川市 ] ディレクトリ内容の表示 ls [ 万ん一市。 ] ・ディレクトリ操作 す。 コマンド・モードから使えるコマンドは以下のとおりで ンド体系のサプセットになっています。 ダウンロードに関連するコマンドは、 UNIX の ftp のコマ をかなり限定したものになっています。また、ファイルの WEnet のコマンド・モードは、 UNIX のシェルの機能 定。オプションの意味は以下のとおり。 xmodem moder れ 7 xmodem lk modem7 none XI れ ()der れ xmodem lk ファイル転送にプロトコル を使用しない xmodem (CRC) を使用 xm 日れをロングバケット・ モード ( IKB / バケット ) で 使用 x m 0 d e m を m 0 d e m 7 batch モードて使用 xmodem をロングノヾケッ トと modem7 batch との 両モードで使用 ymodemC1k] Cmodem7] ymodem を使用 ( lk 、 modem7 も設定可能 ) kermit を使用 k ermit binary バイナリ形式のファイルを転送 text テキスト形式のファイルを転送 ( 以上 3 つのコマンドは、次の get コマンドを使う前に set help [ じ 0 ”れ田 ・ヘノレプ プロトコル、ファイルモードの設定を確認 ファイルの転送を開始 get 万ん 4 襯 e.. 使用する ) UNIX MAGAZINE 1992.3 れる ) を指定すると、そのコマンドの詳しい使用法が表示さ 利用可能なコマンドの一覧を表示 ( 引数に c 。〃〃イ
都合で、 ・今回出てきたコマンドの一覧 コマンド M-x eval-print-last-sexp ( く LF 〉 ) M-X lisp—interaction—mode M-x eval—current-buffer M-x eval-defun (C-M-x) M-X debug—on—entry M-x cancel-debug—on-entry debugger¯return—value (r) —eval—expressxon debugger-step-through (d) —continue (C —frame—clear サプコマンド debugger debugge r debugge r 126 funcall apply eval macroexpand defmacro defvar defconst substring string-match append list quote cdr car pop-to-buffer get-buffer-create let * Lisp 関数 top-level (q) V 次は何にしようかな 2 回連続でお送りした Emacs Lisp はいかがでしたか。 Lisp でのプログラミングとデバッグのおおよその雰囲気 だけでも擱んでいただけたでしようか ? 誌面 ( と時間 ) の emacs 入門 debugger—frame (b) debug—on—error debug—on¯quit などの Lisp 変数については説明できませんでしたが、こ れらもなかなか役に立ちます。興味があれば調べてみてく ださい。 さて次回は・・・・・・、何にしましようね。今回の記事のなか で、図らすも伏線となった、、 Nemacs から使う shell" に しましようか。 ( あらい・みちこ ASTEC) ークホイントを解除 UNIX MAGAZINE 1992.3 指定された関数に引数を適用する 指定された関数にリストで渡された引数を適用する Lisp 式を評価 マクロ呼出しを展開 マクロの定義 プログラムが変史する大域変数を宣一 プログラムが変更しない大域変数を宕・ 文字列の一部分を取り出す 文字列の一致を調べる 複数のリストをまとめて 1 つのリストにする 引数をまとめてリストにする 引数そのものを返す リストの最初の要素を取り除いた残りのリストを返す リストの最初の要素を返す ウインドウを分割後、指定されたバッフアを表示 指定された名前のバッフアが存在しなければ新しく作成 直前の Lisp 式を評価し、結果をバッフアに表示 カレントノヾッフアを LispInteraction モードにする カレントバッフア全体を評価 カーソル位置の関数定義を評価 順番に局所変数を宣言 デバッガを抜ける Lisp 式の戻り値を設定 Lisp 式の評価 ステップ実行 継続実行 カレント行のフレームのプレ カレント行のフレームにプレークポイントを設定 プレークポイントの解除 プレークポイントの設定
M—x lisp-interaction-mode を実行すると、モード行は、 (JJJ—: Lisp lnteraction) または、 よう。ほらね、今度は最初から Lisp lnteraction モードに を書き込み、もう 1 度ファイルを読み込みなおしてみまし ー * ー Mode : Lisp—Interaction ー * ー ー * ー Lisp—Interaction ー * ー 魔法の呪文、 ません。いかにも面倒ですそこで、ファイルの先頭に lisp-interaction-mode コマンドを実行しなくてはなり でも、この方法ではファイルを読み込むたびにいちいち ムが書き込めるようになります。 す。こうすれば、このバッフアでテストしながらプログラ となり、 opt-od. el は Lisp lnteraction モードになりま Lisp 言語では、 なったでしょ ( 図 23 ) 。 〃の後ろはコメント ー * ー Mode: モードー * ー または、 すですが、ファイルの先頭に と定義されているので、上の行はたんなるコメント行のは あります。 . c や . h で終らない C のソースファイルを C モ しつは、この呪文は Lisp のファイル以外にも効き目が コメント行にしているのです。 〃を付けて 式として解釈に失敗してしまうので、前に ードで読み込まれます。でも、このままではこの行も Lisp という行があれば、そのファイルは指定されたメジャーモ と書いておけば、 C モードになります。 または、 ードにしたいときには、 ファイルの先頭に UNIX MAGAZINE 1992.3 emacs 入門 ,イ▽ 図 23 モードを設定した opt ー od. を読み込んだ状態 ー☆一 Mode: Lisp-Interaction - ☆ - defconst command-path "/bin/od") (defun od (args) " 0c い 1 p the specified file. (interactive "sfilename [ op い on ] : (let* ((file (get-filename args)) (option (get-option args)) (buffer-name (concat (file-name-nondirectory file) (od-buffer ( get-buffer-create buffer-name ) ) ) ()f ( 0 「 ( no セ (file-exists-p file)) (string-equal file (message "file \ " " file " \ " doesn ・ t exist . ") ()f option (call-process cormand-path file od-buffer nil op い on ) (call-process command-path file od-buffer nil ) ) (pop-to-buffer od-buffer)))) (defun get-filename (args) (let ()n (string-match ( i f n (substring args 0 n) args))) args))) 上の方法ではメジャーモードしか設定できませんが、も っと細かく指定することもできます。バッフアの状態はい くつかの変数によって制御されていますが、ファイルの最 後に、 Loca1 Variab1es : 変数 : 値 変数 : 値 End : という行を追加しておけば、ファイルが読み込まれると同 時に変数の値が設定されます。 たとえば、プログラムをコンパイルするには、 M—x compile ですが、このときに起動される UNIX のコマンドは、 c 。 m - p Ⅱ e ー command 変数に設定されていて、デフォルトでは "make -k" です。これを、、 lisp 〃にするには、 Loca1 VariabIes : compile—command: "lisp End : という行をファイルの最後に追加してください。 ただしこの方法では制御できないものもあります。たと えば、マイナーモードは変数ではなくコマンドによって制 御されるので、変数値を設定する方法ではうまくいきませ の代わりに、 変数 : 値 ん。こんなときには、 111
Daemons and Dragons ー 作業の自動化 ろう ) 。 UNIX MAGAZINE 1992.3 ティションを作っておき、小容量のローカルディスクに バー上にはプートアップのためにディスクレス用のパー ァイルはオートマウントを使ってアクセスする ) 。サー 一部にデータレスの設定をおこなっておく ( その他のフ たとえは、ローカルディスクの / や / v 矼、 /usr の ウェアの配布は自動的におこなえるようになる。 ーやアップグレードを取ってくるようにすれば、ソフト なるマシンを作っておき、そこからソフトウェアのコピ 分の首を絞めているに等しい。そこで 1 つの、、原型 " と ンによって異なるなど ) を施しているならば、自分で自 なったり、インストールされているソフトウェアがマシ マシンごとに異なる設定 ( スワッフ。領域のサイズが異 環境と設定の統一 くとよい。 を必要とするパラメータを 1 つのファイルにまとめてお / etc / て c * ファイルには、マシンごとにローカルな変更 捨て、独自のものを作らなけれはならない。作成した る。そして、べンダーが用意した / etc / rc * ファイルは ョンをそこに再インストールしないよう注意すべきであ 下をハックしたり、ソフトウェアのローカル・バージ 場所 ) に集中させるべきである。 /bin 、 /usr/ucb の は、できるかぎり / usr / 1 。 cal ( あるいはこれと同等な べく標準化されたものを加えること。ローカルな変更 OS 上で新たなインストールをおこなう場合は、なる ローカルなファイルの配置 る " 方法を使っている sup はコピーをはかのワークステーションに、、引き入れ む " ことによってこれを実現している。一方、 CMU の ウェアのコピーをほかのワークステーションに、、押し込 るようになる。 BSDUNIX の rdist は、新しいソフト ールするだけではかのマシンには自動的に、、配布 " され るようなプログラムを使えば、、マスター " にインスト ョンのソフトウェアを、、マスター " から自動的に更新す を勝手に消してくれるだろう。また、各ワークステーシ ェルスクリプトを cron で実行させれば、ログファイル 作業を自動化するために、ツールを活用すること。シ はローカルな設定を施した OS をインストールする。そ うしておけは、ディスクレス・クライアントのプート方 法をサーバー上の 2 ~ 3 個のファイルに記述するだけで、 新しく設定されたワークステーションのようにリプート できる。マシンごとに設定やインストールを手作業でお こなっていると、マシンの追加や OS のアップグレード をおこなうたびに無駄な時間を費やすことになる。これ を防ぐためにも、環境の統一は重要である。 必要な管理者数は、サイトによって大きく変わる。唯 一変わらないのは、負わなければならない責任に対して 十分なシステム管理者が揃っていることはめったにな い、ということである。私個人の考えでは、 1 人の管理 者は 50 台程度 ( そして 3 種類のプラットフォーム ) ま でならマシンの面倒をみることが、、可能 " で、一定数の ューザーに対して適切なサービスができる。私の場合、 業務別に時間を分けてみると、 ・ユーサー・サーピス ( 30 % ) 一般的なシステム管理業務 ( 20 % ) ・新たなマシンのインストール、ハードウェアやネット ワークのサポート ( 10 % ) ・ソフトウェアのインストールと管理 ( 40 % ) ・独自のソフトウェア開発、業界動向の分析 ( 25 % ) ・サイトの計画立案 ( 10 % ) となる。ちなみに、これらを合計すると 135 % になって ー Mark Verber 1980 年から、 UNIX システムの管理者を務めている。現在、オハイオ UNIX REVIEW 1991 年 4 月号より 「 How Many Administrators ls Enough? 」 州立大学の物理哮科と数理学部で管理業務をおこなっている。 55
連載 いる。 続ウインドウ・システムについて一① PorthoIe: 大きい領域を 2 次元的にス クロールさせて見るためのウィジェット。 Panner と Porthole は、それぞれを単独で使用するものではな く、コントローラと表カ郊頁域の組にして使用するもので ある。 ・ Repeater: 押し続けているあいだ、繰り返しコール バックを呼ぶボタン。数値を増減させるときなどに使 用する。 ・ Tree. 子ウィジェットの階層をグラフィカルに冓造 で表示するコンホジット・ウィジェット。 viewres コ マンドや editres コマンドで使用されている。 Xmu X11R5 で大幅に関数が追加された。 Xaw を用いてプ ログラムを作成する場合は、かならす Xmu も同時にリン クライアント クしなければならない。 いるプログラムは、自動的に Editres プロトコルに対 dorSheII クラスに実装されている。 Xaw を使用して 機能は Editres プロトコルと呼はれ、 Xaw の Ven- ェット・リソースを重加勺に変更するためのツール。この ・ editres: Xaw を使用しているクライアントのウィジ れた。 X11R5 では、以下に示すクライアントカ噺たに追加さ X11R5 で追加されたクライアント イアント一覧を示す。 スからほとんど変わっていない。表 3 に、 CORE のクラ X11R5 のクライアント群は、基本的には以前のリリー 用意されているものを使わなくてもよいのである。 ジャーやツール群は、より優れたものがあれば CORE に 位置付けて提供されている。つまり、ウインドウ・マネー ションをおこなうための基本的なユーティリティという とは直接関係がなく、 X ウインドウ・システムでオペレー CORE にあるクライアント群は、コンソーシアム標準 UNIX MAGAZINE 1992.3 応することになる。 この機能はクライアントの表示色を決める場合などに、 クライアントを再起動せすに各種の設定か試行できるの で、使い方によってはたいへん便利である。ただし、残 念ながらリソースの現在の設定値は表示できない。ま た、なかにはリソース値を変更しても効果のないものも ある 6 ので注意する必要がある。 ・ viewres: Xaw のウィジェット・クラス構造を冓造 で表示し、リソース名を調べられるクラスプラウサ。 ・ xcmsdb. テンヾイス独立カラーのために、ディスプレ イにデータを登録するツール。 ・ xconsole: コンソールに出力される診断メッセージな どを、ウインドウに表示するツール。 xdm を使用して X 環竟を起重丿ける場合に必須である。ただし、すべての プラットフォームて動くわけではない。 テパイス独立カラー 現在の x プロトコルでは、ウインドウ上に表示され る、、色 " は、 RGB 3 原色をそれぞれ最大 16bit までの 値て指定するようになっている。しかし、このときに表示 される色は、同し RGB 値でもディスプレイのハードウェ アや CRT の特性によって異なってしまう。きわめて厳 密な色の表現をおこなうアプリケーションでは、 X のこの 仕様は受け入れられない。そこで、どのようなハードウェ ア環境であっても、絶対的な色の指定ができる欟冓か開発 された。この機構のことを、デバイス独立カラーと呼ぶ。 色の指定方法 絶対的な色の指定方法としては、 RGB 3 原色の輝 度を 0 ~ 1 のあいだの浮動小数点値で表記する RGB 輝度指定 CIE (Commission lnternationale de l'Eclairage: 国際照明委員会 ) で定められている XYZ 表色系、および Tektronics 社の HVC 表色系か利用で きる。それぞれの表色系での色の指定ガ去を表 4 に示す 7 実装 X プロトコルを変更せすに糸寸的な色指定を実現すると いっても、最終的にサーバーが受け取る色指定はやはりデ 6 xterm のフォントなど。 7 各表色系での色表現の理論は、 : 料高の範囲外なので割愛する。詳しくは、 千々岩英彰著「色彩学』 ( 語出版 ) などの響リ書を参照のこと。 45
RETURN キーを押すと、次のメニューに切り替わり ます。設定の変更は反転表示されている項目を上下矢印 キーで、設定内容の選択は反転表示されている左右矢印 キーでおこないます。最後に CtrI-S を入力すると、状態 がファイルに保存されます。 この設定情報は、 telnet. exe が存在するディレクトリ の telnet . cnf というファイルに書き込まれます。この 設定情報は、接続先のホストごとに設定できます。ファン クション・キーやキーマッピングの成疋は、 telnet . kbd ファイルにエデイタを使って書き込むようになっていま す。 制御コードの取扱い 1992 年 1 月号でオ商したように、 telnet がキーから 入力された制彳卸コードを勝手に処理してしまい、ホストに 送らない場合があります。 たとえば、画面の表示を一時的に停止する X-OFF (CtrI-S) や表示を再開する X-ON (CtrI-Q) などを tel- net か使っているケースが多いのですが、このはかにもい くつかの制御コードを使っています。 通常、これは telnet のコマンドモードで設定できます が、設定を毎回入力するのでは不便です。そこで、 PC 側 に設定ファイルを作っておき、これを読んで制御コード の取扱いを設定してくれる telnet もあります。 Net/One の場合 たとえ ttNet/One の tn. exe では、 TCP-PC をイン ストールしたディレクトリの tn. rc というファイルに書 いておくと、起重加に読み込んで設定してくれます。さい わい、 tn. exe では Ctrl-S と Ctrl-Q は通してくれるの で、これら以外のコードについて設疋します。 telnet て制御コードを使用する可能性があるのは、 ・ Abort ・ Are-You-There ・ Backspace isconnect ・ rase ・ Escape ・ Hold ・ lnterrupt ・ Break 90 などの未シーケンスです。 前述のように、一般に Escape と呼は・れる機能は、 Net/One では Hold" に割り当てられています。これ は、ホストとの接続を保ったまま telnet コマンドモード に戻る機能です。 では、 Net/One の、、 Escape" はどのような機能なの でしようか。マニュアルには、、、エスケープ文字 " を成疋 すると書いてあるのですが、機能については何も説明され ていません。先日、サポートセンターに電話で確認したの ですが、「分からないから後日連絡する」という返事で、 この原稿を書いている時点ではまだ連絡はありません。 tn. exe のネ加月設正では、 Abort Are—You—There Backspace Disconnect Erase Escape H01d lnterrupt Break となっています。 く Ctr1—B>a く Ctr1—T> く BS> く Ctr1—B>d く Ctr1—K> く Ctr1—E> く Ct て 1 ー B > 五 く Ctr1—C> く Ctr1—B>b tn. rc には、設定したい特殊シーケンスを 8 進数で与 えます。設定する機能の名称は、フルスペルて書かなくて もよく、違いが区別できる先頭の 2 文字以 - ヒであれはか まいません。制御コードを通過させるには、 tn. rc ファ イルでこれらのコードを \ 377 に設定します。この \ 377 とは 8 進数で表した数字で、 10 進数では 255 、 16 進数 では 0 肅にあたります。こうすると tn. exe が何も設疋 しないと判断するようです。 すべてを通過させてしまうと、接続を終了しないかぎ り telnet に戻れないので、 Hold は設定しておきます。 telnet の一ヨ殳的な設定では Ctrl-] なので、これに合わせ て CtrI-] を表す 8 進数の \ 035 ( 10 進数では 29 、 16 進 数では Ox1d) に設定します。 私は次のように設定しています。 UNIX MAGAZINE 1992.3 \ 377 \ 377 \ 377 A> type *tcpip*tn. rc set bac set are set abO
連載 An lntroduction tO X Window System 中村眞 editres の使い方 前回まで、一般利用者がリソース設定をおこなううえで 必要な基礎知識として、おもに Athena ツールキットで設 定できる型と設定値について説明しました。今回は、これ らの知識をもとに個々のクライアント ( アプリケーショ ン ) の設定例を挙げることにしましよう。 従来のリソースの設定は、テキストエデイタで各行にリ 、設定値の並んだファイルを用意し、 xrdb ソース指疋、 を利用して登録していました。設定が単純で、しかもわす かの変更で期待する設定が得られるならこれで十分なので すが、部品の配置を細かく調整したり、複数の設定を変更 するときには、それなりの努力が必要でした。この場合に は、一度に設定を決めるよりすこしすっ確かめながら変更 するのがコツです。それには、リソース記述の変更と xrdb による登録、あるいは xrdb の -edit オプションを利用し、 変更の登録に合わせてリソース記述を xrdb 自身に更新 させるという作業を繰り返さなければなりませんでした。 X11R5 から、起動中のリソースを参照、設定するための ューティリティとして editres が提供されるようになり ました ( 図 1 ) 。今回は、この editres の機能と使い方につ いて説明します。設定対象のクライアントとしては、 xman editres の起動 を例に挙げることにします。 140 品の表示に関するメニュー選択に使います。 の、、 Tree" ボタンは、対象クライアントの階層的な構成部 editres の各機能を実行するためのメニュー選択に、右側 が用意されています。左側の、℃ ommands" ボタンは、 れます。最上段には、ポップアップのための 2 つのボタン editres を起動すると、ます図 2 に示すような表示が現 上から 2 段目の右側、広い領域は editres のメッセージ 表示に使われます。起動時には editres のバージョンなど カ俵示されています。 editres によるリソース操作が正常 に完了したか、異常が検知されたかなどをこの部分の表示 から知ることができます。 メッセージ表示左側の正方形の領域は後回しにして、ま す下の領域について説明しましよう。このもっとも広い領 域は、クライアント構成部品の階層を表示するものです。 部品は、部品名、クラス名、ウインドウ ID のいすれかで表 示できます。一見単純なクライアントのようでも、しつは 図ー editres による editres 自身の階層表示 囹砒凹 idge し一「 ee f0 「 i し res ( E i し「 es ). editres hPane paned porthole 「 1a を「 IP r00 し Xnan topBox fo 聞 he1pButton qui し But し on nanpageBut.t.on Search dialog la 1 narwa1Page ap 「 0P0 & UNIX MAGAZINE 1992.3
U 、 lX-Eth€、 rnet-PC 表 5 ファイルの車度比較その 3 ( パイナリファイル : 840KB ) 送り側 RAM ディスク ハードディスク RAM ディスク → → 受け側 ハードディスク RAM ディスク RAM ディスク フロッピーディスク 転送嗤間 ( 秒 ) フロッピーディスク→ ・プリンタサーバーもどちらでもかまわない ・サーバーではないマシンはユーサー認証だけおこなう ・プリンタサーバーではないマシンは、プリンタのつな がったマシンに対してリモートプリンタの設定 PC-NFS のクライアントは、 pcnfsd の動いている マシンでユーサー認証をおこない、ファイルサーバーを マウントします。一方、 PC-RFA のクライアントは、 avenfsd の動いているマシンでユーザー認証をおこない、 同じくファイルサーバーをマウントします。 プリンタの場合も、 PC-NFS のクライアントから pcnfsd の動いているマシンにマウントします。 PC-RFA のクライアントから、リモートプリンタとし てマウントされる avelpd か動いているマシンにプリン タか接続されていないときは、そのマシンではリモートプ リンタとして、実際にプリンタか接続されているマシンに データが充れるように設定しておきます。 ューサ、一認証がすめは、実際の NFS マウントはどの マシンに対しても 11 可能です。このように設定すれは、 PC-NFS と PC-RFA の両方を同時に使用できます。 その他 NIS について 山も丘では、はとんどの PC-NFS が NIS に対応してい ます。サホートされていると、 hosts ファイルに自分の ホスト名と NIS サーバーを登録しておけは、ほかのホス ト名は NIS から呼び出せます。 PC-NFS では、 ypset で NIS サーバーを設定する 引数に指定するホスト名が五。 sts ファイルに存在しない とエラーになります。 hosts にある場合はそのマシンに 呼ひ掛け、答がなけ川まプロードキャストで捜します。 PC-NFS の NIS の機構は UNIX とすこし違うの で、利用する場合は次のようにします。ます、、 A> net ypset 自分のホスト名 " とします。自分のホスト名はと りあえす hosts に書かれているので、自分自身に呼ひ掛 11 ディレクトリが export されている必要はありますが。 UNIX MAGAZINE 1992.3 13 9 52 29 けますが、 NIS サーバーではないので答は返ってきませ ん。そこで、プロードキャストで NIS サーバーを捜しに いき、みつかると動き始めます。しかし、この手続きに 30 秒ほどかかります。 PC はワークステーションにくら べて頻繁に起動しますから、この 30 秒というのは実用的 とはいえません。そこで、 hosts ファイルに自分のホス ト名と NIS サーバー名を書いておきます。 PC-RFA でも、 hosts に存在しないとエラーになるの は同じです。しかし、自分のホスト名か書いてあっても、 答は返ってこないので NIS サーバーではないと判断した あと、プロードキャストて艘さすにそこであきらめてしま います。つまり、 NIS サーバーが hosts に書かれていな いと動かないのです。 NIS はたしかに便利なのですが、実際に NIS が使える のは PC-NFS に関連した部分だけで、 telnet や ftp は 利用できません。 NIS や PC-NFS があとで作られたと いう事もありますが、 telnet や ftp からも利用できる ようにしてほしいものです。 ネットワークを OS に組み込む UNIX と PC の両方を使っていて感じるのは、 UNIX ではネットワーク機能が OS に組み込まれていて、なん の心配もなく使えるのに対して、 PC ではそう簡単にはい かないということです。 どの OS を使うのか、 Windows をどうするのか、どの Ethernet カードを使うのか、どのネットワーク・ソフト ウェアを使うのか、どのアフリケーションカカくのかとい うように、悩むことが多すぎます。アプリケーションを作 る側もすべての竟でテストするのは不可能ですから、環 境を限定せざるをえません。 このあたりをなんとかしないと、誰でも使える PC- LAN の時代はやってこないのではないでしようか。 意 5 同時起動対応に注意 1991 年 11 月号で、 LAN で同時に使用できる数をネッ トワーク・ライセンス機能で制限できれば、無駄な出費 がなくなってよいというお話をしました。 101
表 3 ファイルの車度比較その 1 ( パイナリファイル : 840KB ) ープ 力法 ftp ftp ftp ftp PC-NFS PC-NFS PC-RFA PC-RFA 方向 ( ws → PC ) ( PC → ws ) ( ws → PC ) ( PC → ws ) ( ws → PC ) ( PC → ws ) ( ws → PC ) ( PC → ws ) Net/One( 秒 ) EXOS( 秒 ) 11 9 11 8 49 13 15 9 10 27 9 58 備考 binary mode bi nary mode &SCII mode aSC11 mode v2.00d v2.00d V2.0 V2.0 表 4 ファイルの車度比較その 2 (ASCII ファイル : 1.2MB ) 力法 ftp ftp ftp ftp 方向 ( ws → PC ) ( PC → ws ) ( ws → PC ) ( PC → ws ) Net/One( 秒 ) EXOS( 秒 ) 16 12 17 11 14 14 62 29 備考 binary mode binary mode ascii mode aSC11 mode 図 1 PC-NFS と PC-RFA の同時運用 コマンドを付けて起動することで、プリンタのスプール・ ファイルにシンポリック・リンクしてプリントします。 PC-RFA PC-RFA では、 PC から UNIX マシンの avelpd に 9 付属の avelpd のソースプログラムを見ると、 TCP のポート番号 avenfsd が、 PC-NFS のユーサー認証サーノヾーの pcn- しかし、 PC-RFA のユーザー認証サーバーである RFA を同時に運用する必要があります。 このテストをおこなうためには、 PC-NFS と PC- トを続けています。 らしいので、 PC-RFA への切替えを検討しており、テス ある Net/One が PC-NFS のサポートを縮小している 使っているとお話ししました。しかし、発売元の 1 つで 以前、勤務先の電通国際情報サーピスで、 PC-NFS を PC-NFS と PC-RFA の同時運用 または /etc/hosts. equiv ファイルの成疋 ・リモートプリンタを許可するための / etc / h 。 sts ・ lpd ・ UNIX 側の特別なスプール・ディレクトリ窈旨定 る必要はありません。 このため、仮想プリンタの設定時に次の項目を設定す ションとして付けているだけです。 タをマウントするときに指定したプリンタ名を、 -p オプ を渡すガ去をとっています。このときに、 PC 側でプリン て、その avelpd が lpd に lpr コマンドを使ってデータ TCP コネクション 9 を張り、データを渡します。そし 100 5172 を使っています。 リモートプリンタ′ N 工 S スレ avelpd aven f sd ファイルサーバー プリンタサーバー pcnfsd / NI S マスター PC—NFS PC —RFA プリント ファイルアクセス ← - ユーザー認証 PC -NFS fsd と同しマシンでは起動できません。また、 NIS を使用 するときは、 pcnfsd や avenfsd が NIS サーバー 10 上で 動いている必があります。そこで、 2 台の NIS サーバー ( うち 1 台はスレープサーバー ) で pcnfsd と avenfsd を別々に起動するようにします。 現在は、図 1 のガ去て漣用しています。 UNIX マシン は 2 台以止必要ですが、とりあえすは運用できます。 必な設定を列挙しておきます。 ・ UNIX マシンを 2 台以 E 準備 ・ 1 台を NIS のマスターサーバーに成疋 ・もう 1 台をスレープサーバーに設定 ・ 1 台に pcnfsd をインストーノレ もう 1 台に avenfsd と avelpd をインスト ・ファイルサーバーはどちらでもかまわない 10 スレープ NIS サーバーでもかまいません。 ーノレ UNIX MAGÄZINE 1992.3