アクセス制御
Linux は複数のユーザーが利用できるため、ファイルやディレクトリに「パーミッション」と呼ばれるアクセス権限が設定できます。
パーミッションを変更するには、「モード」を指定します。モードの指定は、アルファベットや記号を使う方法と数字を使う方法があります
ファイルやディレクトリのパーミッションの確認方法
「 ls -l 」で確認できます。
ls -al
drwxr-xr-x. 3 user user 33 Mar 10 15:19 .
drwx------. 3 user user 144 Mar 10 15:20 ..
drwxr-xr-x. 2 user user 6 Mar 10 15:19 dir
-rw-r--r--. 1 user user 0 Mar 10 15:20 test.txt 「 drwxr-xr-x. 3 user user 33 Mar 10 15:19 . 」の読み方は以下になります。
| 表示 | 内容 |
|---|---|
| d | ディレクトリ(ファイルの場合は 「 - 」) |
| rwxr-xr-x | アクセス権 |
| 3 | ハードリンク数 |
| user | 所有者 |
| user | 所有グループ |
| 33 | ファイルサイズ |
| Mar 10 15:19 | 最終更新日時 |
| . | ファイル名 |
アルファベットや記号を使ったモードの指定方法
| モード | モードの内容 |
|---|---|
| r | 読み込み権限 |
| w | 書き込み権限 |
| x | 実行権限 |
数字を使ったモードの指定方法
「オーナー」、「グループ」、「その他ユーザー」の各パーミッションを8進数で並べると、3桁の8進数でパーミッションを表せます。
rが4、wが2、xが1 になり、これらを足した数で表します。
| ファイルモード | 数字 | モードの内容 |
|---|---|---|
| rwx | 7 | 読み書き実行が可能 |
| rw- | 6 | 読み込み・書き込みが可能 |
| r-x | 5 | 読み込み・実行が可能 |
| r-- | 4 | 読み込みのみ可能 |
| -wx | 3 | 書き込み・実行が可能 |
| -w- | 2 | 書き込みのみ可能 |
| --x | 1 | 実行のみ可能 |
| --- | 0 | アクセス不可 |
代表的なファイルモードの設定
| ファイルモード | 数値 | 意味 |
|---|---|---|
| r-- --- --- | 400 | オーナーのみが読み込み可能 |
| rw- --- --- | 600 | 所有者のみ読み込み・書き込み可能 |
| rw- r-- r-- | 644 | オーナーは読み込み、書き込み可能で、グループとその他は読み込みのみ可能 |
| rwx --- --- | 700 | オーナーのみが読み込み、書き込み、実行が可能 |
| rwx r-x r-x | 755 | 読み書き、実行は全ユーザー可能で、オーナーのみが書き込み可能 |
| rwx rwx rwx | 777 | 全ユーザーが読み書き、実行が可能 |
| --- --- --- | 000 | 全ユーザーがアクセス不可 |
ファイルモードの変更
ファイルモードを変更できるのは、ファイルやディレクトリの所有者と root のみです。
chmod -R ファイルモード ファイルパスまたはディレクトリパス
chmod 755 test.txt chmod コマンドで「-R」をつけると、指定したディレクトリ以下にあるすべてのファイルとディレクトリをすべて変更します。