chmod でつまづいた私がまとめた権限のお話
こんにちは、みおです。
Linux を触りはじめた頃に必ずと言っていいほど出会うのが Permission denied。
ファイルを実行しようとしたり、設定ファイルをいじろうとしたりすると現れて「えっ、なんで!?」って固まるやつです。
そんな私が実際につまづきながら整理したのが、今回の chmod とファイル権限の基本。
忘備録もかねてまとめます。同じようにハマった人の参考になればうれしいです。
権限ってなに?
Linux のファイルやディレクトリには「誰が」「何を」できるかが設定されています。
具体的には以下の3つの権限が基本です。
- r (read) … 読み取り
- w (write) … 書き込み
- x (execute) … 実行
これを 所有者 (user)、グループ (group)、その他 (others) の3種類の立場ごとに管理しています。
例:
-rw-r--r--
- 所有者:読み取り + 書き込み
- グループ:読み取りのみ
- その他:読み取りのみ
こんな感じ。
chmod で権限を変える
ファイルやディレクトリの権限を変更するのが chmod です。
書き方は大きく2種類あります。
1. 記号モード
アルファベットで指定するやり方。
「誰に (u/g/o)」「どんな操作 (+/-/=)」「どの権限 (r/w/x)」を組み合わせます。
例:
# グループに書き込み権限を追加
chmod g+w memo.txt
# 所有者から実行権限を外す
chmod u-x script.sh
# 所有者:読み書き実行, グループ:読み実行, その他:読み
chmod u=rwx,g=rx,o=r file.txt
複数まとめて指定できるのが便利ポイントです。
2. 数字モード
権限を「数字3桁」で表す方法。
r=4, w=2, x=1 を合計して指定します。
権限の早見表
| 数字 | 権限 | 意味 |
|---|---|---|
| 0 | --- | 権限なし |
| 1 | --x | 実行のみ |
| 2 | -w- | 書き込みのみ |
| 3 | -wx | 書き込み + 実行 |
| 4 | r-- | 読み取りのみ |
| 5 | r-x | 読み取り + 実行 |
| 6 | rw- | 読み取り + 書き込み |
| 7 | rwx | 読み取り + 書き込み + 実行 |
例えば 755 なら:
- 所有者 → 7 (rwx)
- グループ → 5 (r-x)
- その他 → 5 (r-x)
chmod 755 script.sh
これで「所有者は自由に使えるけど、他の人は実行できるだけ」な設定になる。
ディレクトリの「x」って何?
初心者が混乱しやすいのがこれ。
ファイルの「x」は実行だけど、ディレクトリの場合は「その中に入れるかどうか」。
-
x がない →
cdできない -
r がない →
lsできない - w がない → ファイルを作れない
ディレクトリ操作ではこの3つの組み合わせを意識すると理解しやすいです。
失敗あるある
chmod: changing permissions of 'file': Operation not permitted
こういうエラーが出るときは、単純に 権限が足りない か root 権限が必要なケース。
そんなときは sudo をつけると動くこともあります。
実際にやってみよう
- 適当なファイルを作る
echo "hello" > hello.txt
ls -l hello.txt
- 権限を変えて確認
chmod g+w hello.txt
ls -l hello.txt
- ディレクトリに対して
xを外してみる
mkdir testdir
chmod a-x testdir
cd testdir # ← Permission denied になる!
「なるほど!」が増えると思います。
まとめ
-
chmodは「誰に」「何を許可するか」を変えるコマンド - 記号モードと数字モードを両方覚えると便利
- 数字モードは早見表とセットで覚えると暗記しやすい
- ディレクトリの
xは「中に入れるかどうか」 - トラブルの多くは権限不足か
sudoが必要なだけ
権限設定は最初は混乱するけど、感覚さえつかめばめちゃくちゃ強い味方です。
次は chown(所有者変更)や umask(デフォルト権限)もあわせて触るとさらに理解が深まります。
Permission denied に泣かされてた私も、今ではちょっとドヤ顔できるようになったので、みんなも一緒に頑張りましょ〜!
💡 ちなみに…
ほかにも「Linux初心者におすすめの学習リソース」をまとめた記事を書いてます。
リソース選びで迷ったときの参考になると思うので、良かったらのぞいてみてくださいね〜。