Centos 7 部署SVN服务器
一、安装SVN
- 1、安装Subversion
sudo yum -y install subversion
- 2、验证是否安装成功(查看svn版本号)
svnserve --version
二、创建版本库
- 1、先建立目录,目录位置可修改
mkdir -p /var/svn
cd /var/svn
- 2、创建版本库,添加权限
svnadmin create /var/svn/project
chmod -R o+rw /var/svn/project
三、修改SVN配置文件
- 1、进入/var/svn/project/conf下找到 svnserve.conf 文件编辑
- 2、找到以下配置项,将前面的 # 号去掉,然后做相应的配置
# 匿名访问权限配置
anon-access = none ; 禁止匿名访问
# 授权访问权限配置
auth-access = write ; 授权用户具有读写权限
# 用户密码文件配置
password-db = passwd ; 用户密码文件路径
# 权限配置文件配置
authz-db = authz ; 权限文件路径
# 仓库标识配置
realm = /var/svn/project ; 版本库路径
注意:以上配置项都需要顶格,即前面不能预留空格,否则报错
四、创建用户
- 1、进入/var/svn/project/conf下找到 passwd 文件编辑
五、设置权限
- 1、进入/var/svn/project/conf下找到 authz 文件编辑
六、放行端口
# firewalld放行方法,其他方法自行百度
# ①向防火墙配置文件中添加规则,允许 TCP 协议的流量通过 3690 端口
firewall-cmd --zone=public --permanent --add-port=3690/tcp
# ②重新加载防火墙配置,使更改生效
firewall-cmd --reload
# ③验证端口是否已成功放行
firewall-cmd --zone=public --list-ports
七、运行SVN,并连接
- 1、启动svn服务
# 如启动失败,请重启服务器,再执行该命令
svnserve -d -r /var/svn
- 2、Windows客户端连接SVN
八、设置开机自启
- 1、脚本添加到systemd服务管理器中(需要先关闭SVN服务,重启服务器即可)
# ①创建一个新的服务单元文件
sudo vi /etc/systemd/system/svnserve.service
# ②在该文件中,插入以下内容:
--------------
[Unit]
Description=SVN Server
After=network.target
[Service]
Type=forking
EnvironmentFile=/etc/sysconfig/svnserve
ExecStart=/usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid -d -r /var/svn
[Install]
WantedBy=multi-user.target
--------------
# ③保存并关闭文件,重新加载systemd配置
sudo systemctl daemon-reload
# ④启用服务以在开机时自动运行
sudo systemctl enable svnserve.service
# ⑤启动服务,使其立即生效
sudo systemctl start svnserve.service
# 停止服务
sudo systemctl stop svnserve.service
# 查看服务状态
sudo systemctl status svnserve.service
- 2、关闭SELINUX(不关闭会导致读取format文件夹报错)
# 永久关闭selinux:
vi /etc/selinux/config
关闭:SELINUX=disabled
# 永久开启selinux:
vi /etc/selinux/config
开启:SELINUX=enforcing
# 查看状态命令:
getenforce
修改后,重启服务器