MOUNT_UMAPFS(8)

名称
mount_umapfs - ファイルシステム層のサンプルファイルシステム

書式
mount_umapfs [-o options] -u uid-mapfile -g gid-mapfile target mount-point

解説
mount_umapfs ユーティリティは、 ローカルシステムとは異なる uid, gid を使用するファイルシステムの サブツリーをマウントするために使用します。 そのようなファイルシステムには、別のサイトの NFS や 別のパスワードを使用する場所から持って来たリムーバブルメディア上の ファイルシステムです。

mount_umapfs ユーティリティはユーザが提供するファイルのセットを使用し、 サブツリーの元の環境とローカルの環境との uid, gid の対応を取ります。 元の環境では smith は uid 1000 を持ち、ローカル環境では uid 2000 を持ちます。 mount_umapfs ユーティリティは、 smith のオリジナルの環境で持っているファイルを次のようにマップさせます: uid 1000 が所有するファイルを、実際には uid 2000 が所有者である かのように見せます。

以下のオプションを使用可能です:

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

target
    ローカルシステムの名前空間において、サブツリーの現在位置。

mount-point
    マップされたサブツリーが置かれるディレクトリ。

-u uid-mapfile

-g gid-mapfile
    識別子の対応が記述されます。 それぞれのファイルの1行目には、そのファイルがいくつの対応を持っている かを記述します。 2行目からは、各行に対応を記述します。 最初の項目はローカル環境での id で、次の項目がオリジナル環境での idで、 項目は空白で区切ります。 uid-mapfile にはすべての uid の対応を、 gid-mapfile にはすべての gid の対応を記述するべきです。 uid-mapfile に記載されない uid は NOBODY と、 gid-mapfile に記載されない gid は NULLGROUP と扱われます。 uid の対応は64個まで、gid の対応は16個まで記述することができます。

マップファイルはファイル階層のどこにでも置くことができますが、 ファイルの所有者はrootで、rootのみが書き込めるようにしておかなければ なりません。 mount_umapfs ユーティリティは、もしこれらのファイルの所有者や権限が 不適切な場合はサブツリーをマップしません。 もしマップファイルの1行目の対応数と実際の対応数が異なる場合も、 実行を停止します。

mount_umapfs ユーティリティで作られるファイルシステム層は、簡単なファイルシステム層の 例となっています。商品としての利用は考えられていません。 そのため、あまり洗練された実装ではありません。

関連項目
mount(8), mount_nullfs(8)

バグ
本ファイルシステムタイプは、まだ完全にはサポートされていません (注: 機能しないということです) し、 実際のところ使用するとシステム上のデータを破壊するかもしれません。 自己責任において使用してください。 猛犬注意。濡れていて滑ります。

危険性を減らすためには、このコードもまた所有者を必要としています - 真面目なハッカーの方はメールを <hackers@freebsd.org> に送って 引き継ぎの意思を宣言してください。

歴史
mount_umapfs は 4.4BSD から実装されました。