ここではLinuxのパーミッション(権限)について学習します。
ファイルやディレクトリを作成すると、その作成したユーザーが所有者となる。
また、ユーザーが属しているグループが所有グループとなる。
ファイルの所有者と所有グループは、ls -l
コマンドで確認できる。
$ ls -l
drwxr-xr-x. 2 CentUser CentUser 6 6月 20 14:14 Sample
上記の例では、CentUserユーザーが所有者で、CentUserグループが所有グループとなる。
centOsではユーザーを作成すると、そのユーザーと同名のグループが作成される。
ファイルとディレクトリにはアクセス権が設定されている。
アクセス権には、「読み取り可能」「書き込み可能」「実行可能」の3種類があり、
「r
」「w
」「x
」で表す。
アクセス権は「所有者」「所有グループ」「その他のユーザー」に対して設定できる。
-
ファイルのアクセス権
アクセス権 説明 読み取り可能 ファイルの内容を読み取ることができる。 書き込み可能 ファイルの内容を変更できる。 実行可能 ファイルを実行できる。 -
ディレクトリのアクセス権
アクセス権 説明 読み取り可能 ディレクトリ内のファイル一覧を表示できる。 書き込み可能 ディレクトリ内でファイルの作成・削除ができる。 実行可能 ディレクトリ内のファイルにアクセスできる。
アクセス権は、ls -l
コマンドで確認できる。
$ ls -l
drwxr-xr-x. 2 CentUser CentUser 6 6月 20 14:14 Sample
2文字目から10文字目がアクセス権を表しています。
上記の例では、rwxr-xr-x
で、
- 所有者
- 読み込み・書き込み・実行ができる
- 所有グループ
- 読み込み・実行ができる
- その他のユーザー
- 読み込み・実行ができる
アクセス権を数値で表すことがあります。
「読み取り可能」= 4
「書き込み可能」= 2
「実行可能」 = 1
として「所有者」「所有グループ」「その他のユーザー」ごとに足した数値で表します。
rwxr-xr-x
を数値で表すと、
- 所有者
rwx
=> 4 + 2 + 1 = 7
- 所有グループ
r-x
=> 4 + 0 + 1 = 5
- その他のユーザー
r-x
=> 4 + 2 + 1 = 5
となり755
で表現できます。
アクセス権を変更するには、chmod
コマンドを使います。
アクセス権を変更できるのはファイルの所有者とrootユーザーだけです。
- 書式
chmod [-R] アクセス権 ファイル名orディレクトリ名
アクセス権は、記号で指定しても数値で指定してもどちらでも構わない。
記号で指定するには下記の表を参照してみてください。
対象 | 説明 |
---|---|
u |
所有者 |
g |
所有グループ |
o |
その他のユーザー |
a |
全てのユーザー |
権限の設定 | 説明 |
---|---|
+ |
権限を追加 |
- |
権限を削除 |
= |
権限を指定 |
詳しくは下記、外部ページを参照してください。
-
sampleファイルの所有グループ・その他のユーザーに書き込み権限を追加
$ chmod go+w sample
-
sampleファイルの所有グループ・その他のユーザー以外の書き込み権限を削除
$ chmod o-w sample
-
sampleファイルを
rwxr--r--
で指定する$ chmod a=rwx,g-wx,o-wx sample
-
数値で指定。sampleファイルを
rwxr--r--
で指定する$ chmod 744 sample
すべてのファイルやディレクトリを作成すると、所有者と所有グループが設定されます。
作成したユーザーが所有者、ユーザーが属するグループが所有グループとなる。
以下では所有者・所有グループの変更の仕方を紹介するが変更できるのはrootユーザーのみである。
- 書式
chown [-R] 所有者 ファイル名orディレクトリ名
- 書式
chgrp [-R] 所有グループ ファイル名orディレクトリ名
chown
コマンドは所有者・所有グループを一括で変更することができます。
- 書式
chown [-R] 所有者:所有グループ ファイル名orディレクトリ名
詳しくは下記、外部ページを参照してください。