SVN权限被拒绝 - txn-current-lock

Mar*_*lln 35 svn ubuntu ubuntu-server

我刚刚在我的ubuntu服务器上设置了svn.我有一个我可以登录的用户.问题是,每当我尝试对文件结构进行更改时,我都会收到权限被拒绝错误.

Can't open file '/var/www-svn/db/txn-current-lock':
Permission denied

我的repo在/ var/www-svn中,该文件夹的权限是drwxr-xr-x针对用户AND组的svn(我的权限很差,所以我不知道这是否正确).我在svn上登录的用户是在svn组中,但是我无法更改文件结构.我究竟做错了什么?如果我将文件夹的用户和组更改为我登录的用户,它也可以.

在svnserve.conf中,anon-access设置为none,auth-access设置为write.

(我sudo chown -R svn:svn www-svn在/ var目录中键入了/ var/www-svn的所有者.)

Ale*_*vić 24

文件系统上的存储库文件夹必须拥有或最终具有相同的linux用户的读/写权限,您的svn或apache通过web-dav正在处理...

在我的情况下它是:

$ chown -R www-data:www-data /svn/reponame
Run Code Online (Sandbox Code Playgroud)


khm*_*ise 11

您必须为/ var/www-svn /文件夹添加SETUID位,因为在事务处理期间将存在在SVN运行期间生成的文件夹,用于保留由文件夹表示的事务.

这意味着简单地说就是make

chmod +s -R /var/www-svn/
Run Code Online (Sandbox Code Playgroud)

应该解决问题.


Mar*_*lln 8

svnserve deamon在我的用户下运行,而不是root用户.我杀死了在我的用户下运行的svnserve进程并以root身份重新启动它.它现在有效.


小智 6

我的问题最终是我申请了权限,然后svnadmin create再次需要设置权限.

 $ sudo chown -R www-data:subversion myproject
 $ sudo chmod -R g+rws myproject
Run Code Online (Sandbox Code Playgroud)