• 検索結果がありません。

NFSの運用・設定

ドキュメント内 センターレポート 第14号 (ページ 46-49)

》襲

3  NFSの運用・設定

3 . 1  

運用

NFS

を利用するには,ファイルシステムをその組織内でどのように運用していくかを決 める必要がある.最低限として考えられるのは,各ホストで共有するバイナリファイルを 置いておくディレクトリのファイルシステムと利用者のホームディレクトリのあるファイル システムである.この二つのファイルシステムには変更の頻度という本質的な違いがある.

・各ホストで共有して使用するプログラムのバイナリファイルを置いておくファイルシ ステムは頻繁には変更されない.変更があるのは 新規にプログラムのインストール を行なったり,パージョンアップやプログラムの削除を行なう時である.このため,共 有するファイルシステムを全てのホストから変更できる必要はない.つまり,ほとん

どのホストからは読出しのみができれ ~;f ..良い.

・利用者のホームディレクトリは頻繁に変更が行なわれる.例えば,文書ファイルの新 規作成や修正,削除などは代表的な変更例である.このため,全てのホストはこのファ イルシステムに対し,書込みが可能でなく.てはならない.また,書込みが終る前にネッ

トワークの不調などにより書き込みの動作を中断することは危険である.

運用を行なうには,これらの違いを考慮に入れて設定しなければならない.

本稿では,説明のために

2

台のホスト

( n e n e

,mayu)を例として使用する.これらのホ ストの関係は,

nene  NFS

サーバ

mayu  NFS

クライアント

となっているものとする.このシステムにおける共有ファイルシステムを,次のようにする.

1.各ホストで共通に使用するプログラムのバイナリファイルを

lusr/localに入れてお

く.また,このディレクトリに対する書き込みの権限は,

NFS

サーバである

nene

に しか与えない.

2 . .

利用者のホームディレクトリは,

/home/

マシン名/利用者名というディレクトリに持 つ.ホームディレクトリに対する書き込みの権限は,各ホストに対して与える.

3 . 2  

設定

NFS

の設定は,

NFS

サーバの設定と

NFS

クライアントの設定に分けることができる.

4 3  

3 . 2 . 1   NFS

サーバの設定

NFS

サーバは,他のホストに対し,あるディレクトリ以下のファイルシステムを「公開

( e x p o r t )   J

しなければならない.公開するための設定は,

/etc/exportsで行なう.この

ファイルの形式は,

公開するディレクトリ ーオプション,[オプション,…]

となっている.従って,

NFS

サーバ

nene

での

/etc/exports

設定例は,次のようになる.

/ u s r / l o c a l   ‑ r o

a c c e s s = m a y u : m i y o k o  

/ e x p o r t / h o m e   ‑ a c c e s s = m a y u : m i y o k o

r o o t = m a y u  

一行目は,

/usr/local

の公開についてである.

/etc/exportsのフイ}ルドは,ホワイ

トスペース

( s p a c e

,TAB)で区切られる.第一フィールドは,公開するディレクトリを指定 する(この例では,

/ u s r / l o c a l ) .

ここで気を付けなければいけないのは,公開するディレ クトリの入れ子はできないということである.あるディレクトリを公開すると,そのディ レクトリを親とする全てのディレクトリも親ディレクトリの権限と同様に公開される.つ まり,

/usr/localを読出しのみで公開し, /usr/local/docをホスト A

のみに読み書き 可能で公開はできないということである.

第二フィールドでは,公開の制限に関するオプションを指定する.この例では,読出し のみ

( r o )

で公開している.

r oを指定しなければ,読み書き可能で公開をする.また, rw= 

ホスト名[:ホスト名:...]というオプションをつ伐ると,リストとして挙げられたホストにの み読み書き可能で公開される.他のホストには,読出しのみの公開となる.

また,

a c c e s sというオプションは,この公開するディレクトリにアクセスできるホスト

を指定するものである.ホストのリストは ;"で区切られる.このオプションでリストに 挙げられなかったホストは,アクセスすることはできない.このオプション自体をつけな かった場合,全てのマシンにアクセスを許すことになる.セキュリティ上,必ずつけるべ きオプションである.

二行自の設定では,ホームディレクトリの設定を行なっている.利用者のホームディレ クトリを置いておく実体のディレクトリとして

/home/neneではなく, /export/homeを

f

吏っている.つまり,実際に使うためのパスと実体のディレクトリは一致していなくても 良い(l

home/neneとして使用するから /home/nene

を公開するわけではない)・また,

r o o t  

というオプションを使っているが,これは

r o o t (

スーパユーザ)の権限アクセスできるホス トを指定するものである.このオプションをつけなければ

NFS

クライアントホストから

r o o tでアクセスすることはできない.

以上の設定で,ディレクトリを公開することができる.

/etc/exportsは,ホストのブー

