NFSマウントしたファイルサーバーへのグループパーミッション

ファイルサーバーをOSX(Leopard)クライアントマシンで「ディレクトリユーティリティ」によりNFSマウントしています。
Photoshopやテキストエディターからファイルを保存すると、必ずグループのパーミッションにwがつかないのですが、
wをつけるようにはできないでしょうか?
ターミナルからファイルを保存する場合には、umaskなどの設定をすればいいのですが
GUIアプリの場合は、どこを設定すれば良いのでしょうか?
よろしくお願いします。

投稿日 2007/12/14 15:52

返信: 8

2007/12/14 18:34 Community User への返信

タイトルにある「NFSマウントしたファイルサーバーの」には意味があるのですか?ローカルボリュームの場合であっても、OSXのデフォルトのumask値は022なので、グループにwriteパーミッションは付きませんよね?
10.5は持っていませんので、10.4まででの話になりますが、ログインユーザのumask値は、$HOME/.GlobarPreferences.plistの中のNSUmaskパラメータで設定できます。具体的には、ターミナルで
% defaults write -g NSUmask 2
のようにします。(NSUmask値はoctalではなくdecimalで指定します。022なら18になります。)
ただし、アプリ単位ではなく、常にこのumaskになるので、セキュリティ的には問題があるでしょうね。

2007/12/15 06:55 Community User への返信

Y. Kawabe様、ありがとうございます。
すみません、説明が悪かったです。
やりたいのは、ファイルサーバーを複数のOSXマシンでNFSマウントしており
登録している同じグループidの人は、誰でも上書きできるようにしたいのです。
「NFSマウントの〜」と書いてしまいましたが、「NFSマウント」だけという
事ではなく、ボーカルボリュームも含め、デフォルトでグループパーミッションに
wをつけたいのです。(umask 002)
教えて頂いた、「defaults write -g NSUmask 2 」を試すと$HOMEではなく
$HOME/Library/Preferences/に.GlobalPreferences.plistが設定されるようです。
しかし、Leopardではこの設定をしても現象が変わりませんでした。
Tigerは無いので、試せていません。
>アプリ単位ではなく、常にこのumaskになるので、セキュリティ的には問題があるでしょうね。
本当は、すべてのumaskのデフォルトを、変更したいのではなく、ある特定のアプリケーション(例えば、Photoshopだけとか)
で保存したファイルの、グループパーミッションにwを許可する事によって、
複数人で作業ができるようにしたいのです。
アプリ単位での設定は可能なのでしょうか?
ひょっとして、私が知らないだけで、umaskとか難しく考えすぎているけど
アプリ単位のパーミッションって簡単に設定できたりするのでしょうか?
OSXでのこういった管理をまだ良く知らないので、すみませんが、よろしくお願いします。

2007/12/16 01:11 Community User への返信

>$HOME/Library/Preferences/に.GlobalPreferences.plistが設定されるようです
私の書き損じです。その場所で正しいです。
>Leopardではこの設定をしても現象が変わりませんでした
いったんログアウトはされましたか?再度ログインし、たとえばホームディレクトリに「touch aaa」とかしても、パーミッションは644になってしまいますか?
>アプリ単位での設定は可能なのでしょうか?
OS自体にはそのような機能は無いはずですし、私の知る限りそれを可能にするユーティリティも見たことはありません。アプリ内で、ユーザに設定させることが出来るようにプログラミングすることは可能ですが、今のところそういったアプリも見たことはありません。
SambaやAFSでは、サーバ側の設定でマウントポイントのパーミッションを下位ディレクトリに継承させることが可能ですので、umaskを使わなくてもマウント毎に設定が出来ます。NFSは使ってないのですが、そのようなオプション設定はなかったでしょうか?

2007/12/16 06:47 Community User への返信

>いったんログアウトはされましたか?再度ログインし、たとえばホームディレクトリに「touch aaa」とかしても、パーミッションは644になってしまいますか?
ログアウト&再起動しました。
ターミナルでは、もともと.cshrcにumaskの設定を記述していますので
「touch aaa」のパーミッションは希望どおりになります。
また、
defaults write /Library/Preferences/com.apple.finder umask -int 2
を実行しましたので、Finderから新規フォルダなどをつくった場合にも
パーミッションは希望どおりになりました。問題はGUIのアプリから
保存した場合です。
グループで仕事をされている方は、みなさんどうされているのでしょうか?
いったん、ファイルをつくったあとに、パーミッションを変更されているのでしょうか?
ファイルが少ない場合はそれでもいいですが、今の仕事ではファイルが
何千や何万にもなるので、はじめに設定しておきたいと思います。

2007/12/16 13:24 Community User への返信

Finder他いくつかのアプリで試しましたが、私の10.4.11の環境においては、.GlobalPreferences.plistのNSUmask値の設定だけで、すべて新規書類は希望通りのパーミッションになります。
お使いのアプリが自分自身でパーミッションを決めてしまっている可能性もありますが、Finderでもダメだとすれば、10.5で仕様が変わってしまったのでしょうか。
>グループで仕事をされている方は、みなさんどうされているのでしょうか?
私はそういう環境には無いですが、もしどうしても必要でNFSでそのようなexportオプションが無いのであれば、最近はほとんどのUNIXでSambaが利用出来ますから、サーバ側をsmbに変更することも考えられると思います。

2007/12/17 15:46 Community User への返信

Y. Kawabeさん、ありがとうございます。
Leopardで、無事解決しました。
/etc/launchd.conf
にumaskの記述をすれば、希望の動作になりました!

2007/12/18 00:31 Community User への返信

/etc/launchd.confに書かれたumaskは、システムのlaunchdに対するumask値です。システムのlaunchdは、プロセス番号1の全てのプロセスの親プロセスですから、システムのデーモンを含めたすべてのプロセスのumaskがその値になってしまうのでは?
$HOME/.launchd.confの方なら、そのユーザのプロセスだけに効いてくれるように思いますが。(いずれも当方の環境での確認はしていません。)

2007/12/18 05:08 Community User への返信

>$HOME/.launchd.confの方なら、そのユーザのプロセスだけに効いてくれるように思いますが。
なるほど・・・そうですね。試してみます。
いろいろありがとうございました。
困っていたのでホント助かりました。

このスレッドはシステム、またはAppleコミュニティチームによってロックされました。 問題解決の参考になる情報であれば、どの投稿にでも投票いただけます。またコミュニティで他の回答を検索することもできます。

NFSマウントしたファイルサーバーへのグループパーミッション

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple Account を使ってご参加ください。