web-dev-qa-db-ja.com

gidビットが機能しないように設定する

私はフォルダに対してこれらの権限を持っています。

drwxr-sr-x  2 root    sharedmaster  4096 2010-09-22 10:36 rantest99

Sharedmasterグループにいるユーザーtonyがいます。 tonyからmkdirを実行しようとすると、許可が拒否されたと表示されます。何故ですか?

新しいディレクトリがグループの読み取り/書き込み権限を持つように、ディレクトリにgidビットを設定しました。私はどこが間違っていますか。

3
John

さらに、親ディレクトリで 書き込みアクセス を許可すると、ほぼ確実に、グループ/その他の書き込みアクセスを除外するように設定されているユーザーのumaskを調整する必要があります。

おそらく、0002のumaskを設定する必要があります。

2
Zoredache

chmod g+w rantest99する必要があると思います。

編集:

chmod g+w dirnameは、グループのメンバーがディレクトリを書き込み可能にします。これはchmod g+s dirnameが行うことです:

info coreutils 'Directory Setuid and Setgid'から

27.4ディレクトリとSet-User-IDおよびSet-Group-IDビット================================== ========================

ほとんどのシステムでは、ディレクトリのset-group-IDビットが設定されている場合、新しく作成されたサブファイルはディレクトリと同じグループを継承し、新しく作成されたサブディレクトリは親ディレクトリのset-group-IDビットを継承します。いくつかのシステムでは、ディレクトリのset-user-IDビットは、新しいサブファイルの所有権と新しいサブディレクトリのset-user-IDビットに同様の影響を及ぼします。これらのメカニズムにより、ユーザーは「chmod」または「chown」を使用して新しいファイルを共有する必要性が少なくなり、ファイルをより簡単に共有できます。

エラーを貼り付けてください。

test@u1004s02:/tmp$ ls -ald 1
drwxr-sr-x 2 root test 4096 Sep 22 05:49 1
test@u1004s02:/tmp$ id
uid=1001(test) gid=1001(test) groups=1001(test)
test@u1004s02:/tmp$ cd 1  
test@u1004s02:/tmp/1$

Setgidについて: http://en.wikipedia.org/wiki/Setuid#setuid_and_setgid_on_directories

0
bindbn