Projekteというディレクトリを作成する練習があります。 AuftragおよびSupportグループにはrおよびw権限を付与する必要がありますが、他のグループにはr権限のみを付与する必要があります。
私はこれが不可能であることに気づきました。どうですか?
ご協力ありがとうございます
答え1
一部のユーザーには読み取り権限が必要で、一部のユーザーには読み取り/書き込み権限が必要なため、新しいグループを作成してこれを行うことはできません。読み取り/書き込みおよび読み取り/書き込み権限を持つAuftrag
ユーザーが必要ない場合Support
みんなそうでない場合は読み取り権限があり、その場合はAuftrag
すべてのユーザーを含むグループを作成し、Support
グループ書き込みとグローバル読み取りを設定できます。
あるいは、ファイルシステムがそれをサポートしていると仮定すると、拡張ACLを使用できます。 https://wiki.archlinux.org/index.php/Access_Control_Lists
たとえば、
# setfacl -m "g:Auftrag:rw" /file/path
# setfacl -m "g:Support:rw" /file/path
答え2
ディレクトリに変更するための実行ビットもターゲットに含まれていると仮定する必要があります。
rootユーザーになります。
sudo -i
ディレクトリを作成します。 (rootユーザーは所有者でありグループ所有者です。)
mkdir Projekte
権限を定義します。 ACLの影響を強調するために、rootアクセスのみを許可します。
chmod 0700
これで、ACLを使用して標準権限が強化されました。
setfacl -d -m g:Auftrag:7 Projekte
setfacl -m g:Auftrag:7 Projekte
setfacl -d -m g:Support:7 Projekte
setfacl -m g:Support:7 Projekte
setfacl -d -m o::5 Projeckte
setfacl -m o::5 Projeckte
上記では-m
、スイッチはマスクであり、スイッチはマスクを-d
ディレクトリ内のすべての新しいファイルシステムオブジェクトのデフォルトマスクにします。 8進値を使用する必要はありません。次のように書くこともできます。
setfacl -d -m g:Auftrag:rwx Projekte
setfacl -m g:Auftrag:rwx Projekte
setfacl -d -m g:Support:rwx Projekte
setfacl -m g:Support:rwx Projekte
setfacl -d -m o::r-x Projeckte
setfacl -m o::r-x Projeckte
ユーザー、グループ、その他のマスクは同じ方法で動作するg:groupname:---
か、次のように組み合わせて動作します。u:username:---,g:groupname:---,o::---
これはo
ギターを意味します。ユーザー名またはグループ名を指定しないと、現在のユーザー/グループの所有権にマスクが適用されます。
マスクの適用方法と基本マスクを確認してください。マスキング(マスキングなし-d
)はディレクトリ自体に適用されます。マスク(含む-d
)は、ディレクトリ内のすべての新しいファイルシステムオブジェクトに適用されます。それは簡単ですこれは忘れて。