Unixファイルには、ユーザーとグループの2種類の所有権があり、それぞれに固有の権限があります。通常、ファイル所有者はそのファイルへのフルアクセス権を持つ必要がありますが、所有者が属するワークグループのメンバーは制限されたアクセス権を持つことができ、他のメンバーははるかに少ないアクセス権を持つことができます。最後のカテゴリはUnixドキュメントではotherと呼ばれます。
ファイルの場合、
そのワークグループの権限は、必ずそのユーザーの所有者の権限ですか?
ユーザーの所有者はワークグループのメンバーなので、ワークグループが権限の観点からユーザーの所有者を除外しない限り、答えは「はい」と思います。そのユーザー所有者は、そのワークグループよりも大きな権限を持つことができます。
ユーザー所有者の権限は必ずしも他人の権限ですか?
何人かの人々は「他のもの」が世界全体を意味すると言います。その意味で、対応するワークグループは「Other」のサブセットである必要があるため、「Other」がそのワークグループを除外しない限り、答えは「はい」と思います。そのワークグループは、「その他」よりも多くの権限を持つことができます。
重要な場合は、Linuxに集中します。
答え1
Unixシリーズシステムの権限は、8進表記法で表されます。
オプションの特別な権限で始まり、その後にu
ser、g
roupo
などが続きます。 u
、g
権限o
は次のOR演算の組み合わせです。
r
頭: 4w
式: 2- 実行
x
:1
したがって、権限0774は所有者とグループへのフルアクセスを許可しますが、他のユーザーには読み取り専用アクセスを許可します。
特別な権限を含むこれらの権限は互いに独立しています。
ファイルには所有者とグループもあり、その属性は独立しています。
したがって、所有者は読み取り専用アクセス権を持ち、groupXのメンバーは読み取り/書き込みアクセス権を持ち、所有者またはグループ基準を満たさないユーザーは完全なアクセス権を持つことができます。
john
権限text.txt
をに0467
、所有権をにjohn
、グループに変更するユーザーを考えてみましょうoperator
。
$ chown john:operator text.txt
$ chmod 0467 text.txt
$ ls -l text.txt
-r--rw-rwx 1 john operator 0 Dec 29 00:57 text.txt
john
グループに属していないと、ファイルのoperator
内容を更新できません。
$ echo hi > text.txt
text.txt: Permission denied
ただし、ファイルの権限を変更してファイルを更新することはできます。
$ chmod u+w text.txt
$ echo hi > text.txt
$ ls -l text.txt
-rw-rw-rwx 1 john operator 3 Dec 29 00:57 text.txt
ファイルにアクセスするには、ディレクトリツリー全体のフォルダ権限も必要です。