exportfs コマンド
目的
ディレクトリーを NFS クライアントにエクスポートおよびアンエクスポートします。
構文
/usr/sbin/exportfs [ -a ] [ -v ] [ -u ] [ -i ] [ -fFile ] [ -F ] [ -oオプション [,オプション ...]] [ -V エクスポートされたバージョン] [ Directory ]
説明
exportfs コマンドは、ネットワーク・ファイルシステム (NFS) のクライアントがローカル・ディレクトリーをマウントできるようにします。 このコマンドは通常、システム始動時に /etc/rc.nfsファイルによって呼び出され、 /etc/exports ファイルの情報を使用して 1 つ以上のディレクトリーをエクスポートします。このディレクトリーは絶対パス名で指定する必要があります。
/etc/xtab ファイルには、現在エクスポート中のディレクトリーのリストが入っています。 このファイルを表示するには、フラグまたは引数を指定しないで exportfs コマンドを実行します。 ファイルの変更、または、そのファイルのディレクトリーの特性変更を行うために、root ユーザーは /etc/exports ファイルを編集して、exportfs コマンドを実行できます。 この操作は常時行えます。 /etc/xtab ファイルを直接編集することは、絶対に避けてください。
- 現在エクスポートされているディレクトリーと同一のファイルシステム内に 存在し、かつ、そのディレクトリーの親ディレクトリーまたは サブディレクトリーのいずれかであるディレクトリーは、 エクスポートできません。
- NFS バージョン 2 および 3 では、ディレクトリーもファイルもエクスポートできます。 NFS バージョン 4 のアクセスでは、ディレクトリーだけがエクスポートできます。
- /etc/exports ファイル内に、異なるバージョン 2 (または 3) と 4 を持つ同一ディレクトリーに対して 2 つのエントリーが存在する場合、exportfs コマンドは両方のエントリーをエクスポートします。
- NFS バージョン 2 (または 3) と 4 のオプションがディレクトリーで同じである場合、 /etc/exports ファイルには、以下を指定するエントリーが 1 つ存在する可能性があります。-vers=3:4.
フラグ
項目 | 説明 |
---|---|
-a | エクスポート・ファイルにリストされているすべてのディレクトリーをエクスポートします。 |
-v | エクスポートまたはアンエクスポートされる各ディレクトリーの名前を出力します。 |
-u | 指定したディレクトリーをアンエクスポートします。 -a フラグと併用すると、エクスポートされたすべての ディレクトリーがアンエクスポートされます。 -a および -f のフラグと一緒に使用すると、指定のエクスポート・ファイル 内のすべてのディレクトリーがアンエクスポートされます。 |
-i | エクスポート・ファイルに指定されていないディレクトリーをエクスポートできるようにするか、あるいはエクスポート・ファイルに記述されているオプションを無視します。 -f フラグを使用して代替ファイルを指定する場合を除き、 exportfs コマンドは通常、エクスポートされたディレクトリーに 関連付けられているオプションについて、/etc/exports ファイルを調べます。 |
-f ファイル | /etc/exports ファイルの代わりに、エクスポート可能なディレクトリーのリストが入っているエクスポート・ファイルを指定します。 このファイルは、/etc/exports ファイルと同じフォーマットにしてください。 注 : この代替ファイルは、システムと NFS の始動時にディレクトリーを自動的にエクスポートするために使用されることはありません。 /etc/exports ファイルは、システムの始動時にエクスポートするディレクトリーを指定するためにサポートされる唯一のファイルです。 |
-F | 強制アンエクスポート の実行を指定します。 このフラグは、 -ウー フラグと一緒にのみ使用してください。 このフラグは、V2/V3 エクスポートの アンエクスポート時には効果がありません。 V4 のアンエクスポートでは、関連する状態のために失敗するおそれがあります。 このフラグは、V4 エクスポートに関連する任意の状態を強制的に解除します。 |
-オプション | エクスポートされるディレクトリーにオプションの特性を指定します。 コンマで区切れば、複数の変数を入力できます。 Client
パラメーターをとるオプションの場合は、Client でホスト名、ドット付きの IP アドレス、
ネットワーク名、またはサブネット指定子を指定することができます。 サブネット指定子は @ host /mask の形式をとります。
ここで、host はホスト名またはドット付き IP アドレスのどちらかであり、mask
はアクセスをチェックする際に使用するビットの数を指定します。 mask が指定されていない場合は、全マスクが使用されます。 例えば、指定子 @client.group.company.com/16 は、 company.com サブネット上のすべてのクライアントと一致します。 指定子 @client.group.company.com/24 は、group.company.com
サブネット上のクライアントとのみ一致します。 次のオプションから選択します。
|
-o Options (続き) |
|
-o Options (続き) |
|
-o Options (続き) |
|
-o Options (続き) |
クライアントの属性が変わったときは、 そのクライアントをパラメーターとして含むすべてのエクスポート・エントリー は、再びエクスポートしてください。 クライアントの属性を変更する可能性のある イベントとしては、ネットグループの変更またはクライアントの IP アドレスの変更などがあります。 この再エクスポートに失敗すると、サーバーは古いクライアント情報を 使用することになるおそれがあります。 |
-V Exported Version | バージョン番号を指定します。 有効なバージョン番号は 2、3、および 4 です。 |
Solaris の互換性
exportfs コマンド は、share、shareall、unshare、 または unshareall として呼び出すことができます。 exportfs コマンドを share または shareall として呼び出す場合は、その機能性は それぞれ、exportfs と exportfs -a と 同等ですが、セキュリティー・メソッドを指定するために sec オプションの使用が必要である点が異なります。 exportfs コマンドを unshare または unshareall として呼び出す場合は、その機能性は それぞれ、exportfs -u と exportfs -u -a と同等です。
セキュリティー
例
- /etc/exports ファイル内の、
すべてのディレクトリーをエクスポートするには、次のように入力します。
exportfs -a
- /etc/exports ファイルから、
ディレクトリーを 1 つエクスポートするには、次のように入力します。
exportfs /home/notes
この例では、/home/notesディレクトリーがエクスポートされます。注: このコマンドを機能させるには、 /home/notes ディレクトリーを /etc/exports ファイルに指定する必要があります。 - ディレクトリーをアンエクスポートするには、次のように入力します。
exportfs -u /home/notes
この例では、/home/notesディレクトリーはアンエクスポートされます。
- 現在エクスポート中のディレクトリーの名前を表示するには、
次のように入力します。
exportfs -v
- /etc/exports ファイルに指定されていないディレクトリーをエクスポートするには、
次のように入力します。
exportfs -i /home/zeus
この例では、/home/zeusディレクトリーは制限なしでエクスポートされます。
- ディレクトリーをエクスポートして、
ネットグループ・メンバーにこのディレクトリーへのアクセス権を与えるには、次のように入力します。
exportfs access=cowboys:oilers /home/notes -o
この例では、/home/notesディレクトリーがエクスポートされ、以下のユーザーを許可するcowboysおよびoilersホスト・マシンにアクセスできます。
- /etc/exports ファイルから、
別のオプションを持つディレクトリーをエクスポートするには、次のように入力します。
exportfs -i -o root=zorro:silver /directory
この例では、/directoryディレクトリーがエクスポートされ、root ユーザーによるアクセスが許可されます。zorroおよびsilverホスト・マシン ( /etc/exports ファイルに指定されているアクセス許可に関係なく)。
- Kerberos 認証を使用するクライアントには書き込み権限を持つが、 UNIX 認証を使用するクライアントには読み取り専用権限を持つ /common/docs ディレクトリーをエクスポートするには、次のテキストを /etc/exports ファイルに追加します。
/common/docs -sec=krb5,rw,sec=sys,ro
次に、このエクスポートを実行するために
exportfs /common/docs
を入力します。 - /usr/info でホスト
infoserver
上の /usr/info ディレクトリーへの参照を作成するには、以下の行を /etc/exports に追加してから、 /usr/infoをエクスポートします。/usr/info -vers=4,refer=/usr/info@infoserver
- ホスト
backup1
およびbackup2
で /common/info ディレクトリーのレプリカを指定するには、以下の行を /etc/exports に追加してから、 /common/infoをエクスポートします。/common/info -vers=4,replicas=/common/info@backup1:/common/info@backup2,<other options>
- /common/docs ディレクトリーをバージョン 3 とバージョン 4 の両方でエクスポートするには、次のコマンドを入力します。
exportfs -V 3:4 /common/docs
- /etc/exports ファイルにあるバージョン 4 のエントリーをすべてエクスポートするには、次のコマンドを入力します。
exportfs -a -V 4
- /common/docs ディレクトリーをバージョン 3 に対してのみアンエクスポートするには、次のコマンドを入力します。
exportfs -u -V 3 /common/docs
- /etc/xtab ファイルにあるバージョン 3 のエントリーをすべてアンエクスポートするには、次のコマンドを入力します。
exportfs -ua -V 3
- 指定されたホストの /common/docs ディレクトリーの参照を指定するには、以下のようにします。s1,s2およびs3それらを完全に分散させるには、以下の行を /etc/exports ファイルに追加してから、 /common/docs ディレクトリーをエクスポートします。
/common/docs -vers=4,refer=/common/docs@s1:/common/docs@s2:/common/docs@s3,scatter=full
- 次の名前のホストで /common/docs ディレクトリのレプリカを指定するには、次のようにします。s1,s2,s3およびs4部分的に分散させることができます (最初のフェイルオーバー・サーバーは,s1すべての組み合わせについて、以下の行を /etc/exports ファイルに追加してから、 /common/docs ディレクトリーをエクスポートします。
/common/docs -vers=4,noauto,replicas=/common/docs@s1:/common/docs@s2:/common/docs@s3:/common/docs@s4,scatter=partial
ファイル
項目 | 説明 |
---|---|
/etc/exports | サーバーがエクスポートできるディレクトリーをリストします。 |
/etc/xtab | 現在エクスポートされているディレクトリーをリストします。 |
/etc/hosts | ネットワーク上の各ホストのエントリーが入っています。 |
/etc/netgroup | ネットワーク上の各ユーザー・グループに関する情報が入っています。 |
/etc/rc.nfs | NFS および NIS デーモンの始動スクリプトが入っています。 |