chmod数値 早見表|755・644などパーミッション対応表
Linux/UNIXの chmod で使う数値(オクタルモード)と rwx記号表記 の対応表です。755・644・777・700・600などの頻出値の意味と典型用途、r=4・w=2・x=1 の計算方法、setuid/setgid/stickyの特殊権限、777を避けるべき理由まで、サーバー運用・Web開発の現場で必要な情報をまとめました。
📌 まずはこれ|最頻出のchmod値
| 数値 | 記号表記 | 用途 |
|---|---|---|
| 755 | rwxr-xr-x | ディレクトリ・実行スクリプトの定番 |
| 644 | rw-r--r-- | 通常ファイルの定番(HTML・画像・設定) |
| 700 | rwx------ | 所有者専用ディレクトリ(~/.ssh 等) |
| 600 | rw------- | SSH秘密鍵・秘匿したい設定ファイル |
| 777 | rwxrwxrwx | 全ユーザーがフルアクセス。原則使わない |
※ 数値は左から「所有者・グループ・その他」の3桁。各桁は r(読)=4 + w(書)=2 + x(実行)=1 の合計です。
このページについて
chmod(change mode)はファイル・ディレクトリのアクセス権限(パーミッション)を変更するコマンドです。本ページはPOSIX.1(IEEE Std 1003.1)で定義されるファイルモードビットに基づき、実務で使う数値モード17種を記号表記・権限内訳・典型用途付きで一覧化しています。
「755と644はどう違う?」「ディレクトリに644を設定したら入れなくなった」「777にしていいのか?」といった、サーバー運用・Webサイト公開・SSH設定で頻発する疑問に即答できる構成です。
chmod数値⇄記号 対応表(メイン表)
下の入力欄に「755」「rwx」「秘密鍵」などを入力すると行を絞り込めます(空欄で全表示)。
| 数値 | 記号表記 | 所有者 | グループ | その他 | 典型用途 |
|---|---|---|---|---|---|
| 777 | rwxrwxrwx | 読・書・実 | 読・書・実 | 読・書・実 | 全ユーザーがフルアクセス。原則使わない(下記の注意参照) |
| 775 | rwxrwxr-x | 読・書・実 | 読・書・実 | 読・実 | グループにも書き込みを許可する共有ディレクトリ |
| 755 | rwxr-xr-x | 読・書・実 | 読・実 | 読・実 | ディレクトリ・実行スクリプト・公開Webディレクトリの定番 |
| 750 | rwxr-x--- | 読・書・実 | 読・実 | なし | グループまでに限定したディレクトリ・スクリプト |
| 744 | rwxr--r-- | 読・書・実 | 読 | 読 | 所有者のみ実行でき、他は内容の閲覧のみ(使用例は少ない) |
| 711 | rwx--x--x | 読・書・実 | 実 | 実 | 中身を一覧させず通過のみ許可するディレクトリ |
| 700 | rwx------ | 読・書・実 | なし | なし | 所有者専用ディレクトリ(~/.ssh の定番) |
| 666 | rw-rw-rw- | 読・書 | 読・書 | 読・書 | 全ユーザーが読み書き可能。原則使わない |
| 664 | rw-rw-r-- | 読・書 | 読・書 | 読 | グループで共同編集するファイル |
| 660 | rw-rw---- | 読・書 | 読・書 | なし | 所有者とグループのみ読み書きするファイル |
| 644 | rw-r--r-- | 読・書 | 読 | 読 | 通常ファイルの定番(HTML・画像・設定ファイル等) |
| 640 | rw-r----- | 読・書 | 読 | なし | グループのみ閲覧を許可する設定ファイル・ログ |
| 600 | rw------- | 読・書 | なし | なし | SSH秘密鍵・秘匿したい設定ファイルの定番 |
| 555 | r-xr-xr-x | 読・実 | 読・実 | 読・実 | 書き込みを禁止した実行ファイル・ディレクトリ |
| 444 | r--r--r-- | 読 | 読 | 読 | 全ユーザー読み取り専用(誤編集の防止) |
| 400 | r-------- | 読 | なし | なし | 所有者のみ読み取り(鍵ファイルの最小権限) |
| 000 | --------- | なし | なし | なし | 全権限なし(一時的なアクセス遮断) |
1桁の内訳(0〜7)|r=4・w=2・x=1 の加算
chmodの各桁は、読み取りr=4・書き込みw=2・実行x=1 を足し合わせた0〜7の数字です。3ビットの2進数がそのまま8進数1桁に対応します。
| 数値 | 記号 | 読(r) | 書(w) | 実行(x) | 計算式 |
|---|---|---|---|---|---|
| 0 | --- | — | — | — | 0 |
| 1 | --x | — | — | ○ | 1 |
| 2 | -w- | — | ○ | — | 2 |
| 3 | -wx | — | ○ | ○ | 2+1 |
| 4 | r-- | ○ | — | — | 4 |
| 5 | r-x | ○ | — | ○ | 4+1 |
| 6 | rw- | ○ | ○ | — | 4+2 |
| 7 | rwx | ○ | ○ | ○ | 4+2+1 |
🔧 簡易変換ツール|数値 → rwx表記
変換結果
上の欄に0〜7の数字3桁(例: 755)を入力してください。
特殊権限|setuid(4000)・setgid(2000)・sticky(1000)
4桁で指定する場合、先頭の1桁は特殊権限です。chmod 4755 file のように、通常の3桁に加算して指定します。
| 加算値 | 名称 | 表示位置 | 効果 | 例 |
|---|---|---|---|---|
| 4000 | setuid | 所有者のx位置が s | 実行時にファイル所有者の権限で動作する | 4755 = rwsr-xr-x(passwdコマンド等) |
| 2000 | setgid | グループのx位置が s | 実行時にファイルのグループ権限で動作。ディレクトリでは中に作られるファイルがそのグループを継承する | 2755 = rwxr-sr-x |
| 1000 | スティッキービット | その他のx位置が t | ディレクトリ内のファイルを、所有者(とディレクトリ所有者・root)以外が削除・改名できない | 1777 = rwxrwxrwt(/tmp の定番) |
※ 対応する位置に実行権限(x)が立っていない場合、s/t は大文字の S/T で表示されます。
実務の注意点
777 にしてはいけない理由
777は「システム上の全ユーザーが書き換え・実行できる」状態です。共有サーバーやWebサーバーでは、他ユーザーや侵入したプロセスによるファイル改ざん・不正コード設置の入口になります。「権限エラーが出たからとりあえず777」は、本当の原因(所有者の不一致・途中のディレクトリのx不足など)を隠すだけです。chown で所有者を正し、755/644 に戻すのが原則です。OpenSSHのように、秘密鍵のパーミッションが緩いと「Permissions are too open」エラーで動作を拒否するソフトウェアもあります。
ディレクトリの x は「中に入る権限」
ディレクトリでは r=ファイル名の一覧表示、w=中のファイルの作成・削除・改名、x=中に入る(通過する)権限です。xがないと、cdで入れず中のファイルにもアクセスできません。wの行使にはxも必要です。ディレクトリに644を設定すると事実上使えなくなるのはこのためです。
ファイルとディレクトリは分けて設定する
chmod -R 755 と一括再帰すると、実行不要な通常ファイルにまで実行権限が付きます。findで種別を分けて設定するのが定石です。
find /path -type d -exec chmod 755 {} + # ディレクトリのみ755
find /path -type f -exec chmod 644 {} + # ファイルのみ644
使い方・選び方のポイント
使用場面
Webサイトのファイル公開、シェルスクリプトへの実行権限付与(chmod +x / chmod 755)、SSH鍵の保護、共有ディレクトリの権限設計に使います。基本形は chmod 数値 対象、再帰は -R です。
よくある間違い
①ディレクトリに644を設定して中に入れなくなる ②実行できない原因が所有者(chownの問題)なのに数値だけ変える ③chmod -R 777 で全体を開放する ④SSH秘密鍵を644のまま放置して接続拒否される ⑤3桁の順番(所有者→グループ→その他)を取り違える。
選び方のコツ
①迷ったら「ディレクトリ755・ファイル644」 ②秘匿ファイルは600・秘匿ディレクトリは700 ③グループ共有が必要なときだけ775/664に広げる ④「その他」に書き込み(下1桁の2/3/6/7)を与える設定は原則避ける。
パーミッションの仕組み|数値表記の背景
UNIX系OSでは、すべてのファイル・ディレクトリに「所有者(user)・グループ(group)・その他(others)」という3つの主体ごとに、読み取り(r)・書き込み(w)・実行(x)の3種類の許可ビットが割り当てられています。この3ビット×3主体=9ビットがファイルのモードビットとしてinodeに記録されており、POSIX.1(IEEE Std 1003.1)で標準化されています。3ビットは0〜7の8進数1桁でちょうど表現できるため、「755」のような8進数3桁がパーミッションの数値表記として使われます。
644や755が「定番」とされるのには理由があります。プロセスが新しくファイルを作るとき、通常はファイル666・ディレクトリ777を基準に、そこからumask値を差し引いた(正確にはビットを落とした)権限が付きます。多くの環境の既定umaskは022(グループ・その他の書き込みを落とす)なので、新規ファイルは644、新規ディレクトリは755になります。つまり644/755は「システムが既定で作る、書き込みを所有者に限定した安全な状態」そのものです。
chmodには数値(絶対指定)と記号(相対指定)の2つの流儀があります。数値指定は chmod 644 file のように9ビット全体を丸ごと置き換えるのに対し、記号指定は chmod u+x file(所有者に実行権を追加)、chmod go-w file(グループとその他から書き込みを除去)のように現状との差分だけを変更します。既存の権限を保ったまま一部だけ変えたいときは記号指定、状態を確定させたいときは数値指定、と使い分けるのが実務的です。
よくある質問
Q1. 755と644の違いは?
A. 755はrwxr-xr-xで実行権限(x)を含み、ディレクトリや実行スクリプトに使います。644はrw-r--r--で実行権限がなく、HTMLや画像などの通常ファイルに使います。ディレクトリは中に入るためにxが必要なので、「ディレクトリは755・ファイルは644」が基本の組み合わせです。
Q2. chmodの数値はどう計算する?
A. 読み取り(r)=4、書き込み(w)=2、実行(x)=1として、許可する権限の数字を足します。これを左から所有者・グループ・その他の3桁で並べます。例えば755は、所有者=4+2+1=7(rwx)、グループ=4+1=5(r-x)、その他=4+1=5(r-x)です。
Q3. chmod 777はなぜ危険?
A. 777はrwxrwxrwxで、システム上の全ユーザーが書き換えも実行もできる状態です。共有サーバーやWebサーバーでは改ざん・不正コード設置の入口になります。「動かないから777」は所有者やディレクトリ権限といった根本原因を隠すだけなので、755/644と正しい所有者設定(chown)で解決するのが原則です。
Q4. ディレクトリの実行権限(x)は何を意味する?
A. ディレクトリのxは「中に入る(通過する)権限」です。xがないとcdで入れず、中のファイルにアクセスできません。rは「ファイル名の一覧を見る権限」、wは「中にファイルを作成・削除・改名する権限」で、wを行使するにはxも必要です。そのためディレクトリに644を設定すると機能しなくなります。
Q5. SSHの秘密鍵はどのパーミッションにすべき?
A. 秘密鍵は600(所有者のみ読み書き)または400(所有者のみ読み取り)にします。~/.sshディレクトリ自体は700にします。パーミッションが緩いと、OpenSSHは「Permissions are too open」というエラーを出して鍵の使用を拒否します。
Q6. 4桁の数値(4755や1777)は何を意味する?
A. 先頭の1桁は特殊権限です。setuid=4000(所有者の権限で実行)、setgid=2000(グループの権限で実行・ディレクトリでは新規ファイルがグループを継承)、スティッキービット=1000(ディレクトリ内のファイルを所有者以外が削除・改名できない)。4755はsetuid付きの755、1777は/tmpに使われるスティッキービット付きの777です。
Q7. 現在のパーミッションを数値で確認する方法は?
A. ls -l で rwxr-xr-x のような記号表記を確認できます。数値で直接確認したい場合は、GNU coreutilsのstatコマンドで stat -c "%a" ファイル名 と実行すると、755のような数値が表示されます。
Q8. 755の意味は?
A. 755は「所有者はフルアクセス、グループとその他は読み取り・実行のみ」を表す、ディレクトリと実行スクリプトの標準値です。
- 所有者(7) = 読み+書き+実行(
rwx) - グループ(5) = 読み+実行(
r-x) - その他(5) = 読み+実行(
r-x) - 記号表記は
rwxr-xr-x
書き込みできるのは所有者だけなので、公開Webディレクトリにも安全に使える基準値です。
Q9. 644の意味は?
A. 644は「所有者だけが編集でき、全ユーザーが読める」通常ファイルの標準値です。
- 所有者(6) = 読み+書き(
rw-) - グループ(4) = 読みのみ(
r--) - その他(4) = 読みのみ(
r--) - 記号表記は
rw-r--r--
既定umaskが022の環境で新規ファイルに自動的に付く値で、HTML・画像・CSSなど実行しないファイルはこの値のままで問題ありません。
Q10. 777が危険な理由は?
A. システム上の誰でもファイルを書き換え・実行できるため、改ざんや不正コード設置の標的になるからです。
- 同一サーバーの他ユーザーや侵入したプロセスが内容を自由に書き換えられる
- 書き換えたスクリプトをそのまま実行させる攻撃の入口になる
- Apache suEXEC のように、他者書き込み可のファイルの実行を拒否する仕組みもあり、かえって動かなくなることがある
- 権限エラーの根本原因(所有者不一致など)が放置されたまま残る
全員書き込み可が正当なのは、スティッキービット付きの /tmp(1777)のような特殊な共有ディレクトリに限られます。
Q11. 700はいつ使う?
A. 700は「所有者以外は一切アクセス不可」にしたいディレクトリに使います。
~/.sshディレクトリ(SSH設定・鍵の保管場所)の定番値- 他ユーザーに見せたくない作業用・バックアップ用ディレクトリ
- 所有者だけが実行するスクリプト(
rwx------)にも使える - 中のファイル自体は600(秘密鍵は600または400)にする
グループにも読ませたい場合は750、通過のみ許可する場合は711と、必要最小限だけ緩めるのが原則です。
関連する早見表
- Linuxコマンド早見表 — chmod/chown/find の使い方
- crontab書式 早見表 — 定期実行スクリプトの設定
- 正規表現早見表 — ログ・ファイル名のパターン処理
- HTTPステータスコード早見表 — 403 Forbidden とパーミッション
- ASCIIコード早見表 — 文字コードのリファレンス
関連規格・出典
- POSIX.1 (IEEE Std 1003.1) — ファイルモードビットおよび chmod ユーティリティの標準仕様
- GNU coreutils マニュアル — chmod・stat コマンドの実装リファレンス
最終更新: 2026-07-04