chmodとACLの違い


13

私は理解chmodしてchown、どのように許可ビットの作業が、別の許可制度は、Linuxの内側に存在しACLsetfaclそしてgetfaclこれは私が思ってしまうので、。

これら2つの許可制御システムの違いは何ですか?それらは互いに干渉しますか?

回答:


7

一方が他方よりも優れているわけではありません。それらは単なる異なる方法と考え方です。

両方の権限システムを同じパスで問題なく使用できます。

これらは、所有者、所有グループ、およびその他の権限を変更するときに互いに干渉します。これらの現在の値をsetfaclから設定する場合、実際にはACLのアクセス権ではなく、posixのアクセス権が設定されます。

Posix権限は、所有者、所有グループ、および「全員」権限のみを許可しますが、ACLは複数の「所有」ユーザーおよびグループを許可します。ACLでは、フォルダ内の新しいファイルにデフォルトの権限を設定することもできます。

厳格な制御のために、apparmorまたはselinuxの両方にさらに権限管理を追加できます。


1
実行するls -lと、posixのアクセス許可とファイルをさらに制限するACLのアクセス許可のみが表示されなくなると想定して正しいのでしょうか?それとも、posixの権限は尊重されますか?
mFeinstein

3
@mFeinsteinに依存します。Linuxでは、ACLが存在することを示すために、許可文字の最後にls -la +を付けます。ACLが存在する場合、基本的なアクセス許可では全体像がわかりません。ACLはPOSIXアクセス許可をオーバーライドします。
Gilles「SO-邪悪なことをやめよう」

それはいい!これにより+、少なくとも自分が油断するのをやめます
mFeinstein

3

chmod(読み取り/書き込み/実行、ユーザー/グループ/その他)によって設定された従来のUnixのアクセス許可は、ACLよりもずっと以前から存在しています。ACLが最初から存在していた場合、私たちが知っているようにchmodはありません。ただし、chmodは非常に長い間存在していたため、多くのアプリケーションがそれを呼び出し、多くのアーカイブ形式が従来の権限をサポートしています。ACLを使用してchmod権限を表現できます。それらは、ACLの一種の開始点として機能します。

参照ファイルの権限でユーザーとグループ所有者の優先順位ACLSの優先順位、ユーザが複数のグループに属しているアクセス制御は、ACLの存在下でどのように機能するかのより詳細な治療のために。

このchmodコマンドは、実際にはアクセス許可ではないが、しばしばアクセス許可と呼ばれるいくつかのフラグも制御します:setuid、setgidおよびsticky bit。これらは、ファイルへのアクセスが許可されるのではなく、ファイルへの特定の操作が許可された後の動作に影響しないため、実際にはアクセス許可ではありません。ACLにはこのようなものはありません。


したがって、ファイルの権限を正確に理解するには、ACLとls -l?の両方をチェックする必要があります。
mFeinstein

ファイル/ディレクトリにACL固有の権限があるかどうかを確認する方法はありますか?
mFeinstein

@mFeinsteinによって表示される権限の最後にls追加があるかどうかを確認する+か、getfaclコマンドを実行してACLを含むすべての権限を表示します。
Gilles「SO-邪悪なことをやめなさい」

1
ただgetfacl myFile
mFeinstein

1
はい、確認したいパスでgetfaclを実行します。
ズルグリブ2017年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.