shareコマンドのシンタックス
share [ -F ファイルシステムタイプ ] [ -o ファイルシステム固有オプション ] [ -d コメント ] [ 公開するディレクトリ ]
「ファイルシステムタイプ」は指定しなければNFSのことになります。 実際、NFS以外はこのコマンドを使用する意味はありませんから、 このオプション自体指定することはほとんどないでしょう。
「ファイルシステム固有オプション」は、したがって事実上NFSで有効な オプションのことになります。 Solaris2.5で有効なオプションには以下のようなものがあり、 これらをコンマで区切って指定します。 他のUNIXでこれらのオプションがすべて有効とは限りません。
AUTH_DES
認証方式を使用します。
認証されなかったユーザは、上記のanon=で指定されたUIDを持つものとして扱われます。
AUTH_KERB
認証方式を使用します。
認証されなかったユーザは、上記のanon=で指定されたUIDを持つものとして扱われます。
なお、secure、kerberosのオプションを指定しない場合、クライアントの認証は
AUTH_UNIX
認証方式で行なわれます。
つまり、基本的にUIDとGIDに基づいてアクセスが許可されますが、
rootは上記のanon=で指定されたUIDを持つものとして扱われます。
ディレクトリ名を指定せずにshareコマンドを使用した場合、現在このサーバで shareされているファイルシステムに関する情報が表示されます。 このとき上の「コメント」も表示されます。
shareコマンドを使用する場合、気をつけなければいけないのは、
公開したいディレクトリが複数のローカルファイルシステムにまたがっている場合、
そのファイルシステムごとにshareを行なわなければいけないという点です。
例えば、あるマシン上で、/usr が /dev/dsk/c0t3d0s6 というデバイス上、
/usr/wwwというディレクトリが /dev/dsk/c0t2d0s5 というデバイス上にある場合
(これらはどちらもSCSIハードディスクのあるスライスを表します:
詳細は付録を参照して下さい)、もし/usr以下を/usr/wwwも含めてshareしたければ、
/usrだけを share /usr
としたのでは不十分で、
これと合わせて share /usr/www
も実行する必要があるということです。
逆に、単一のファイルシステムの中で、あるディレクトリがすでにshareされた状態で、 そのサブディレクトリをさらにshareすることはできません。 つまり、/usrを読み書き可能、/usr/texを読み取り専用でshareというようなことは、 両者が同一のファイルシステムにある場合はできません。 ただファイルシステムの全てのディレクトリごとに shareを行うことはできます(例えば/usr/local, /usr/texというように)。 しかし、その場合1つディレクトリが増えるごとにshareをかけ直さなければならず 管理が面倒になると思われます。それぞれのケースで最適な方法を選んで下さい。