I've setup a Linux Server and installed Apache and SVN and dav_svn onto it. Now, after i attempt to upload to https://x.x.x.x:x/svn/repo with Tortoise SVN I recieve

Can't open file '/server/svn/repo/db/txn-current-lock': Permission refused

I've Setup my SSL properly (I'm able to checkout, no problems, even remotely because of Port Sending).

I am speculating it has related to the Linux Possession from the Repository folders, How can i set this/ do you know the instructions? I am using Ubuntu 9.04 Server + Apache2.

This can be a prevalent problem. You are probably running into permissions issues. To resolve it, make certain the apache user has read/write use of your whole repository. To achieve that, chown -R apache:apache *, chmod -R 664 * for everything beneath your svn repository.

Also, see here and here if you are still stuck.

Update to reply to OP's additional question in comments:

The "664" string is definitely an octal (base 8) representation from the permissions. You will find three numbers here, representing permissions for that owner, group, and everybody else (sometimes known as "world"), correspondingly, for your file or directory.

Observe that each base 8 digit could be symbolized with 3 bits (000 for '0' through 111 for '7'). Every bit means something:

  • first bit: read permissions
  • second bit: write permissions
  • third bit: execute permissions

For instance, 764 on the file indicates:

  • the dog owner (first digit) has read/write/execute (7) permission
  • the audience (second digit) has read/execute (6) permission
  • everybody else (third digit) has read (4) permission

Hope that clears some misconception!

Can't comment yet (insufficient karma), however i desired to correct the next line:

the audience (second digit) has read/execute write (6) permission

Attempt to disable SELinux by: "/usr/sbin/setenforce ". During my situation it reduced the problem.

It's permission problem. Although not "clasic" read/write permissions of apache user, but selinux one.

Apache cannot email files called httpd_sys_content_t they may be only read by apache.

You've 2 options:

  1. label svn repository files as httpd_sys_content_rw_t:

    chcon -R -t httpd_sys_content_rw_t /path/to/your/svn/repo
  2. set selinux boolean httpd_unified --> on

    setsebool -P httpd_unified=1

I favor second possibility. You are able to play also along with other selinux booleans associated with httpd:

getsebool -a  grep httpd