Linux CentOS 6.5 x64 SVN服务器搭建

Linux CentOS 6.5 x64 SVN服务器搭建步骤

1. 安装Subversion

yum install subversion

注意:安装需要使用root权限,否则会提示You need to be root to perform this command.英文也很简单,这里就不多废话了。

2. 查看Subversion的安装位置

rpm -ql subversion
我们看到在bin目录下放有可执行的命令:

Linux CentOS 6.5 x64 SVN服务器搭建_第1张图片

可以通过查看SVN版本来确认是否已经安装成功,输入如下命令:

svn --version

3. 确定SVN版本库存放位置,我选择使用/var/svn/repository

mkdir -p /var/svn/repository
4. 在指定位置(/var/svn/repository)创建版本库

svnadmin create /var/svn/repository
版本库创建成功后,在版本库目录中会生成如下文件:


5. 进入conf目录(该svn版本库配置文件)
authz -- 文件是权限控制文件
passwd -- 帐号密码文件
svnserve.conf -- SVN服务配置文件

6. 配置

设置账号密码,打开passwd文件

vim passwd

在[users]块下添加一行username = password, 此处格式为:用户名 = 密码,例如:admin = password


设置权限,打开authz文件

vim authz

在最后添加:

[/]
admin = rw

说明:

[/] -- 版本库根目录

admin = rw -- admin用户有读写权限

用户组设置为同样道理,大家自己研究吧,这里就不多说了。


设置配置文件svnserve.conf

vim svnserve.conf

打开如上红色框中的几行注释:
anon-access = read #匿名用户可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /var/svn/repository # 认证空间名,我们最初设置的版本库所在的目录

7. 配置防火墙端口

默认端口为3690

vi /etc/sysconfig/iptables
添加以下内容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
保存后重启防火墙
service iptables restart

8. 启动SVN版本库

svnserve -d -r /var/svn/repository/

9. 查看SVN进程

[root@localhost conf]# ps -ef|grep svn|grep -v grep
root     12538     1  0 14:40 ?        00:00:00 svnserve -d -r /opt/svn/repositories

10. 检测SVN 端口

[root@localhost conf]# netstat -ln |grep 3690
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN

11. 停止重启SVN

[root@localhost password]# killall svnserve    //停止
[root@localhost password]# svnserve -d -r /opt/svn/repositories  // 启动 

12. 测试

地址:svn://127.0.0.1

默认端口:3690

13. 问题

a. 提交时提示Error: Can't open file '/var/svn/repository/db/txn-current-lock': Permission denied的解决

根源:/var/svn目录下的一切子目录和文件都是属于root用户的

解决办法:把/var/svn目录下的所有文件和子目录添加读写权限

chmod –R o+rw /home/svn
延伸问题:is not in the sudoers file.  This incident will be reported.

1.切换到root用户下,怎么切换就不用说了吧,不会的自己百度去.

2.添加sudo文件的写权限,命令是:

chmod u+w /etc/sudoers

3.编辑sudoers文件
vi /etc/sudoers
找到这行 root ALL=(ALL) ALL,在他下面添加xxx ALL=(ALL) ALL (这里的xxx是你的用户名)

ps:这里说下你可以sudoers添加下面四行中任意一条
youuser            ALL=(ALL)                ALL
%youuser           ALL=(ALL)                ALL
youuser            ALL=(ALL)                NOPASSWD: ALL
%youuser           ALL=(ALL)                NOPASSWD: ALL

第一行:允许用户youuser执行sudo命令(需要输入密码).
第二行:允许用户组youuser里面的用户执行sudo命令(需要输入密码).
第三行:允许用户youuser执行sudo命令,并且在执行的时候不输入密码.
第四行:允许用户组youuser里面的用户执行sudo命令,并且在执行的时候不输入密码.

4.撤销sudoers文件写权限,命令:
chmod u-w /etc/sudoers

这样普通用户就可以使用sudo了.


如有不对的地方欢迎大家支出,交流学习。

你可能感兴趣的:(centos,SVN服务器,svn服务器搭建)