ディレクトリ内のファイルにデフォルトのグループ所有権を設定するにはどうすればよいですか?


20

Linode LAMPでcakephp webappを実行しています。一時ファイルがroot:root所有権で作成されていることがわかりました。しかし、webappはApacheの許可(www-data)で実行されています。これにより、ユーザーwww-dataに対して書き込み可能ではないため、新しいファイルが作成されるたびに警告が発生します。

tempフォルダーに作成された新しいファイルのデフォルトの所有権をwww-dataに変更するにはどうすればよいですか?

ご協力いただきありがとうございます!

回答:


23

ファイルを作成するプロセスのuid / gidに関係なくwww-dataによってグループ所有権を割り当てるには、ディレクトリにsetgidビットを設定する必要があります。

    sudo chown :www-data <dir>
    sudo chmod g+s <dir>

また、ファイルを作成するプロセスによってディレクトリを書き込み可能にする必要があることに注意してください。それがroot以外の場合、chmod o+rwx物事を適切に機能させる必要があるかもしれません。


サブディレクトリはどうですか?
mcont 14

-Rフラグをchownおよびchmodに追加すると、そのコマンドは再帰的になります。そのため、以下のコマンドは、デフォルトのグループ所有権を<dir> sudo chown -R :www-data <dir>および<dir>のすべてのサブディレクトリに割り当てます。sudo chmod -R g+s <dir>
Josh Wieder
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.