chmod 計算機 (8 進 ↔ rwx ↔ ugo 相互変換)
Unix/Linux のファイルパーミッションを 8 進数 (755 等) ↔ シンボリック (rwxr-xr-x) ↔ ugo 表記 (u=rwx,g=rx,o=rx) で相互変換するツール。 setuid / setgid / sticky の特殊ビットも対応、 755 / 644 / 600 / 1777 などよく使う例のプリセット付き。
Unix/Linux のファイルパーミッションを 8 進数 (755 等) ↔ シンボリック (rwxr-xr-x) ↔ ugo 表記 (u=rwx,g=rx,o=rx) で相互変換するツール。 setuid / setgid / sticky の特殊ビットも対応、 755 / 644 / 600 / 1777 などよく使う例のプリセット付き。
このツールは、 Linux/Unix のファイルパーミッションを 8 進数 (755 等) ↔ シンボリック (rwxr-xr-x) ↔ ugo 表記 (u=rwx,g=rx,o=rx) で相互変換します。 チェックボックスで r/w/x を切り替えると 3 表記が同時に更新され、 setuid / setgid / sticky の特殊ビットにも対応します。
「755 ってどういう意味だっけ?」 「シンボリックの rwsr-xr-x の s は何?」 を毎回ググるのをやめたい人向け。 chmod コマンドのコピペ用フォーマット (8 進形式・ugo 形式) もターミナル風表示で出るので、 そのまま貼り付けて使えます。
8 進パーミッションの各桁は、 read (4) + write (2) + execute (1) の合算です。 桁順は左から「特殊ビット → 所有者 → グループ → その他」。
rwxr-xr-x ― 実行ファイル・ディレクトリの標準rw-r--r-- ― テキスト・設定ファイルの標準rw------- ― SSH 秘密鍵 (~/.ssh/id_rsa)・.envrwx------ ― ~/.ssh ディレクトリ自身rwxrwxrwx ― 誰でも全権限 (本番では NG)4 桁の 8 進数 (例: 4755) の先頭は特殊ビットです。 これも 4 + 2 + 1 の合算:
/usr/bin/passwd (4755)/tmp (1777)setuid は強力ですが現代では脆弱性リスクから極力避けるべきとされ、 Linux capabilities や sudo / polkit による代替が推奨されます。 詳しくは 「chmod 755 / 644 / 600 完全ガイド」 記事へ。
OpenSSH は秘密鍵の group / other に少しでも権限があると起動時にエラーで止まります:
Permissions 0644 for '/home/user/.ssh/id_rsa' are too open.
対処: chmod 600 ~/.ssh/id_rsa (より厳しく 400 でも可)。 ~/.ssh ディレクトリ自体も 700 が必要です。 これはシェル機能ではなく ssh(1) のセキュリティ要件。 「必要最小限の権限」 = 最小権限の原則を意識すれば、 多くの事故は未然に防げます。