MOUNT_PORTAL(8)

名称
mount_portal - ポータルデーモンをマウントする

書式
mount_portal [-o options] /etc/portal.conf mount_point

解説
mount_portal コマンドは、ポータルデーモンが提供するインスタンスを ファイルシステムの名前空間に付加します。 慣例的なマウントポイントは /p です。このコマンド は、通常、ブート時に mount(8) によって実行されます。

オプション:

-o  オプションは -o のあとにオプション文字列をコンマで区切って並べることにより指定します。 指定できるオプションとそれらの意味は mount(8) を参照してください。

ポータルデーモンは open サービスを提供します。ポータルマウントポイント下で オブジェクトをオープンすると、ポータルデーモンは設定ファイル中で指定 されたルールに従って動的にそのオブジェクトを生成します。 この機構を使えば、ソケットなどの記述子をファイルシステムの 名前空間の中で使うことができるようになります。

ポータルデーモンは、オープンしようとするオブジェクトのフルパス名を 与えることによって動作します。デーモンは、設定ファイル中のルールに従って 適切な記述子を生成し、この記述子を open システムコールの 戻り値として 呼び出しプロセスに返します。

名前空間
慣例に従い、ポータルデーモンは名前空間を部分名前空間に分割します。 それぞれの部分名前空間は特定の型のオブジェクトを扱います。

次の部分名前空間が実装されています: tcplisten, tcp, fs 。 tcplisten 名前空間はスラッシュで区切られるホスト名とポートを与えられ、 指定されたホスト名とポートの組にバインドされる TCP/IP ソケットを作成します。 ホスト名は "ANY" を指定することが可能であり、 この場合他のどんなホストであってもこのソケットに接続可能です。 ポート番号 0 を指定すると動的にポートを割り当てます。 返されるファイル記述子を使用して getsockname(2) を呼び出すことで、割り当てられたポートを得られます。 特権ポートに対するバインドは、スーパユーザのみ可能です。 tcp 名前空間はホスト名とポート番号(スラッシュ``/''で区切られる) を与えられることで TCP/IP 接続を確立します。 fs 名前空間は、ルートディレクトリまで戻ってそこからたどった名前の ファイルをオープンします。これは chroot によってルートディレクトリが 変更された環境において、もとのファイル システムをアクセスする手法を安全に提供するために使用できます。

設定ファイル
設定ファイルはルールのリストによって構成されます。それぞれのルールは 1行に書かれ、空白で区切られた2つ以上のフィールドからなります。ハッシュ記号 (``#'')から行末までは無視されます。空行も無視されます。

第1フィールドはパス名のプレフィックスで、要求されたパス名と比較されます。 一致するものが見つかると、第2フィールドがデーモンに渡されてどの型の オブジェクトを生成するかが示されます。 その後に続くフィールドは生成関数に渡されます。

    # @(#)portal.conf       5.1 (Berkeley) 7/13/92
    tcplisten/	tcplisten tcplisten/
    tcp/            tcp tcp/
    fs/             file fs/

関連ファイル
/p/*
    慣例的なマウントポイント

関連項目
mount(2), unmount(2), fstab(5), mount(8)

警告
このファイルシステムは NFS によってエクスポートすることはできません。

歴史
mount_portal は 4.4BSD から登場しました。