FreeNASで所有ユーザが4294967294になったり所有グループが65533になったりする話

FreeNASのNFS共有とパーミッション

[ストレージ]-[ボリューム]でZFSプール名を展開すると共有名が一覧されます。
左下に

パーミッションの変更

パーミッションの変更

な感じのアイコンがあるのでクリックすると以下のようなパーミッションの変更ができます。
ここでは、何を選択するのが正解なのでしょうか。FreeNASはActiveDirectoryとも連携することができるためWindowsから利用する用途であればあまり気にしない項目かもしれません。

しかし、NFSマウントを行って利用する場合Anonymous NFS Userでマウントして利用することが多いのではないでしょうか。・・・そうでもないですか。

アクセス元のホストなどは制限しても個人や検証の用途であればshareなど適当なパスでマウントして誰でもフルパーミッションで利用できると利便性は抜群なわけです。

しかし、設定を誤ると、ファイルやフォルダのパーミッションが nfsnobody だったり、所有グループが65533になったりはたまた所有ユーザが4294967294だったりしてしまいます。

そうすると、スクリプトなどでファイル生成する際にパーミッションが無いことに起因して処理がとまってしまったりして困るためテキトーに弄くっていたのをやめて明示的に所有ユーザも所有グループも nfsnobody としたい!

そう思って調べてどうせ忘れるのでここにメモしておくことにします。

nobody + nogroup の場合

これが実際良く設定していた例なのだけど、これでは nfsnobody にはならず 65533 になる。
たとえば、test というファイルを作成してみると赤字部分みたいな感じになります。

パーミッションの変更_nobody_nogroup

パーミッションの変更_nobody_nogroup

nobody + nobody が正解
なので正解はコチラ。パーミッションを再帰的に設定にチェックを入れておくと、
新しい設定でパーミッションをセットしなおしてくれます。

パーミッションの変更_nobody_nobody

パーミッションの変更_nobody_nobody

共有設定

そして、もう一箇所。[共有]-[UNIX(NFS)]を選択するとPathsという列に共有パスが表示されていると思う。
これを選択し[Edit]ボタンをクリック。すると以下のようなウィンドウが開くので[高度な設定]ボタンをクリック。

共有設定

共有設定


すると Mapall ユーザ:、Mapall グループについてもプルダウンがあり nobody や nogroup を選べるようになります。
共有設定(高度な設定)

共有設定(高度な設定)


今回の場合ユーザを問わず NFS マウントした先は nfsnobody:nfsnobody としたいので両方とも nobody を選びます。
ここがデフォルトだと N/A が選択されていて、それが原因で 4294967294 というユーザになってしまいます。
ちなみに、4294967294は -2 らしい。要するにユーザを明示していないとそのような数字になるということの様です。

というわけでかなり気楽に書きましたがFreeNASを利用していてユーザーが4294967294になったりグループが65533 になったりしている方のお役に立てば幸いです。

参考情報

なお、本稿で説明した FreeNAS のバージョンはFreeNAS-9.3-STABLE-201503071634です。
TX100S3pという激安サーバーを利用していますが静音で且つディスク4台分マウンタが付いておりNAS用途にはもってこいだと思います。
下手すると本体よりメモリの方が高価なのでそこが玉にキズでしょうか。openfilerもiSISIでは凄く利用しやすいですね。

参考URL
Serverfault – Files mounted over NFSv4 are owned by 4294967294, UIDs and GIDs match

スポンサーリンク

シェアする

フォローする

スポンサーリンク