一部のファイルをSVNにコミットしようとしているときに、突然このエラーが発生します
Can't move '/usr/local/svn/articles/db/txn-protorevs/2002-8.rev'
to '/usr/local/svn/articles/db/revs/2/2003': Permission denied
リポジトリの権限を確認したところ、他のすべてのリポジトリと同じように見えますが、これがエラーの原因となる唯一のリポジトリです。
これを修正する方法はありますか?
SVNはLinuxでrootとしてsvnserve、FWIWを介して実行されています。
私が管理しているリポジトリでは、リポジトリのコンテンツ自体はApache:apacheが所有しています。 Sudo -u Apache
を使用せずにroot
として何かを実行しようとすると、通常、この状況が発生します。あなたが示したように、良いchown -R Apache.apache {repo root}
は通常それを修正します。
私の推測では、あなたはroot以外の誰かとしてファイルシステムを介していくつかの機能を実行したと思います。
しかし、リモートリポジトリのいくつかのサブディレクトリ(回転、トランザクションなど)に対するグループ書き込み権限が欠けていたことがわかりました。