Linuxのパーミッションについて整理しておく

パーミッションの対象

パーミッションの種類

  • ユーザの種類
    • root
    • 所有者
    • 所有グループ
    • その他ユーザ
  • 操作の種類
    • 読み
    • 書き
    • 実行

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

※あるファイルにアクセスするには、そのファイルを含むディレクトリの実行権限が必要である。

パーミッションの確認

下記のコマンドで表示する。

ls -l

見方は下記のサイトが詳しい。

マスク値

パーミッションの算出に用いられる値。
umask コマンドによって設定される。(※/etc/bashc 内で umask コマンドが実行される)

  • root : 022 (※所有グループとその他ユーザの書き込み権限の除去)
  • 一般ユーザ : 002 (※その他ユーザの書き込み権限の除去)

新規作成時のパーミッション

  • ファイルの場合: 666 から作成者のマスク値を減算
  • ディレクトリの場合: 777 から作成者のマスク値を減算

Ubuntuでは、ファイルは rw-r--r-- 、ディレクトリは rwxr-xr-x となる。
なお、CentOS等では、ファイルは rw-rw-r-- 、ディレクトリは rwxrwxr-x となる。(※所有グループの書きこみ権限が異なっている)

コピー時のパーミッション

元ファイルのパーミッションからマスク値を減算したものになる。
※元ファイルと同じパーミッションにしたい場合は、 cp コマンドの -p オプションを指定する。

パーミッションの変更権限

chmod, chown, chgrp でパーミッションを変更できるのは、rootとそのファイルの所有者のみである。

参考文献

Linuxの教科書―ホントに読んでほしいroot入門講座 (IDGムックシリーズ)

Linuxの教科書―ホントに読んでほしいroot入門講座 (IDGムックシリーズ)