Linux

【Linux】ディレクトリのパーミッション

ファイルと同じくディレクトリにもパーミッションが設定されています。ディレクトリとファイルではパーミッションの意味が違ったりします。

ディレクトリのパーミッションの確認方法

lsコマンドに-lオプションを加え、ディレクトリ自身の情報を表示する-dオプションを使います。

$ ls -ld dir1
drwxr-xr-x  2 kenjin  staff  64 Oct 21 06:25 dir1

ファイルとディレクトリのパーミッション記号の違い

r, w, xの記号は許可されるファイルへの操作を表しています。ファイルと同じく操作はr(読み取り)、w(書き込み)、x(実行)の三種類があります。

しかしながらファイルの場合とは違った意味を持ちます。

記号意味
r(読み取り)ディレクトリに含まれるファイル一覧の取得
w(書き込み)ディレクトリの下にあるファイルやディレクトリの削除と作成
x(実行)ディレクトリをカレントディレクトリにする

読み取り

ディレクトリのパーミッションに読み取りが設定されていればそのディレクトリに含まれているファイル一覧を取得することができます。

読み取りが設定されていないとエラーになります。

書き込み

ディレクトリのパーミッションに書き込みが設定されている場合はそのディレクトリ配下のファイルの削除と作成ができます。

重要なこととして、ファイルの削除ができるかはディレクトリのパーミッションで決まってしまい、ファイル自身のパーミッションは関係ないです。

実行

ディレクトリに実行のパーミッションが設定されていると、cdコマンドでそのディレクトリに移動したり、ディレクトリ下にあるファイルの読み書きを行うことができます。

通常の設定

他のユーザーから閲覧されてもよいディレクトリは「rwxr-xr-x」というパーミッションを設定すればよいです。これで他のユーザーはcdコマンドでディレクトリに移動とファイルの読み取りができます。

参考文献

新しいLinuxの教科書