気の向くままに辿るIT/ICT/IoT
UNIX/Linux

UNIX/Linux ファイルパーミッションビット file permission bit

ホーム前へ次へ
UNIX/Linuxのパーミッションとは?

UNIX/Linux ファイルパーミッションビット

ファイルパーミッションビット

 英語のpermission/パーミッションは日本語で「許可」の意味でUNIX/Linux及びシェルでは、ディレクトリ、ファイルの使用権限の許可のことを指します。

 英語圏ではpermissionsと最後にsを付けIT用語として使っているようです。

 UNIX/Linuxは、ハードディスクやUSBなどの補助記憶装置、メモリなども含め、ディレクトリファイルとして扱い、それぞれのファイルは、ユーザーがそのファイルに対してできるアクセスの種類を操作するファイルモードビット/file mode bitsのセットを持っています。

ファイルモードビット/file mode bits

 ファイルモードビットには、ファイルへの通常のアクセスを操作する

 ファイルパーミッションビット/file permission bits     例)  [rwx---r-x][705]...etc.

とある実行ファイルと多くのシステム上ではディレクトリといった特定のファイルにだけ有効な

 特殊モードビット/special mode bits     例)  [rwsrwxr-t][rwxrwSr-T]

 *  set-user-ID bit/set-group-ID bit/sticky bitの3つ

の2通りがあります。

ファイルパーミッションビット/file permission bits

 ファイルパーミッションビットは、利用者がファイルに対してできることを示すもので3種類あり、1ビット3つの組み合わせで

 シンボリック形式     例)  [rwx]...etc.

 8進数形式              例)  [644][755]...etc.

のいずれかのタイプで設定することができるようになっています。

 また、それとは別にアクセスできる人やグループに対して3種類の指定ができるようになっています。

 これを組み合わせることで

 人やグループによってそのファイルに対してできること 

を設定することができる仕組みになっています。

 更に前者はファイルとディレクトリでは意味が異なり、後者は

 ユーザー(user)・グループ(group)・その他(other) 

です。

 前者のファイルとディレクトリではファイルパーミッションビットの意味が異なるので、更にこれを組み合わせ

 人やグループによってディレクトリとディレクトリ内のファイル操作、更にファイルごとにできること 

を設定することができる仕組みになっています。

 また、ファイルやディレクトリの所有者は、そのファイルやディレクトリの所有権を他のユーザーやグループに移すこともできます。

 一度所有権を移してしまったファイルやディレクトリの所有権は、元の所有者が自身に対して所有権を元に戻すことはできず、その必要がある場合も(rootを除き)所有権を移したユーザーまたはグループによってのみ行うことができます。

user/group/other

 user/group/otherについては、Windows上でFTPソフトを利用するとか、UNIX/Linuxを使い始めたばかりという場合にはピンと来ない概念かもしれません。

 UNIX/Linuxでは、WindowsのAdministratorにあたるのはroot、また全てのユーザーは1つまたは複数所属できるグループにおいて既定のグループを持ち、必ず何らかのグループ(rootもrootグループ)に所属していることが前提になっています。

 何らかのグループに所属するユーザーは、UNIX/Linuxとユーザーとのインタフェースであるシェルに明示的にアカウント(ユーザー)名とパスフレーズ(パスワード)を使ってログイン後、各ユーザーごとのディレクトリ(ホームディレクトリ)に自動的に割り振られて(移動して)そこで作業をするのが普通です。

 この時、ユーザー(user)とその所属グループ(group)というものが存在し、それ以外(のgroupやuser)を指すその他(other)を加えた3通りの概念で、それぞれにパーミッションを設定できるようになっています。

 DB/RDBで言えばユーザーごとに、または人数が多くなると管理しきれないのでまとめてrole(役割)ごとに権限を付与し、そのroleを持つ全てのユーザーに共通の権限を付与する際のrole権限にも似ています。

 次のファイルモードビット、その後にumask/chmodの実際の設定を見ると8進モードとシンボリックモードの関係もはっきり見えると思います。

LINK

ホーム前へ次へ