logo
 
cpacer

3.11 保護モード

すべてのファイルやディレクトリは ``保護モード''を設定することで,操作できるユーザを制限で きます. ユーザは所有するファイル・ディレクトリについて, 保護モードを設定することで他のユーザからの参照や書き込み, 実行を禁止できます. 保護モードは,``アクセス権''や ``パーミッション'' ともいいます. 次に保護モードの概説と, その設定方法を説明します.

3.11.1 保護モードの設定

ファイルの保護モードには, それぞれのファイル・ディレクトリごとに, 操作権限を持つユーザと 操作権限 が設定されています.

3.11.1.1 アクセスの対象ユーザ

保護モードは対象となるユーザによって次の3種類が設定されています. ただし, CNS の学生ユーザはすべて同じグループに所 属しています.

それぞれの対象によって保護モードを区別して設定できます.

3.11.1.2 操作権限

操作権限には 読み出し, 書き込み, 実行 の3つがあります. 設定の効果は対象がファイルである場合とディレクトリである場合によって異なります.

3.11.2 保護モードの調べ方 -- (ls -l)

ファイルやディレクトリの保護モードを調べるには, lsコマンドに`-l'オプションを指定して実行します.

% ls -l  <RET>
total 5
drwx------ 32 t02000tf   1024 Nov 24 10:55 Mail
-rw-rw-rw-  1 t02000tf   4515 Nov 18 10:42 READHELP
drwxrwxr-x  4 t02000tf    512 Nov 18 11:12 Wnn
lrwxrwxrwx  1 t02000tf     23 Oct  4 21:38 archives -> /home/archives/t02000tf
-rw-r--r--  1 t02000tf    177 Nov 24 14:43 memo
drwxr-xr-x  2 t02000tf    512 Jul 20 09:57 public_html
% _

保護モードの状態を表すのは, 最も左側の列です. 最初の文字は, そのファイルの種類を表し, `-'は通常のファイル, `d'はディレクトリ, `l'はリンクしたファイル を示しています. 残りの部分は, 3文字ずつの3つのフィールドで構成されています. 最初の3文字はファイルの所有者の操作権限を示し, 次の3文字は同じグループのメンバの操作権限, 最後の3文字はその他のユーザの操作権限を表しています. 操作を許可されていれば, 許可されている操作の頭文字( `r', `w', `x' )が表示され, 許可されていなければ `-' が表示されます.

メールが格納されている`Mail'ディレクトリは, ユーザ本人以外はすべてのアクセス権が不許可になっており (`rwx---'), `public_html'ディレクトリは, 他のユーザへの読み出し (`r') だけでなく, 実行 (`x') も許可されています (`rwxr-xr-x').

3.11.3 保護モードの変更 -- (chmod)

ファイルやディレクトリの保護モードを変更するには, chmodコマンドを利用します.

% ls -l  <RET>
-rw-r--r--  9 t02000tf     1024 Jan 31 14:48 report.txt
% chmod go-r <RET>
% ls -l <RET>
-rw-------  9 t02000tf     1024 Jan 31 14:48 report.txt
% chmod a+r <RET>
% ls -l <RET>
-rw-r--r--  9 t02000tf     1024 Jan 31 14:48 report.txt
% _

3.11.3.1 8進法によるモード設定

`a+r', `g-r' などといった表記方法以外にも, モード設定の方法があります. 保護モードは, 対象別の3つの部分( ユーザ, グループ, その他 )から成り立っていますが, 読み出し(`r')を4, 書き込み(`w')を2, 実行(`x')を1 とし, 許可する動作の数字だけを合計すると, モード設定のあらゆる組み合わせを0から7までの8進法の数で表せます(表3.4). この数字を3つ並べたものを, chmodコマンドの引数(モード指定)として指定できます.


表 3.4: 8進数と保護モード
8進数 意味 rwx
0 許可なし ---
1 実行のみ可 --x
2 書き込みのみ可 -w-
3 書き込みと実行のみ可 -wx
8進数 意味 rwx
4 読み出しのみ可 r--
5 読み出しと実行のみ可 r-x
6 読み出しと書き込みのみ可 rw-
7 すべて許可 rwx

次にいくつか例をあげます.

% ls -lF  <RET>
drwxr-xr-x  4 t02000tf     1024 Jan 31 14:51 Report/
% chmod 700 Report <RET>
% ls -lF <RET>
drwx------  4 t02000tf     1024 Jan 31 14:51 Report/
% chmod 755 Report <RET>
drwxr-xr-x  4 t02000tf     1024 Jan 31 14:51 Report/
% _