ディレクトリ権限「S」とはどういう意味ですか?(小文字ではなく、大文字)


39

私はEclipseをダウンロードし、それを解凍し、他のいくつかのことをしましたが、突然この興味深い動作に気付きました。

^_^ ~/Downloads > sudo chmod 0000 eclipse/

^_^ ~/Downloads > stat eclipse/
  File: 'eclipse/'
  Size: 4096        Blocks: 8          IO Block: 4096   directory
Device: 801h/2049d  Inode: 529725      Links: 9
Access: (2000/d-----S---)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2012-11-22 19:54:57.752017352 +1100
Modify: 2012-09-20 18:16:26.000000000 +1000
Change: 2012-11-22 20:07:49.354016510 +1100
 Birth: -

^_^ ~/Downloads > sudo chmod 0755 eclipse/

^_^ ~/Downloads > stat eclipse/
  File: 'eclipse/'
  Size: 4096        Blocks: 8          IO Block: 4096   directory
Device: 801h/2049d  Inode: 529725      Links: 9
Access: (2755/drwxr-sr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2012-11-22 19:54:57.752017352 +1100
Modify: 2012-09-20 18:16:26.000000000 +1000
Change: 2012-11-22 20:08:19.042016478 +1100
 Birth: -

ディレクトリに対する「S」許可とはどういう意味ですか?そして、なぜそれを私がそれを取り除くことができないのですか?

ありがとう。

回答:


65

'S' =ディレクトリのsetgidビットは設定されていますが、実行ビットは設定されていません。

's' =ディレクトリのsetgidビットが設定され、実行ビットが設定されます。

SetGID =別のユーザーがそのようなsetgidディレクトリの下にファイルまたはディレクトリを作成すると、新しいファイルまたはディレクトリのグループは、それを作成するユーザーのグループではなく、ディレクトリの所有者のグループとして設定されます。

setGIDビットを削除するには:

chmod g-s eclipse/

man chmodから取得:

u + sやgsなどのシンボリックモードでビットを設定またはクリアできます。また、数値モードでビットを設定(クリアではありません)できます。

同様の質問へのリンク:https : //unix.stackexchange.com/questions/27250/uppercase-s-in-permissions-of-a-folder


3
たとえば、ディレクトリのユーザービットにある場合sはどうですか?ディレクトリに作成されたファイルの所有者を設定していないようですdrwsrwxr-x 2 someuser somegroup 4096 May 18 11:39
...-SeldomNeedy
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.