Chmod 2755の解説

chmod 2755はSGIDビットと標準的なディレクトリパーミッションを設定。新規ファイルがディレクトリのグループを継承します。共有ワークスペースに必須。

Permission

2755

rwxr-sr-x

chmod 2755 filename

パーミッション解析

RoleRead (4)Write (2)Execute (1)Octal意味
Ownerrwx7read, write, execute
Groupr-x5read, execute
Othersr-x5read, execute
Special bits (2): SGID (Set Group ID on execution / inherit group).

パーミッションの可視化

Read
Write
Execute
Owner
r
w
e
Group
r
-
e
Others
r
-
e

詳細な説明

パーミッション 2755 は、標準的な 755 パーミッションと SGID(Set Group ID)ビットを組み合わせたもので、ディレクトリに対して特別な動作をします。

8進数の内訳:

  • 2(特殊): SGIDビット設定
  • 7(所有者): read (4) + write (2) + execute (1) = フルアクセス
  • 5(グループ): read (4) + execute (1) = 読み取りと実行
  • 5(その他): read (4) + execute (1) = 読み取りと実行

シンボリック表記では rwxr-sr-x となります。グループの execute 位置の s がSGIDの設定を示しています。

SGIDがディレクトリに設定されると、その中に作成されるすべての新規ファイルとサブディレクトリは、作成したユーザーのプライマリグループではなく、ディレクトリのグループ所有権を自動的に継承します。チームメンバー全員のファイルが同じグループを持つようにしたい共有プロジェクトディレクトリにおいて、一貫したアクセス制御を実現するために非常に有用です。

SGIDが実行ファイルに設定されると、そのプログラムは実行ユーザーのグループではなく、ファイルのグループの実効グループIDで実行され、グループが所有するリソースへの制御されたアクセスを可能にします。

ユースケース

マルチユーザーシステムの共有プロジェクトディレクトリに不可欠。どの開発者が作成してもすべてのファイルが www-data グループに所有される /var/www の設定に使用されます。

Try It — Interactive Calculator

Customize this permission →