makoto_blog

パパさん_blog

プログラミング勉強メモや雑記など。

Linux パーミッション(2)

ディレクトリのアクセス権

読み取り権

ファイル

  • cat コマンドなどで読み出すことが出来る。

ディレクト

  • ディレクトリ内のファイル名一覧を表示できる(ただしエラーが表示)
  • lsは実行できる。
  • cdはエラー。
  • cat でディレクトリ内のファイルにアクセスすることも不可。

書き込み権

ファイル

  • ファイルの内容を変更できる。

ディレクト

  • ディレクトリ内でファイルを作成したり削除したりできる。
  • ファイルに対するアクセス権がなくてもファイルを削除できてしまう!
  • アクセス権のないファイルに対しcat コマンドは失敗するがrmコマンドは成功する。

実行権

ファイル

  • ファイルをプログラムとして実行できる。

ディレクト

ディレクトリに通常、設定されるアクセス権

  • rwx
  • r-x
  • --x

実行権が付与されないケースはまず無い

パーミッションの変更

  • chmod (CHange MODe) コマンドを使う。
  • chmodコマンドを実行できるのは、対象のファイル・ディレクトリの所有者とrootユーザーのみ。
  • -R オプションは、指定したディレクトリ以下のすべてのファイルのアクセス権を変更できる。
  • アクセス権には755のような3桁の数値を指定するか記号を指定。

chmodコマンドのアクセス権記号

  • 操作対象

    • u 所有者
    • g 所有グループ
    • o その他のユーザー
    • a すべてのユーザー
  • 操作

    • + 権限追加
    • - 権限削除
    • = 権限指定
  • アクセス権

    • r 読み取り許可
    • w 書き込み許可
    • x 実行許可

mhaya@mhaya-V5-131:~/work/lpic$ chmod 644 m.txt
mhaya@mhaya-V5-131:~/work/lpic$ ll m.txt
-rw-r--r-- 1 mhaya jj 5  9月 17 06:14 m.txt
mhaya@mhaya-V5-131:~/work/lpic$ sudo chmod 755 dr
[sudo] mhaya のパスワード: 
mhaya@mhaya-V5-131:~/work/lpic$ ls -ld dr
drwxr-xr-x 3 hosino mhaya 4096  9月  2 09:47 dr

アクセス権の追加・削除は記号を使うといいでしょう。

  • 所有グループに書き込み権を追加
mhaya@mhaya-V5-131:~/work/lpic$ chmod g+w m.txt
mhaya@mhaya-V5-131:~/work/lpic$ ll m.txt
-rw-rw-r-- 1 mhaya jj 5  9月 17 06:14 m.txt
mhaya@mhaya-V5-131:~/work/lpic$ sudo chmod go-x dr
mhaya@mhaya-V5-131:~/work/lpic$ ls -ld dr
drwxrw-r-- 3 hosino mhaya 4096  9月  2 09:47 dr