'/root/.subversion/...': Permission denied

leop - February 12, 2008 - 18:37
Project:Subversion
Version:5.x-2.x-dev
Component:Code
Category:bug report
Priority:normal
Assigned:Unassigned
Status:active
Description

I think azbok supplied a solution without mentioning the problem it solves. For certain server configurations, accessing Subversion using the apache user generates the following error:

'/root/.subversion': Permission denied

This is caused by the fact that apache somehow thinks it is the root user, and tries to store subversion info in the root directory. This issue is also discussed at: http://websvn.tigris.org/issues/show_bug.cgi?id=32

The solution to this is introduced by azbok in http://drupal.org/node/213146, which he obscurely calls Put in new define SUBVERSION_WEB_SERVER_SET_HOME_DIR for https svn authentication needs, but which really is also a solution for the problem I address here. The funny thing is that SUBVERSION_WEB_SERVER_SET_HOME_DIR also works when it is set to a non-existing path.

#1

leop - February 27, 2008 - 13:00
Title:'/root/.subversion': Permission denied» '/root/.subversion/...': Permission denied

Actually there are many other error messages that start with '/root/.subversion/...': Permission denied. In the current version of the subversion module this is only solved in subversion_ls by changing:

exec(implode(' ', $cmd), $output);

into

exec(SUBVERSION_WEB_SERVER_SET_HOME_DIR . implode(' ', $cmd), $output);

where

define('SUBVERSION_WEB_SERVER_SET_HOME_DIR', 'export HOME="/home/apache";');

Other functions that use exec calls need to be updated is well: subversion_create_project_repository, subversion_fetch_repository, subversion_get_diff and subversion_cat. Also, the '/root/.subversion/...': Permission denied error message isn't specific for https. Apparently there are also other cases in which the Apache user needs to read / write to its home directory.

Note however that you need to accept a certificate manually as the Apache user in case of https access to Subversion, or put a .subversion directory with the accepted certificate file in it in the directory you specify as home dir.

#2

Janakiraman - March 3, 2009 - 11:34

In which file we have to change this changes?

#3

Janakiraman - March 3, 2009 - 11:36

In which file we have to change this changes? I've changed this in svnlib.inc file in the versioncontrol_svn/svnlib/ module. But there is nothing has been done.

Error continuing the same.

I've got the error like,

The repository at svn://example host name/example project/Projectsource/trunk could not be accessed. Error message from 'svn info':

svn: Can't connect to host 'example host name': Permission denied

could any one help me in this pls???

#4

jpetso - March 6, 2009 - 15:40

@Janakiraman: versioncontrol_svn (including svnlib) is independent from the "Subversion" module (= this issue queue), those modules don't use one another's code. If you're actually using the "Subversion" (not "Subversion backend" aka versioncontrol_svn) module, you need to fix it in its own code.

#5

Janakiraman - March 24, 2009 - 11:22

Hi,

I am using versioncontrol-6.x-1.0-beta5 with versioncontrol_svn-6.x-1.0-beta2 svn backend modules to build svn in my project. I am using https://example ip:8443/svn/test for my repository.

While I am fetching my repository, I've got the following error.

The repository at https://example ip:8443/svn/test could not be accessed. Error message from 'svn info':

The filename, directory name, or volume label syntax is incorrect.

can anybody help me for this issue?

Thanks in advance.

#6

jpetso - June 1, 2009 - 22:16

@Jamnakiraman: The issue that you're describing is a duplicate of #227560: VCS Repository settings Not finding repository. However, since that's a different issue than the one initially reported in this bug, I'll leave the bug open.

 
 

Drupal is a registered trademark of Dries Buytaert.