现象:
SVN服务器重启后,重新挂载SVN仓库,可以下载代码,但是上传代码发现报错:
can't open file db/txn-current-lock:permission denied
刚开始以为用户权限不够,但是查看了password文件后发现用户是有权限的,并且所有用户
都报这个错。
尝试:
1、先杀死原有进程,重新挂载。-----------------------------------------------------问题依然存在。
2、更改文件夹权限。 chmod -R o+rw /home/svn---------------------------------问题解决。
3、执行sudo svnserve -d -r /var/svn ------------------------------------------------问题解决。
总结:
出现这种问题的原因在于搭建SVN服务器,包括创建Repository目录/home/svn目录下的一切子目录和文件都是在root用户下进行的,所 以在root用户下检出、提交都没有问题。可在Windows PC上从客户端访问就有问题了,因为是只有拥有管理器权限的人才能对Repository目录进行完全控制,而在Windows从客户端访问的话,因为是 Users用户组的,对Repository没有修改权限,所以不能提交。
因此出现上述情况,大都是因为权限的问题,解决方法也无非两种①改变权限②使用root用户启动。
因为权限改变可能引起其他问题,因此推荐第二种方法sudo svnserve -d -r /var/svn。