パーミッション設定


■パーミッションの適用範囲

 ls -lコマンドで当該ディレクトリ内に存在するファイルやディレクトリがどういうパーミッション情報なのか確認できます。

例えば、ls -lコマンドによって、以下のように表示される行があったとする。

drwxrw-r-- 2 vagrant vagrant 4096 1月 18 03:03 2018 apps

 

左側の文字列のうち最左列のdを除いたrwxrw-r--がパーミッション情報です。

左からuser、group、otherのパーミッション情報が並びます。

ファイルの種類 userのパーミッション groupのパーミッション otherのパーミッション
d rwx rw- r--

 パーミッション情報は以下の通りです。

パーミッション情報の略号 意味
r read:読み込み可能
w write:書き込み可能
x execute:実行可能 ※ディレクトリの場合は単に開くことができるの意味
- 不可能

 

■chmodコマンド:パーミッション情報の変更方法(1)

 初期設定が以下のようであったとする。

drwxrw-r-- 2 vagrant vagrant 4096 1月 18 03:03 2018 apps

 

例①:appsディレクトリのパーミッション設定のうちgroupを実行可能に変更する。

chmod g+x apps

結果として以下のように変更されたとls -lコマンドで確認できます。

drwxrwxr-- 2 vagrant vagrant 4096 1月 18 03:03 2018 apps

 

例②:appsディレクトリのパーミッション設定のうちgroupとotherを実行可能に変更する。

chmod go+x apps

結果として以下のように変更されたとls -lコマンドで確認できます。

drwxrwxr-x 2 vagrant vagrant 4096 1月 18 03:03 2018 apps

 

例③:appsディレクトリのパーミッション設定のすべてを実行不可能に変更する。

chmod a-x apps

drw-rw-r-- 2 vagrant vagrant 4096 1月 18 03:03 2018 apps

 

※上記の例①~③は、いずれもappsディレクトリの一つ上層をカレントディレクトリとする場合に実行できる。そうでなければ、appsを絶対パス(~/apps/もしくは、/home/ユーザー名/apps/)で表示させる必要があります。

 

■chmodコマンド:パーミッション情報の変更方法(2)

 別のパーミッション情報の表現として数値で表示できる。

r w x -
2^2=4 2^1=2 2^0=1 0

 初期設定が以下のようであったとする。

drwxrw-r-- 2 vagrant vagrant 4096 1月 18 03:03 2018 apps

 

 上記のappsディレクトリのパーミッション情報を数値で表すと、

パーミッション適用範囲 user group other
上記の例 rwx rw- r--
各適用範囲における数値 421 420 400
各適用範囲における数値の合計 7 6 4

当該ファイルのパーミッション

情報を表す一つの数値

764

 

 以上のようにappsディレクトリのパーミッション情報は764として表される。以下、数値でパーミッション情報を変更する方法を例として示す。

 

例①:appsディレクトリのパーミッション情報をdrwxrw-r--から、drwxrwxr--に変更する。

chmod 774 apps

 

例②:appsディレクトリのパーミッション情報をdrwxrw-r--から、drw-rw-r--に変更する。

chmod 664 apps

 

※上記の例①~③は、いずれもappsディレクトリの一つ上層をカレントディレクトリとする場合に実行できる。そうでなければ、appsを絶対パス(~/apps/もしくは、/home/ユーザー名/apps/)で表示させる必要があります。