コンテンツにスキップ

ユーザーとグループ

$ ls -l index.md
-rw-r--r-- 1 g21008ny student 3367  6月 10 14:10 index.md

このとき、

  • -rw-r--r-- ... パーミッション(アクセス権限)
  • g21008ny ... ファイル所有者
  • student ... ファイル所有グループ
  • 3367 ... サイズ
  • 6月 10 14:10 ... 最終更新タイムスタンプ
  • index.md ... ファイル名

パーミッションについて

1  2   3   4
-|rwx|rwx|rwx
  1. タイプ
  2. ユーザに適用されるパーミッション(USER)
  3. グループに適用されAるパーミッション(GROUP)
  4. それ以外に適用されるパーミッション(OTHER)

タイプについて

記号 意味
d ディレクトリを示す
b ブロック特殊ファイル(ブロック単位で利用可能なデバイス、ディスクなど)を示す
c キャラクター特殊ファイル(文字単位で利用可能なデバイス、その他の一部デバイス)を示す
l シンボリックリンク(ショートカットのようなもの)を示す
p 先入先出法(FIFO)のパイプを示す(後述)
s ソケットファイルを示す(後述)
- 通常ファイルを示す

パイプとソケット

Qiitaより

Linuxのファイルの種類 - Qiita より引用。

パーミッション

  • r ... READ 読込する。
  • w ... WRITE 書込する
  • x ... EXECUTE 実行する

ビット表記

  • r ... 4
  • w ... 2
  • x ... 1
説明
rwx 4+2+1=7
rwxrwxr-- 774
r-xrw---- 560
rw-rw---- 660

特殊な権限ビット

Set User ID (SUID)

```
$ which passwd
/usr/bin/passwd
$ ls -l /usr/bin/passwd
-rwsr-xr-x root root 22984 1月 7 2007 /usr/bin/passwd
````

  • sがつく。ファイルに対して適用される。
  • 通常の設定: 実行可能なファイルにおいて、実行の命令を送ったユーザーの権限で実行される。
  • SUIDを設定: 実行可能なファイルにおいて、ファイルの所有者の権限で実行される。
  • 数値表記の場合は、4000を足す。(e.g. 7554755
Set Group ID (SGID)
  • 実行ファイルにSGIDが設定されていた場合、所有グループの権限で実行される。
  • ディレクトリにSGIDが設定されていた場合、その配下のファイル・ディレクトリの所有グループが、SGIDを設定したディレクトリの所有グループと同じグループになる。
  • 数値表記の場合は、2000を足す。

関連コマンド

  • 所有者(Owner)を変更するchown
  • 所有グループ(Group)を変更するchgrp
  • パーミッションのモード(mode)を変更するchmod

最終更新日: 2021年6月14日