setfaclコマンドを使用してディレクトリ内のファイルを読み取るための読み取り権限を付与しましたが、lsを使用してファイルを表示することはできません。頑張った
setfacl -Rdm g:grouptoadd:rx /path/directory/
ただし、ファイルを読み取ることはできますが(ファイルへの直接パスを使用している場合(たとえば、「/path/directory/myfile」など))、ディレクトリ(ls /path/directory/)を一覧表示することはできません。
答え1
あなたは設定しています基本ACL-d
代わりにフラグ有効なACL。デフォルトACLは、デフォルトACLが設定されているディレクトリに作成されたファイルとディレクトリにACLを設定するメカニズムです。-d
ACL をディレクトリ自体に適用するには、このオプションを削除します。
これにより、getfacl
「デフォルト」エントリが表示されます。 Linux ACLについて詳しく読んでください。
[lzap@x1 foreman-packaging-rpm]$ getfacl /tmp/test
# file: tmp/test
# owner: lzap
# group: lzap
user::rwx
group::rwx
other::r-x
[lzap@x1 foreman-packaging-rpm]$ setfacl -dm u:lzap:rx /tmp/test
[lzap@x1 foreman-packaging-rpm]$ getfacl /tmp/test
# file: tmp/test
# owner: lzap
# group: lzap
user::rwx
group::rwx
other::r-x
default:user::rwx
default:user:lzap:r-x
default:group::rwx
default:mask::rwx
default:other::r-x
[lzap@x1 foreman-packaging-rpm]$ setfacl -m u:lzap:rx /tmp/test
[lzap@x1 foreman-packaging-rpm]$ getfacl /tmp/test
# file: tmp/test
# owner: lzap
# group: lzap
user::rwx
user:lzap:r-x
group::rwx
mask::rwx
other::r-x
default:user::rwx
default:user:lzap:r-x
default:group::rwx
default:mask::rwx
default:other::r-x
機能しているデフォルトのACLを表示するには、デフォルトのACLを使用してディレクトリにファイルを生成するだけです。私の場合はACLをtouch /tmp/test/a_file
継承します。u:lzap:r-x
答え2
私は信じる「追加するグループ」実行権限なし道目次。ls /path/directory/
これは、パスを構成するすべてのディレクトリに対する実行権限がある場合にのみ可能です。
試して$ getfacl /path
みて確認してください。」グループを追加」には実行権限があります。
そうでない場合は、簡単に追加できます$ setfacl -m g:grouptoadd:x /path
。
またはsetfacl
オプションなしでコマンドを使用してください-d
。
答え3
テストしたように、d
オプション(デフォルトを意味します)を使用しない場合に機能します。
setfacl -Rdm g:grouptoadd:rx /path/directory/
このコマンドは、ディレクトリに新しいファイルrx
権限を許可します。
setfacl -Rm g:grouptoadd:rx /path/directory/
このコマンドを使用すると、グループgrouptoadd
はディレクトリを一覧表示して読み取ることができます。