Chmod 511の解説
chmod 511は所有者に読み取りと実行、グループとその他は実行のみ。ソースコードを保護しつつ実行を許可するパーミッションです。
Permission
511
r-x--x--x
chmod 511 filename
パーミッション解析
| Role | Read (4) | Write (2) | Execute (1) | Octal | 意味 |
|---|---|---|---|---|---|
| Owner | r | - | x | 5 | read, execute |
| Group | - | - | x | 1 | execute |
| Others | - | - | x | 1 | execute |
パーミッションの可視化
Read
Write
Execute
Owner
r
-
e
Group
-
-
e
Others
-
-
e
詳細な説明
パーミッション 511 は、所有者に読み取りと実行を許可し、グループとその他には実行のみを許可します。
8進数の内訳:
- 5(所有者): read (4) + execute (1) = 読み取りと実行
- 1(グループ): execute (1) のみ
- 1(その他): execute (1) のみ
シンボリック表記では r-x--x--x となります。所有者はファイルを読み取り実行できます。グループとその他はファイルを実行できますが内容を読み取れません。誰もファイルを変更できません。
ユーザーにプログラムの実行は許可するがソースコードの閲覧は拒否したい、コンパイル済みプログラムやスクリプトの配布に有用です。ただしシェルスクリプトの場合、cat などのツールによる読み取りは防げますが、ユーザーがスクリプトを実行すればインタプリタが代わりに読み取るため、この制限はコンパイル済みバイナリの方が効果的です。
ユースケース
ユーザーがプログラムを実行できるが、内容の閲覧やコピーはできるべきではないコンパイル済みバイナリや独自の実行ファイルに使用されます。