ト時に読み込まれ,実際にディレクトリの公聞が行なわれる.あるいは手動で,

i .

  exportfs ‑a 

とすることで,リブートすることなく公開することができる.現在,そのホストで公開 しているディレクトリを知るには,

i .

  exportfs 

とするか,

/etc/xtab

の内容を見れば知ることができる.

44 

3.2.2  NFS

クライアントホストの設定

NFS

サーバによって公開されたディレクトリを

NFS

クライアント側で使用するには,

クライアントホストのディレクトリの一部にサーバ側のディレクトリをくっつけてやると よい.このくつつける操作を「マウント

J

という.また,マウントを行なうクライアント 側のディレクトリを「マウントポイントj と呼ぶ.

マウントの設定は,

/etc/fstab

で行なう.このファイルの書式は,次のようになって いる.

file̲system  mount̲point  filesystem̲type  option  dump̲frequency  fsck̲order 

各フィールドは,ホワイトスペースで区切られる.行頭に#があった場合は,その行は コメントとなる.

この

/etc/fstab

は,

NFS

の設定のみでなく,全てのファイルシステムの設定を行なう ための設定ファイルである.このため,記述するオプション等にはいろいろなものがある が,本稿では

NFS

に関連のあるものだけを説明する.

NFS

クライアントの

mayu

での設定例は次のようになる.

/dev/sdOa  /  /dev/sdOh  /homel 

4.2 rw 1 1  4.2 rw 1 

/dev/sdOg  /usr  4.2 rw 1 2  /dev/sdOd  /var  4.2 rw 1 4  /dev/sdOf  /usr/applel 4.2 rw 1 5  /dev/sdlh  /usr/apple2 4.2 rw 1 6  swap  /tmp  tmp rw 0 0 

/dev/fdO  /pcfs  pcfs rw

noauto 0 0  nene:/usr/local /usr/local nfs ro

soft 0 0 

nene:/export/home /home/nene nfs rw

h

d

intr0 0 

上記の設定例では,下

2

行が

NFS

に関する設定である.まず,

9

行目の設定について説 明をする.

l

フィールドは,

NFS

サーバ

nene

/usr/local

をマウントすることを示してい る.指定には,

r

ホスト名:公開しているディレクトリ」という形式で行なう.

2

フィールドは,マウントポイントの指定である.ここでは,

/usr/local

を指定して いる.実際にマウントする前には,マウントポイントをディレクトリとして作っておく必 要がある.

3

フィールドは,マウントするファイルシステムのタイプである.ここは,

NFS

によ るファイルシステムであるから

nfs

が指定される.

4

フィールドはマウントする時のオプションの指定である.ここでは,読み込みのみ

( r o )

,マウントを設定回数だけ失敗するとエラーとする

( 8 0 f t :

これを

8 0 f tmount

と呼ぶ)

といったオプションを指定している.最初に述べたように

/usr/local

はサーバでしか変 更を行なわない.このため,読み出しのみの権限でマウントを行なっている.もし,読み 書き可能な権限でマウントしたとしてもサーバ側が読み書き可能で公開していない限り害

‑ 45 

き込むことはできない.また,読み書き可能な権限でマウントするには,

rw

を指定するこ とは当然だが,

h a r d

も指定する.これは,マウントに成功するまでサーバに対しマウン ト要求を出し続けるためのものである.ファイル等の書き込みを行なう場合,その書き込 みの最中にネットワークの不調等でエラーとなって書き込みが途中で終ったりすると困る からである.また,

h a r d

でマウントするとサーバが停止した場合,ずっとマウントを待ち 続ける.これを

i n t r

を一緒に指定しておけば,

c p

コマンド等であればキーボードから中 断することができる.

5

フィールドはダンプの頻度であるが

NFS

ではこのフィールドは常に

0

となる.

6

フィールドは,

f s c k

コマンドを行なう際のファイルシステムチェックの順序を示す フィールドであるが,

NFS

の場合は第

5

フィールドと同様に常に

0

とする.

1 0

行自の設定例は,利用者のホームディレクトリに関するものである.この例では,

n e n e  

の j

e x p o r t  jhome

/home/nene

としてマウントしている.また,頻繁に変更されるファ

イルを含むディレクトリのために,読み書き可能

( r w )

h a r dmount ( h a r d )

し,キーボー ドからの割り込みを許可している

( i n t r ) .

以上の設定で,サーパの公開しているディレクトリをマウントするとができる.ただし,

/etc/fstab

はホストのプート時にしか読み込まれない.手動でマウントを行なうには,

mount

コマンドを使用するが,このコマンド使い方は割愛させていただく.このコマンド に関しては,オンラインマニュアル等を見ていただきたい.

4  NIS の運用・設定

ドキュメント内 センターレポート 第14号 (ページ 46-49)