13.4.13.1 パーミッションを調べる

ファイルやディレクトリのパーミッション(許可)を見るには, ls コマンドを -l オプション付きで実行します.

promptls -l return2 drwx------ 2 g999999 student 4096 3 19 15:47 Desktop drwx------ 2 g999999 student 79 3 19 15:45 Documents drwx------ 21 g999999 student 4096 3 19 15:47 Library drwx------ 2 g999999 student 23 1 14 21:59 Movies drwx------ 2 g999999 student 23 1 14 21:59 Music drwxr-xr-x 4 g999999 student 31 2 21 21:22 OLDHOME drwx------ 2 g999999 student 23 1 14 21:59 Pictures drwxr-xr-x 3 g999999 student 55 1 14 21:59 Public drwxr-xr-x 3 g999999 student 68 1 14 21:59 Sites drwxr-x--x 3 g999999 student 20 3 22 11:55 windows

中程に表示されているg999999というのはファイルの所有者を表しています.

その次のstudentはファイルの所属するグループを表しています.

一番左に表示されている drwxr-xr-x などの10文字からなる文字列が現在のモードを表しています.

最初1文字目が d のときは, それがディレクトリであることを表しています.

それに続く9文字は3文字ずつ区切って考えます.最初の3文字は,ファイルの所有者(user)に対するパーミッション,次の3文字がファイルのグループ(group)に対するパーミッション,最後が他人(others)に対するパーミッションを表しています.

たとえば, drwxr-xr-x の5文字目から7文字目までの情報は, studentグループに属する人間(あるいはプログラムのこともあります)に対してのパーミッションを定めているということになります. なお, 自分の属するグループを調べるには,

promptgroups return2

と入力すればよいです.他人(others)というのは,所有者でもないし,同じグループでもないような人間に対しての許可を定めたものです.

3文字の組であるrwxの見方ですが,ファイルに対する場合とディレクトリに対する場合で読み方は微妙に異なります.

ファイルに対しては,それぞれの3文字の中では,rがファイルの中身を見ることに対する許可,wがファイルの中身の変更に対する許可,xがファイルの実行に関する許可を表しています.例えば,5文字目がrならば,そのグループに対してファイルの中身の読みとりを許可していること意味します.

ディレクトリに対しての r はそのディレクトリの中身をlsなどで見ることを許可するということです.ディレクトリに対するwは,そのディレクトリにファイルを増やしたり,ファイルを消したりすることに対する許可です.xは,そのディレクトリの子ディレクトリまで含めたディレクトリの中身の閲覧に対するパーミッションです.

permission.gif

もし,許可のないファイルを読もうとすると,「アクセス権がありません。」(permission denied)などのエラーメッセージが表示されるでしょう.