パーミッションを読む
CoddyのTerminalジャーニー「基礎」セクションの一部 — レッスン 54/82。
パーミッションが何かを理解したところで、ls -l が表示するパーミッション文字列の読み方を学びましょう。
パーミッション文字列は10文字です。最初の文字はタイプを示します:- は通常のファイル、d はディレクトリです。残りの9文字は3つのグループに分けられます:
-rwxr-xr--
│└┬┘└┬┘└┬┘
│ │ │ └── Others: r-- (read only)
│ │ └───── Group: r-x (read and execute)
│ └──────── Owner: rwx (read, write, execute)
└────────── Type: - (regular file)グループ内の各位置は特定の権限を表します。文字が存在する場合、その権限が許可されます。ダッシュ - の場合、その権限が拒否されます。
| 位置 | 文字 | 意味 |
|---|---|---|
| 1番目 | r | 読み取り |
| 2番目 | w | 書き込み |
| 3番目 | x | 実行 |
したがって r-x は読み取りと実行が許可されていますが、書き込みは許可されていません。また rw- は読み取りと書き込みが許可されていますが、実行は許可されていません。
チャレンジ
簡単ls -l を使用して、詳細なファイル一覧を表示し、各アイテムの権限文字列を確認してください。
出力を見て、各ファイルとディレクトリの権限を特定してください。各アイテムについて、10文字の権限文字列を読み、以下のことを判断してください:
- ファイル(
-)かディレクトリ(d)か - 所有者が持つ権限(最初の3文字のグループ)
- グループが持つ権限(2番目の3文字のグループ)
- その他が持つ権限(3番目の3文字のグループ)
コマンドを実行してください:
ls -l出力で、backup.sh が所有者に対して実行権限(x)を持っていて、スクリプトとして実行可能であることに注目してください。これを実行権限のない通常のファイルである report.txt と config.cfg と比較してください。
また、projects ディレクトリが - の代わりに d で始まり、ユーザーがディレクトリに入ることを許可する実行権限を持っていることにも注目してください。
チートシート
ls -l で表示される権限文字列は10文字です:
-rwxr-xr--
│└┬┘└┬┘└┬┘
│ │ │ └── Others: r-- (read only)
│ │ └───── Group: r-x (read and execute)
│ └──────── Owner: rwx (read, write, execute)
└────────── Type: - (regular file)最初の文字は種類を示します:
-は通常のファイルdはディレクトリ
残りの9文字は、所有者、グループ、その他の権限を表す3つのグループに3文字ずつ分けられます。
各位置は特定の権限を表します:
| 位置 | 文字 | 意味 |
|---|---|---|
| 1番目 | r | 読み取り |
| 2番目 | w | 書き込み |
| 3番目 | x | 実行 |
文字が存在する場合、その権限が許可されます。ダッシュ - の場合は権限が拒否されます。
例:
r-xは読み取りと実行が許可されますが、書き込みは許可されませんrw-は読み取りと書き込みが許可されますが、実行は許可されません
自分で試してみよう
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。