私はアーチLinuxを使用しています。
私のウェブサイトのファイルは/home/user/www/ディレクトリにあります。他のユーザーも/home/foo/www/ディレクトリに自分のWebサイト用のファイルを保存します。
これで、Webサイトで何かを変更するにはsudoアクセス権が必要です。
sudoなしでそのディレクトリにアクセスしたいです。
ユーザーと私にディレクトリを設定し、他の誰にとってもディレクトリを755に設定するにはどうすればよいですか(Apache)。
答え1
あなたはそれを使用することができますアクセス制御リスト(ACL)これを行うには、特定のユーザーに特定のファイルまたはディレクトリに対する追加の権限を付与します。
acl
まず、問題のファイルシステムに対してオプションが有効になっていることを確認します。通常、このオプションはデフォルトで有効になっていますが、オプションに追加または再インストールできます。fstab
ACLを有効にした後、次のコマンドを使用して特定のファイルまたはディレクトリのACLを制御できます。setfacl
コマンド:
setfacl -m "user:vonflynee:rwx" /home/foo/www
これは、ファイル所有者がすでに持っている権限に加えて、特定のディレクトリ(形式)に対するユーザー固有の権限を設定しますvonflynee
。さまざまなユーザーとグループが処理する必要がある特定のファイルに対して複数のACL仕様を設定でき、異なる権限を組み合わせて持つことができます。rwx
chmod
他の権限と同様に、アクセスしようとしているファイルに到達するまでツリー全体をナビゲートできる必要があるため、ツリーの上部に別の権限を設定する必要があり、そのファイルにもアクセスする必要があります。ツリー全体の権限設定モードをsetfacl
サポートします。--recursive
これArch Wikiには、そのトピックに関する非常に包括的な記事があり、これはプロセスのArch関連部分を強調しています。。
別のオプションであり、より伝統的なオプションは、単に新しいグループ " "vonflyneeandfoo
を作成し、ここに両方のユーザーを追加し、新しいファイルがそのグループを継承するようにそのグループにディレクトリを追加してから、ファイルchown -R
グループに書き込みアクセス権を付与することです。です。chmod g+s
chmod -R g+rX dir
これが処理する必要がある唯一のケースであれば、これはより簡単なオプションです。それにもかかわらず、ローカルユーザーが多く、すでにapache
グループメンバーに依存している場合、読み取り権限操作がより困難になり、ACLがより便利になります。