◆ ファイルのパーミッションと所有者の確認
ls -l コマンドの後にファイル名を指定すると、そのファイル情報の詳細情報が得られます。
$ ls -l data.txt
-rw-rw-r--. 1 admin admin 950 May 25 00:12 data.txt
|
◆ アクセス権
Linuxで作成されるファイルやディレクトリにはアクセス権(パーミッション)が設定されます。これで
ユーザごとにファイルへのアクセスの許可または禁止を設定できます。アクセス権には、以下の3種類が
あります。ファイルへのアクセス権限、ディレクトリへのアクセス権限のそれぞれの意味を理解しよう。
◆ ファイルへのアクセス権限
アクセス権 |
表記 |
説明 |
読み取り |
r |
read。ファイルの読み取りが可能 ( 内容表示など ) |
書き込み |
w |
write。ファイルへの書き込みが可能 ( 編集や上書きコピーなど ) |
実行 |
x |
execute。ファイルの実行が可能 ( プログラムやシェルスクリプトの実行 ) |
◆ ディレクトリへのアクセス権限
アクセス権 |
表記 |
説明 |
読み取り |
r |
read。ディレクトリの読み取りが可能 (ディレクトリに登録されているファイル名の表示) |
書き込み |
w |
write。ディレクトリの書き込みが可能 ( 新規ファイル作成、削除、名前変更など) |
実行 |
x |
execute。ディレクトリに登録されいているファイルへのアクセスが可能 |
※ ファイルへのアクセス権限にreadの許可があっても、ディレクトリのexecute許可がなければファイルにアクセスできません。
ls -l コマンドにより確認できるアクセス権の見方は以下の通りです。
ファイルの種別の表示は3つあり「 - 」はファイル、「 d 」はディレクトリ、「 l 」はリンクを表します。
また、アクセス権は数値で表すことができます。下表のとおり、読み取り(r = 4)、書き込み(w = 2)
実行(x = 1)であることが分かります。つまり全権限(rwx)は「4+2+1=7」であることが分かります。
記号表記 |
2進数 |
8進数 |
--- |
000 |
0 |
--x |
001 |
1 |
-w- |
010 |
2 |
-wx |
011 |
3 |
r-- |
100 |
4 |
r-x |
101 |
5 |
rw- |
110 |
6 |
rwx |
111 |
7 |
具体的に見てみます。あるファイルのアクセス権「rwx r-x r-x」は、数値では「755」と表記できます。
アクセス権は、chmodコマンドにより変更することができます。
◆ 構文 : chmod [ オプション ] アクセス権 ファイル名
オプション |
説明 |
-R |
指定したディレクトリ以下の全てのファイルのアクセス権の変更 |
◆ 実行例 : 「testdata.txt」というファイルのアクセス権を「 rw- r-- r-- 」にする設定
一般的には上記でアクセス権限の設定変更を行いますが、以下の3つの記号を使用しても設定できます。
カテゴリー |
説明 |
u |
所有者 |
g |
グループ |
o |
その他のユーザ |
a |
全てのユーザ |
定義 |
説明 |
+ |
アクセス権の追加 |
- |
アクセス権の削除 |
= |
アクセス権の指定 |
権限 |
説明 |
r |
読み取り権限 |
w |
書き込み権限 |
x |
実行権限 |
s |
SUID または SGID |
t |
スティッキービット |
◆ 実行例 : 「testdata.txt」というファイルのアクセス権が変更前「644」である値を、変更後に「666」とする設定
$ chmod go+w testdata.txt |
上記解説ですが、アクセス権「644 = rw- r-- r--」であるので、「666 = rw- rw- rw-」にするために
「グループ = g 」と「その他のユーザ = o」の項目で「w」を追加する必要があり「go+w」となります。
|