特集ドン一ときたら困るけど、ネットワーク卸里・・ 2 /etc/exports ファイルで設定します。 SunOS の場合、 マシンを導入した時点ではこのファイルは存在しませんか ら、自分で ( もちろんスーパーユーザーになって ) 新しく 作る必喫があります。 /etc/exports ファイルは次のように記述します。 ディレクトリのパスーオプション [ , オプション ] ・ ディレクトリのパス " は、工クスポートしたいディレ クトリを糸寸パスで言当します。ここでは /project です ね。、、オプション " には、工クスポートするクライアント や、アクセス権限などを記述し、複数のオプションがある 場合は ( カンマ ) で区切ります。おもなオプションに は、以下のものがあります。 ・ access = hostname [ :hostname] ・ hostname" で指定したクライアントに対してだけ、 ェクスポートします。複数のクライアントを指定する場 合は、ホスト名を、、 ( コロン ) で区切ります。このオ フションを省略すると、すべてのマシンに対してェクス ポートします。 読出し専用でェクスポートします。このオプションを 指定した場合、クライアントが、 r でマウントしよう としても書込みはできません。書き込む必要のないディ レクトリや、むやみに書き込んでほしくないディレクト リをェクスポートするときに用います。また、このオプ ションを指定しなければ、クライアントはマウントした ディレクトリに対して読み書き可能になります。 ・ rw = hostname [ :hostname] ・ 指定したクライアントだけか読み書き可能になり、それ 以外は書き込めません。ホスト名を何も指定しないと、 クライアントのスーパーユーザー以外はすべて読み書き 可能になります。 ・ root = hostname [ :hostname] ・ 指定されたクライアントのスーパーユーサーは、その権 限でディレクトリにアクセスできます。ホスト名を指定 しない場合、すべてのクライアントに対して、スーパー ューサーの権限でのアクセスは不可能になります。 このオプション自体を省略すると、クライアントのス ーパーユーサーは、、匿名ューザー " として扱わ anon UNIX MAGAZINE 1993.6 オプションて指定されたユーザー ID となります。 たとえは、 monkey 君がマシン coconut の /project に対して、、、マシン banana だけがアクセス可能で、スー パーユーザーのアクセスも許す " 設定にしたい場合、 / etc /exports は次のようになります。 /proJect —access=banana,root=banana スーパーユーサーのアクセス (root オプション ) は慎 重に扱いましよう。スーパーユーサーのアクセスを許した 場合、いつの間にかファイルか書き換えられたり、消え てしまうような、不注意による、、事故 " カ起きたりします。 したがって、 root オプションは必要最小限のクライアン トにだけ指定するようにしましよう。また、ホスト名を指 定するオプションに関しては、ホスト名の省略とオプショ ン自体の省略では、意味がまったく異なるので注意が必要 です。 exportfs コマンド /etc/exports に記述した設定をマシンに反映させる コマンドが、 exportfs です。さまざまなオプションが ありますが、普通は、 exportfs —a または、 exportfs パス名 といった使い方をします。 /etc/exports に書かれたディレクトリのパスを引数 に指定すると、そのエントリだけを工クスポートします。 ー a ・オプションは、 これに対し、 /etc/exports の 全工ントリを工クスポートする " ことを意味します。また、 引数を省略すると、現在工クスポートしているディレクト リ ( およびオプション ) を表示します。 coconut# cd / coconut# exportfs —a coconut# exportfs /project coconut# —access=banana, root=banana このほかにも、工クスポートを取り消すオプションなど がありますが、これらについては exportfs(8) のオンライ ン・マニュアルなどを参照してください。 31
こいつらをどない sarumata: で、ちょっと訊くけど、 するつもりや。 monkey: ええと・ どないしましょ ? sarumata: 困ったやっちゃなあ。ちゃんと考えんかい ! ! monkey: あー ! 叱られてしまった monkey 君、計算機の段ボール箱を 前にして考え始めました。 「どないしようかなあ。面倒くさいから、このディスク とプリンタ、則にセットアッフした bana Ⅱ a につないで おしまいにしようかなあ。せやけど、それやったらもう 1 台言 t 算機、買うた意味がないなあ。やつばり、買うとき に思てたように、新しくきたやつにディスクとプリンタっ ないで、サーバーにすんのがええやろな・・ それでは、 monkey 君がワークステーションをファイ ルとプリンタのサーバーにする様子をみていきましよう。 実際にセットアップを始める前に、ちょっと石忍です。 サーバーってなんでしよう、それとクライアントは ? 、、サ ロ 基本的な用語 sarumata: せや、ちょっと訊くけど、サーハーってな イアントについて質問してみましよう。 言葉です。ここでちょっと、 monkey 君にサー " は、前号で出てきた、、クライアント " と対になる ーとクラ sarumata: それは鯖やがな ! ! り物で、酢でしめてもおいしいやつ。 。さーば一ゆうたら、ええと、光 monkey: ええと・ sarumata: あれ " では分からんがな。 monkey: へ ? そんなん、あれです。 んや ? てて、そうそう、クライアント、そう、クライアント monkey: ええと、ディスクとか、プリンタとかが付い sarumata: どんなふうに偉いんや ? monkey: ええと、向こうのほうにあって偉い計算機。 うか ? もうすこし聞いてみましよう。 どうしたのでしよう、 monkey 君。分からないのでしょ 22 sarumata: です。 monkey: 向こうのほうにあって、クライアントがディ スクやプリンタを使わせてもろうてる計算機がサー sarumata: ふんふん。まあまあやな。そしたら、 X っ ちゅうウインドウ・システムがあるやろ。 monkey: はいはい。それで ? sarumata: あれも、サーバーとクライアントになって monkey: あれ ? はないで ? sarumata: そしたら、サーバーは、、向こうのほう " に monkey: 自分の向かってる計算機で動いてます。 sarumata: せやから、どこや ? monkey: そんなん当り前です。 sarumata: あのサーバーはどこにある ? monkey: そうですね、そういえば。 るな。 ほうがよさそうですれはかにも、いくつかそんな言葉が が、意外とあやふやなことがあります。ちゃんと確認した くつかうので、分かっているつもりになっているのです う言葉は、ネットワークを構築したり、利用するときによ けっこうあやふやですね。サーバーとクライアントとい あります。たとえば、 ・ネットワーク ・ローカルとクライアント などです。、こんなん当り前やがな " と思わす、 石忍しておきましよう。 ネットワーク ちょっと ますは、、ネットワーク " から始めましよう。一勺に、 ネットワークという言葉はたいへん広い未をもっていま す。たとえば、テレピ番組のなかでも、「この番組は 38 局、 全国ネットでお送りしております」というふうに、ネット ワークという言葉はつかわれています。しかし、この場合 のネットワークはコンピュータや LAN とは関係ありま せん。 それではコンピュータ・ネットワークとは、一殳にど のように解説されているのでしようか。『 1993 年度現代 用言韶 ) 知識』 ( 自由国民社刊 ) によると、 UNIX MAGAZINE 1993.6
リモートにあるファイルシス 「リモート・ファイルシステム」と テムを指すときに 別の間違いもあります。 ing(RFS) 」があります。これも、ネットワークを通じて 言ったとします。よく似た言葉に「 Remote File Shar- ファイルを共有すん欟冓で、 UNIX SystemV Release 3 24 ディスクをつなげよう ロ 箱から出してプートして・・ 。その前に、大事なことがあ 用語もちゃんと理解できたところで、とりあえすマシンを 待望のマシンとディスクを目の前にした monkey 君、 とに注意しましよう。 とクライアントという彳難リは、サービスによって変わるこ 有に関してはクライアントになります。つまり、サー イルを利用しているプリンタサーバーの場合、ファイル共 自分はファイルをもたすに、ファイルサーバー上のファ 、出力要求を出す言算機がクライアントとなります。 受けて、接続されているプリンタに出力する計算機がサー 共有するシステムの場合、ほかの言 t 算機からの出力要求を といいます。たとえは、ネットワークを通じてプリンタを サーパー、そのサービスを利用する計算機をクライアント ある 1 つのサービスで、サービスを提供する計算機を いる画面に何かを描くというのもそうです。 などのサーピスもおこないます。それから、 X カ甘是供して のディスクやファイルシステム、ネットワークによる通信 ることでしよう。そのはかに、ファイルを置いておくため のでしようか。言 t 算機というくらいですから、ます計算す それでは、計算機はどのようなサーピスを提供している に考えます。 される、、サーピス " です。ですから、このサーピスを中心 うと、利用するのは言算機ではなく、計算機などから提供 いるのは計算機なので無理はないのですが、理屈つほ。くい 中心に考えてしまったからです。たしかに、いつも使って " と、、クライアント " です。、、 ? ? " の原因は、ⅱ算機を 最後は、 monkey 君が、、 ? ? " になってしまった、、サー サーパーとクライアント うです。 ら Remote File System の略だと勘違いする人も多いよ 以降で採用されているものです。 RFS は、 NFS の類推か りましたね。箱から出すときに、すべてのパーツがあるか どうかート分に確認しましよう。 「ええと、さっきの発主書と送り状どこやったかいな」 発注書 名 SPARCstation ( 32MB メモリ / 400MB ハードディスク / 19 インチ・カラーモニター ) 外付け 1.3GB ハードディスク (SCSI インターフェイス ) 日本語 PostScript プリンタ ( RS232C インターフェイス / 400dpi ) 「ケープルとかあるかいな ? ・・ 1 1 1 「大丈夫みたいや。よっしや組み立てて、プートや ! 」 前回と同しように必要な設定をしてから、マシンをプー トしなおします。 「ええと、ホスト名は、、 coconut " で、アドレスは、、 133. 1.12.98 " と。前にやってるし、今回は楽勝ゃな」 「おつ、ログイン・プロンプトが出た」 このマシンには 1.3GB の外付けハードディスクが付い ており、彼の抱えているプロジェクト内で好きなように使 えます。ます、新しいマシンを NFS サーバーとしてセッ トアップし、ホームディレクトリやプロジェクト専用の ディレクトリを、ネットワーク上で共有できるようにしな ければなりません ( といっても、まだマシンは 2 台です が・・ 「自分のアカウントも作ったし、ますはログインし coconut にログインした monkey 君、つながっている ディスクの容量を df コマンドで確かめます ( 図 1 ) 。 「あれ ? sd0 なんとかは内蔵ディスクやろ。はな、 1.3GB はどこへ消えてん ! ? もしかして、自分でセットアップせ なあかんのやろか・ 仕方なくマニュアルを引っ張り出した m 。Ⅱ key 君、ど うやら、外付けハードディスクは自分でつながなければな らないようです。 「やつばりなあ。計算機とディスクのあいだは、ちゃん とケープルでつながんと、ディスク、使われへんわなあ。 せやけど、どないしてつなぐんやろ ? 」 丘では、ワークステーションを購入すると、販売代 瑚などがちゃんと設置に訪れて、ケープルもつないでく UNIX MAGAZINE 1993.6
連載 /NET WORTH—O 図 1 Sun ONC RPC プロトコル User AppIication Programs Network lnformation MOUNT NIS (NIS) Serv ice Network FiIe System (NFS) RPC/XD R PO mapper し 00k manager Transport (TCP, UDP) Network 0 P) Data link PhysicaI(Ethernet) ビスと情報サービスについてみていこう。 UNIX MAGAZINE 1993.6 はシステム・ライプラリ・ルーチンのなかに隠れて見えな ケーションのレベルでは、クライアント・サーバーモデル 報をもっていれはそれをクライアントに送り返す。アプリ YP サーバーに要求する。 YP サーバーは、要求された情 名前やそのほかのシステム情報が必要になると、それらを YP のクライアント ( ローカルなワークステーション ) は、 ライアント・サーバーモデルにもとづいて構築されている。 のネットワーキングでよくあるように、 YP と NFS はク っとも重要なアプリケーションとして開発された。 UNIX puting) サーピス、もしくはネットワークの市場単各のも YP と NFS は、 Sun の ONC(Open Network Com- 多い。 スのサーピスと NFS は、セットで取り扱われることが System) とともに利用が始まった。実際、 YP データベー くは NIS は、 1984 年に Sun の NFS(Network File formation Service) として引き継がれている。 YP もし YP(Yellow Pages) と呼ば矛現在は NIS(Network ln- されたサービスの 1 つでしかなかった。これは、最初は もと名前サーピスは、システム情報を提供するために開発 理者にとっては少々手間のかかるシステムである。もと まったので、 Sun ワークステーションのネットワーク管 Sun の名前サービスはかなり大規模なものになってし AppIication layer 139 スコードを商品として辱合した。その結果、 NIS 、 NFS の に対しても、ライセンス契約を結んだうえで ONC のソー XDR 、 NFS) を積極的に公開し、さらにはかのべンダー 市場戦略の一環として ONC の主要な構成要素 (RPC 、 発された製品だった。しかし Sun は、ネットワークの もともと YP は、 Sun のワークステーション専用に開 名前やプロトコルの言当も同様だ。 から始まるものが多く、そこで用いるサプディレクトリの ユーティリティ・プログラムの名前には、いまでも、 yp' いう呼び方もするかもしれない。いすれにせよ、 NIS の NIS という呼び名を用いるつもりだが、ときには YP と nications の登録商標だったのだ。このコラムのなかでは 名前は、英国の電電公社にあたる British Telecommu- うかチェックを怠ったために間題が生したのである。この 門の担当が、その名称がほかですでに使われていないかど を、、 YeIIow Pages" と命名する際に、マーケティング部 NIS に変更せざるをえなくなった。 Sun の名前サーピス ところで、 1989 年に Sun は、 YP サーピスの名前を ク市場戦略の中核となっている ( 図 1 ) 。 に構築されている。これらは、 Sun の ONC ネットワー Data Representation) という 2 つのプロトコルを土台 RPC(Remote Procedure Call) と XDR(eXternaI より低層レベルでは YP と NFS の双方が、 Sun の れ、返り値には YP サーバーから得た答を返す。 ルは、そのなかで YP クライアントのリクエストに変換さ い。たとえば、 gethostbyname というライプラリ・コー
図 7 /etc/rc. local の NFS サーパーに関する部分 # if /etc/exports fi1e exists become nfs server if [ —f /etc/exports ] ; then > /etc/xtab exportfs ¯a nf sd 8 & echo —n ' nfsd' if [ -f /etc/security/passwd. adjunct ] ; then # Warning ! Turning on port checking may deny access tO # 01der versions (pre—3.0) 0f NFS clients. rpc ・ mountd nfs—portmon/W1 ” echO ー adb —w /vmunix /dev/kmem >/dev/null 2 > & 1 else rpc . mountd —n f i NFS サーバーの仕事人 「さて、ェクスホートの設疋は終ったし、これで banana からアクセスできるようになったはすや。 (banana に root でログインして ) fstab を書いてマウントー発 ! ! ・・あれ、マウントでけへん。ちゃんと工クスポートし てるはずやのに、なんでやねん ! ? 」 私たちにも同じような経験があります。 NFS サーバー のディレクトリを工クスポートして、いざクライアント側 でマウントしようとしても、次のようなメッセージが出て マウントできません ( もちろん、クライアント側は mount をスーパーユーサーで実行しています ) 。 banana# mount coconut : /prOJ ect /proj ect mount : coconut : /prOJ ect server not responding ・ する前と後では、何かが違うようですれ 今度はきちんとマウントできるようになります。 ところが、いったん NFS サーバーをリプートすると、 /proj ect mount : retrying RPC : Program not registered リプート 32 デーモンが必要です。 /etc/rc. local を見ると分かりま なく、実際のアクセスを処理する、、影の仕事人 " 、つまり NFS サーバーには、工クスポートの設定 , 実行だけで は、 exportfs コマンドだけではありませんオ飃 とみなす " ことカ竕かります。このなかで実行しているの /etc/exports ファイルが存在すれば、 NFS サーバー イルには、図 7 のような部分があります。これを見ると、 マシンのプート時に実行される / etc / て c .1 。 cal ファ すが、 rpc. mountd と nfsd という 2 不頁のデーモンが 起動されます。それぞれの彳齬リは、次のようになります。 ・ rpc. mountd クライアントからのマウント要求を受け、ェクスポート 情報に従ってマウント許可を判定します。 ・ nfsd クライアントからのアクセス要求を処理し、結果をクラ イアントに返します。 4 個ないし 8 個のデーモンか伺時 に起動し、処理を並行しておこないます。起動するデー モンの数はマシンの負荷と上」します。数を増やすとア クセスの応答は速くなる反面、マシンの負荷か高くなり ます。 つまり、マシンをリプートすると必要な竹喋が自重加勺に おこなわれるため、正常にマウントできるようになるので す。手動でこれらのデーモンを起けるには、スーバーユ ーサーになって以下のように実行すると、 NFS サー のセットアップは完了します。 coconut# cd / coconut# rpc. mountd —n coconut# nfsd 8 coconut# showmount コマンド NFS サーバーの状況は exportfs コマンドで見ること ができますが、それにはまず NFS サーバーにログインし なければなりません。したがって、 NFS サーバーにアカ UNIX MAGAZINE 1993.6
連載 /NET WORTH—O マットのかたちで定義している。 RPC 用語として、 Sun はこのデータフォーマット・プロトコルを XDR と呼んで いる。これは、 16 ビット、 32 ピット、および 64 ピット の整数 (integer) 、非負整数 (unsigned integer) 、列挙 型 (enumerate) 、真偽値 (boolean) 、 32 ビットおよび 64 ピットの浮動小数点数 (floating-point data) 、 C 言 言韶 ) 文字と文字列、固定長ならびに可変長の配列、そのほ かのデータまたはデータブロック、構造体 (structure) 、 共用体 (union) のフォーマットを定義している。 XDR は、 C から呼出し可能なライプラリ・ルーチン として実装されており、これらのデータ型を RPC のネ ットワーク形式とのあいだで変換する。ネットワーク形式 は、 (lntel の製品を使っている方には気の毒だが ) big- endian 、つまり最日立バイトが最初に転送される形式で、 必要であれば各データ型はネットワーク転送の際に 32 ビ ット長に拡大される。仮にクライアントとサーバーの双方 が little-endian( 最下位バイトが最初に転送される形式 ) であっても、 RPC の全パラメータは転送する前に big- endian のネ・ツトワーク形式に変換される。 クライアントとサーバーのあいだでやりとりされる、パ ラメータや結果の値を表すリストの形式は、この授受にか かわるクライアントとサーバーのあいだで合意がとれてい ればいい。もともと SunRPC サーピスでは、ネットワー クを通して要求または応答をおこなうために、 TCP ( コネ クションを用いる通信 ) または UDP ( コネクションを利 用しないデータグラム型通信 ) のどちらを使ってもかまわ ない。しかし、 Sun が定義した RPC の大半は、バケッ トの交換に UDP を利用している。理由は、たいていの RPC のデータのやりとりはごく矢可寺間でおこなわれるし、 UDP のオーバーヘッドは TCP にくらべて小さいからで ある。 UDP バケットと TCP バケットのどちらも、そのな かに収めて運ぶアプリケーション用パケットのフォーマッ トを特定するために 16 ピットのポート番号を利用してい る。 Sun が RPC の実装に際して UDP または TCP のき わめて大きなポート番号を用いなかったのは、賢明な判断 であった。 RPC のサービスに用いるポート番号は、実行 のたびに重加勺に割り当てられる。 RPC はポート番号を割 り当てるポートマッパー (Port Mapper) のために、専 用のポート番号を用意している。ポートマッパーは、そ 144 のネットワークの RPC サーピスで利用可能なポート番 号のなかから、使われていないものを選び出し、要求を出 した RPC サーピスにこれを割り当てる。 RPC ポート マッパーのデーモンに割り当てられた UDP と TCP の ポート番号は、 111 である (UDP と TCP のポート番 号についての詳細は UNIX REVIEW1992 年 2 月号の、 「 Port Numbers and Sockets for TCP/IP 」を参照し てはしい ) 。 RPC サービス NIS などて利用されている RPC サービスは、 32 ピット長の数字で定義されている。 ・プログラム ( サービス ) 番号 ・フログラム・ノヾージョン番号 手続き (procedure) 番号 3 つの RPC のプログラムは、 32 ビットのサーピス番号で 識別される。 RPC をサポートする UNIX マシン上の /etc/rpc ファイルには、あらかしめ定義された RPC サービスの名前と番号のリストカ材褓内されている。 Sun は 自社製品で提供するサーピスのために 0—0x1FFFFFFF までの番号を予約しており、ユーサーが利用できる RPC のサーヒ、ス番号は 0X20000000 ~ ()x3FFFFFFF までと なっている。 NIS か利用する RPC サーピスには、以下 のものカ哈まれる。 ・ YPPROG ーー 100004 (ypserv サーノヾー・デーモン ) ・ YPBIND ーー 100007 (NIS サーノヾーを捜す ypbind クライアント・デーモン ) ・ YPPASSWD - ー - 100009 (yppasswd コマンドが passwd マップファイルを更新するのに使用 ) ・ YPUPDATE ーー 100028 ( 特定のマップファイル・レ コードを更新するのに使用 ) ・ YPXFR— 100069 ( マップファイルをまるごと転送 するのに使用 ) これらの各 RPC サービスは、それぞれのサーピスこ とに特定の手続き呼出し番号を定義している。また、バー ジョン番号を用いることで、プロトコルを改定した場合で も順次移行をおこなうことが可能だ。旧いバージョンのプ UNIX MAGAZINE 1993.6
3 通信プロトコル言語入門 近刊 ・水野忠則 ( 三菱電機 ) 監修 1 通信プロトコル言語とは 2 仕様記述言語 / LOTOS , Estell, SDL, ベトリネット , Z, ASL, OBO 3. プログラム記述言語 / CH に L , C, Ada, super 4 試験仕様記述言語 / TTCN 5. プロトコル構文規定言語 / ASN. 1 4 クライアント・サーパ・システム ・田窪昭夫 ( 三菱電機 ) 著 近刊 1 . データ処理形態の変遷 2. クライアント・サーパ・システムの条件 3. クライアント・サーパ・システムの構成要素 4 . 0 S とネットワーク 0 S 5 . グループウェア 6 . クライアント・サーパ・システムの発展形態 ( 発売中 ) 散システム入門 ・水野忠則・井手口哲夫他著 A 5 判・ 264 頁定価 2 , 700 円 2 オープンネットワーク OS 仄門 ・田畑・小花・森野・朝倉・水野共著 A5 判・ 196 頁定価 2 , 100 円 以下続刊 Windows NT の世界 分散マルチメティア処理 囮通信システム仕様記述法としてのベトリネット マルチメティア通信 仕様記述言語 - SDL 囿グループウェア入門 オープン指向のトランサクション処理 オフジェクト指向インテリジェント・ネットワーク 亘プロトコル構文規定言語 ASN. 1 プ分散コンピューティングー DCE 入門 高橋薫・神長宏明共著 仕様記述言語 - LOTOS 斉藤正史・山口義ー共著 LJN Ⅸによる分散オペレーティング・システム 15 13 10 9 6 5 資料請求 N 。 .069A TEL 03 ー 3260 ー 6161 FAX 03 ー 3260 ー 6059 〒 162 東京都新宿区市谷田町 2 ー 7 ー 15 近代科学社 えている読者ち最適な本である。 何であるのか , また NT の概要を理解したいと考 テムを受け持つ重要な役割を担っている。 NT とは うとしているマイクロソフトにとって , 上位シス ファミリーでコンヒ。ュータを広範囲にカバーしよ に開発を進めている次世代 OS の Windows NT は , 米マイクロソフト社が , ハイエンド・パソコン向け サン・ソフトの Sola ⅱ s2 ℃ , 旧 M の OS / 2 ℃に対抗して , 山上明・秋間文和共著 B5 変・ 1 頁定価 1 , 7 円 BERKELEY SOFTWARE DESIGN, INC. BSD ノ 386 e n 1 。 0 鶚 BSD / 386 は、アメリカの BSDI 社で製作された、 追加モジュールの必要ない完全なオペレーティ います。 ティングシステムには、ソースコードも含まれて コストパフォーマンスに優れた、 ングシステムのパッケージです。 このオペレー この機会に、 IBM pc 互換機で動作する " 本物 " す。 グラムを BSD/386 上で実行することさえ可能で 広範な拡張がなされており、一部の DOS プロ の BSD を是非お試しください。 BSD/386 価格表 メ、ディア CD-ROM 8mm EXABYTE TAPE QIC- 15 叩 50M) 大学サイトライセンス ( 1 年間 ) 追加ライセンス ( 1 台あたり ) \ 175 , 08. \ 179 , 08.- \ 179 , 0 開 .- \ 320 , 08.- ¥ 30 , 08.- 注 : 消費税は含まれておりません。 対応機種 3 跖 6 の CPU を搭載した殆どの旧 M 互換機 使用メモリ 4 、止 yte 以上必要 ( xw 。 w 使用の場合 8M 以上 ) ハードティスク 1(I)Mbyte ~ Ⅷ y に程度を利用 ( CD - ROM 利用など条件により異なります ) 対応インターフェースなど技術的な詳細につい てはお問い合わせください。 F0「eにし ne BSDI 社国内正規代理店 株式会社フォア・チューン BSD / 386 係 〒 154 東京都世田谷区駒沢 2-11-3 第ニ集花園ビル 8 階 TEL : 03 ( 3667 ) 2707 FAX : 03 ( 5481 ) 8432 資料請求 N 。 .89 B
特集ドン一ときたら困るけど、ネットワーク卸里・・ 2 なに、なに。 そんな真剣な顔されると困るけど、この名前の由 来は、昔々のコンピュータのメモリに遡るんや。 / 、えーー 0 kozaru: osaru: kozaru: りは、、、メモリイメージを吐く " ってゆうたほうが、し る機械なんてあれへんから、、、コアを吐く " ってゆうよ osaru: そうや。いまの世の中でコアメモリなんか使って ようになったんですか。 kozaru: それで、メモリイメージのことをコアってゆう ました。いまお目にかかれるのは博牛埴自ぐらいでしよう。 たものです。ドーナッ 1 つで 1 ビットの情報か記憶でき 分に、磁性体でできたドーナッ状のものを斜めに取り付け magnetic core とは、メッシュ状の細い導線の交差部 ゆうんや。 たんや。その磁心のことを英語で magnetic core って たころ、コンピュータのメモリゆうたら磁心を使って osaru: まだ、いまみたいに半導体がメジャーやなかっ kozaru: それって、ひょっとしたら・・ ろか。人間もコア吐くときあんねんで。 osaru: そらよかった。もうひとつついでに教えといた 賢くなりましたわ。 kozaru: でも由緒ある名前だったんですね。またひとっ っくりくるんやけどな。 UNIX MAGAZINE 1993.6 てパワーアップしていきましよう。 カまります。いろいろ大変なこともありますが、頑張っ の 3 つです。いよいよ本格的にワークステーションの強化 3. プリンタをつなげよう 2. ハードディスクをつなげよう 1. サ→ヾーとクライアントってどんなもの ? さて今回のメニューは、 わ、に ? なかなか楽しくて勉強になりますよ。 もつ言葉がたくさんあります。気づいたときに調べると、 辺にしておきましよう。ほかにも、思いもよらない由来を 2 人の会話は危ないほうへいっているようなので、この ロ どんどん増えるワークステーション sarumata: どないや、セットアップのぐあいは ? monkey: ええ、なんとか。とりあえず、クライアント にはできました。 sarumata: そうか、そうか。ようやったな。 monkey: これくらいやったら、なんとかできますわ。 sarumata: クライアントの設定はそないに難しくない からな。そうゆうたら、新しい言算機とディスク、それ 発注書 SPARCstation と見せてもらいましよう。 どんなものかやってきたのでしようか。発注書をちょっ monkey: ええ、さっき。 からプリンタ届いてるか ? ( 32MB メモリ / 400MB ハードディスク / 19 インチ・カラーモニター ) 外付け 1.3GB ハードディスク ( SCSI インターフェイス ) 日本語 PostScript プリンタ ( RS232C インターフェイス / 400dpi ) sarumata: えらいぎようさん箱があるな。 1 1 1 monkey: そうですねん。何がなんやら分かりませんわ。 sarumata: 注文したもん、ちゃんときてるか確かめた か ? monkey: sarumata: 困ったやっちゃなあ。こんなときには、何 を送ったかの一纛送り状カ咐いてるはすやから、それ と実際に送られてきたものとを確認するもんや。 monkey: なるほどー ! sarumata: あと、発注書と一致してるかも確認したほ うがええな。 monkey: 疑い深いですねえ。 sarumata: そうやない。ディスクをつなごうとして、 くて泣きをみるのは、あなたです。 や発注書を照合するようにしましよう。ケープルが足りな 計算機などが送られてきたら、かならす、実物と送り状 monkey: 分かりました。 ケープルがなかったら困るやろ。 21
特集ドン一ときたら困るけど、ネットワーク卸里・・ 2 ウントがないと、工クスポートされているディレクトリを 調べることはできません ( 誰かに頼めるなら別ですが ) 。 このようなリモートマシンの工クスポート状況を調べ る便利なツールとして、 showmount コマンドがありま す。使い方は簡単で、 /usr/etc/showmount —e NFS サーパーのホスト名 です。たとえば、 NFS クライアントである ba Ⅱ ana から、 NFS サーノヾー coconut の工クスポ のようになります。 banana% /usr/etc/shovmount —e export list fO て coconut : /project banana banana% ートを調べる場合は次 coconut 読み書きできるか、あるいはスーパーユーサーでのアク セスか可能かなどは分かりませんが、とりあえす、どのデ ィレクトリがどのマシンに工クスポートされているかは分 かります。このはかに、オプションを指定してクライアン トがマウントしているディレクトリなどの情報を調べるこ ともできます。これらについては、オンライン・マニュア ル showmount(8) などを参照してください。 NFS 使用上の注意点 NFS を使ってネットワーク上でファイルを共有すると、 ディスクの量か節約でき、インストールなどの竹業も省力 化できるなど、大変に便利です。しかし、設定ミスや NFS サーバーのダウンなどによって、思わぬトラブルが発生す ることもあります。そこで、 NFS を使ううえでの注意点 を挙げておきます。 ( 1 ) ハードマウントにはラも意 NFS クライアント側の設定オプションとして、 soft あ るいは五矼 d が選べます。前者を、、ソフトマウント " 、後 者を、 ードマウント " と呼びます。 NFS のサーバーが なんらかの原因で応答しなくなると、ソフトマウントの場 合はエラーを返しますが、ハードマウントの場合は応答が あるまで ( または retry オプションで指定された回 要求を繰り返しおこないます。 実際の運用を考えた場合、 NFS サ→ヾー上のファイル カリ用できないと仕事にならないことが多いので、通常は ハードマウントにします。ハードマウントにしておくとデ UNIX MAGAZINE 1993.6 ータは保証されますが、 NFS サーバーの応答がなくなる と、クライアントも沈黙してしまいます。これを防ぐには、 intr オプションを同時に指定し、キーポードから処理を 中断できるようにするとよいでしよう。 ( 2 ) ユーサー ID とグループ ID の管理はしつかりと ! ! たとえば、マシン banana に登録された saru 君と、マ シン coconut に登録された monkey 君のユーザー ID が同じだったとしましよう。 m 。 nkey 君のファイルがあ る coconut のディスクを banana がマウントした場合、 ューサー ID が同しなので saru 君は monkey 君のファ イルか読み書きできてしまいます。 NFS を使っている竟では、ディスクを共有している すべてのマシンで、ユーザー ID やグループ ID を統一す る必要があります。マシンの数か増えてくると、これはた いへん手間のかかるイになります。これらの情報を集中 的に管理するシステムとして、 NIS (Network lnforma- tion Service) がありますが、これについては次号以降で 紹介します。 ( 3 ) 転んでも大丈夫ーーパックアップ NFS を使ってファイルをサーバー上で集中管理すると、 ソフトウェアのインストールイ樔なども一度ですむのでと ても楽です。しかし、サーバーにファイルを集中させるは ど、サーバーのディスクがクラッシュしたときのダメージ は大きくなります。 このため、 NFS サーバーの定期的なバックアップが必 要になります。ハードディスクの内容をテープなどにバッ クアッフするガ去については、特集の後半で紹介する予定 ですので、もうしばらく待ってください。 フリンタの接続 ディスクの接続と NFS サーバーの設定力絲冬った翌日の ことです。 「 NFS サーバーのはうはなんとか動いてるみたいやな。 ええと、きようは何をするんやったつけ ? 」 と monkey 君、ばんやりしていると sarumata さんが やってきました。 sarumata: どないしたんや ? monkey: いや、ちょっと。 NFS サーノヾーの成疋もでき たし、偉いなあと自分を褒めてたとこです。 ロ 33
newfs を実行すると、ますパーティションに関するセ クタ数や容量などの情報か表示され、スーパープロックの コピーを置く場戸励ゞセクタ番号て表示されます。スーパー プロックとは、ファイルシステム ( パーティション ) の 大きさや作成可能なファイルの数などの情報をイ尉寺する領 域で、各パーティションを管理します。スーパープロック か破壊されるとファイルシステム全体か数命的な撃を受 けるので、複数の場所にコピーを作っておくわけです。ち なみに、 newfs に要する時間は、 600MB 程度のパーティ ションで約 3 分です 9 ティスクのマウント 「間違えたらあかんと思うとちょっとドキドキするけど、 意外と簡単ゃな。あとは /etc/fstab ファイルを編集し て、マウントするだけや ! 1 つは、、 / project " にマウント へへとりあえす、、 /monkey して、もう 1 つは・・ にしといたろ」 format 、 newfs が終れば、あとはパーティションの マウントボイントを決めて、実際にディスクをマウント するだけです。前回も説明しましたが、ディスクのマウ ントボイントなどの設定は、通常は /etc/fstab ファイ ルを編集します。たとえば g パーティションを /project に、 h パーティションを /monkey にマウントする場合、 /etc/fstab は次のようになります ( 最後の 2 行が追加 1 3 1 4 1 5 1 2 1 3 した部分です ) 。 /dev/sdOa /dev/sd0h /dev/sdOf /dev/sdOg /dev/sdOe /dev/sdlg /dev/sdlh /home /tmp /usr /var /project /monkey 4 4 4 . 4. 4 4. 4 . 2 2 . 2 2 2 . 2 . 2 rw rw rw rw rw rw rw 1 1 1 2 たとえば、ディスク sdl の g パーティションの対応す るデバイス名は /dev/sdlg になります。 「あとは mount するだけやな。 /project と /monkey を マウントして・・ 、おーし、これで使えるようになった ! ! それにしても、、、 / m 。Ⅱ key " なんて作るとワクワクしてく るなあ。いっそのこと、自分のホームディレクトリにし 30 9 ディスクのアクセス速度などで多少違います。 たろか。一生かかっても使いきれへんな」 上司や先輩カいたら怒りだしそうなことを言っていま すが、これで、ディスクが使えるようになりました。今 回はまったく新しいディスクを追加しましたが、既存の ディスクのパーティションを変更する場合は、ファイル のバックアップをとる必要があります。また、 a パーティ ションや b パーティション ( スワップエリア ) などに関し ては、 MUNIX ( メモリ上で動く UNIX) を起動するな ど、 OS のインストールと同様の手順を踏む場合もありま す。バックアップのガ去については次号以降で紹介する予 定ですが、 MUNIX から format コマンドを実行する方 法については、『 SunOS4.1.1 トラブルシューティング』 ( 高山真治著、アスキー刊 ) などを参考にしてください。 NFS サーバーのセットアッフ ロ 「とりあえず、ディスクは全部使えるようになったな。次 は coconut を NFS サーバーにせなあかんな。 /project は共有せなあかんとして、ホームディレクトリはどないし ようかなあ。たしかに、どのマシンでもホームは同し " や ったら嬉しいけど、もう banana に作ってるしな。とり あえす、きようは /project だけ共有することにしよ」 前回は、マシン banana を NFS クライアントとして セットアップしました。今回は、 NFS サーバーをセット アップしてみましよう。 NFS サーバーがクライアントに UNIX MAGAZINE 1993.6 を、どのような状態でェクスポートするか " という情報は、 、どのマシン ( クライアント ) に、どのディレクトリ /etc/exports ファイ ) レ ます。 合を例に、 NFS サーバーのセットアップについて紹介し トリ /project をマシン banana に工クスホートする場 などがあります。ここでは、マシン coconut のディレク ・ NFS サーバーに必要なデーモンの起動 専用など ) ・どのようにェクスポートするか ( 読み書き可能、読出し ・どのマシンに工クスポートするか ・どのディレクトリをェクスポートするか 項には、 ト (export) する " といいますが、 NFS サーバーの設定事 対してファイルシステムを公開することを、、、ェクスポー