Ubuntuボックスにウェブサイトがあります。ファイルの所有権をwww-data:www-data
に変更しました。
ファイルを更新するには、通常Sudo svn up
を実行する必要がありますが、これにより、ファイルの所有権の一部がroot:root
に戻ります。 svn up
をwww-dataとして実行する方法はありますか?
より良い解決策は、ファイルがあるディレクトリ(Webルート)のgidビットを設定することだと思います。 この質問 と優れた受け入れられた答えを見てください。
このようにして、Webルートディレクトリ内のすべての新しいファイルには、Webサーバーのデフォルトグループが含まれます。 Apacheはこれらを提供できるようになり、問題を解決する必要があります。
提案したことを本当に実行したい場合は、svnプログラムの所有者を変更し、 setuid ビットを設定できます。
chown www-data $(which svn)
chmod 4755 $(which svn)
これを実行した後、svn
コマンドが実行されるたびに、www-dataユーザーによって呼び出されたかのように実行されます。
後でこれを元に戻したい場合は、次のようにします。
chown root $(which svn)
chmod 0755 $(which svn)