SVNAdmin2是一款管理SVN服务器的web程序,主要功能支持用户及组、仓库管理,支持SVN、HTTP协议检出,同时支持LDAP接入。本文讲述在Redhat/CentOS7中源码安装SVNAdmin2。
部署基础环境
0x01 安装sasl及其依赖
1 2 |
# svn协议检出配置sasl认证如ldap要用到) yum install -y cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain |
0x02 安装PHP及其扩展
1 2 3 4 5 6 |
# 配置remi源 yum install -y epel-release yum-utils rpm -Uvh https://mirrors.aliyun.com/remi/enterprise/remi-release-7.rpm yum-config-manager --enable remi-php74 # 安装PHP7.4 yum install -y php php-common php-cli php-fpm php-mysqlnd php-mysql php-pdo php-process php-json php-gd php-bcmath php-ldap php-mbstring |
0x03 安装web服务器
1 2 3 4 |
# Apache支持http协议检出 yum install -y httpd mod_dav_svn mod_ldap systemctl start httpd systemctl enable httpd |
0x04 安装任务计划组件
1 2 3 4 5 6 7 |
# 支持启用任务计划功能 yum install -y cronie at #启动atd atd #启动crond crond |
部署SVNAdmin
下载解压代码包
1 2 3 |
cd /var/www/html/ wget https://gitee.com/witersen/SvnAdminV2.0/releases/download/2.5.9/2.5.9.zip unzip 2.5.9.zip |
安装SVNAdmin
1 2 3 4 5 6 7 8 9 10 |
cd /var/www/html/server/ chown -R apache:apache /var/www/html/ php install.php # 安装Subversion,Subversion ≥ 1.8 # 若已经安装Subversion,则跳过该步骤 # 选项1 # 配置Subversion,使其支持svnadmin # 选项2 |
根据所示执行。提示:有可能检测不到svn-tools目录,需确保已经安装svn-tools组件。
配置数据目录
若使用其它web服务器,如:nginx/tomcat,则通过浏览器访问http//:IP/server/own.php获取属主和属组
1 2 |
# 配置数据目录权限 chown -R apache:apache /home/svnadmin |
启动服务
方式一:手动启动
1 2 3 4 5 6 7 8 9 10 11 |
# pwd # /var/www/html/server/ # 启动后台 nohup php svnadmind.php start >/dev/null 2>&1 & # 停止后台 php svnadmind.php stop # 调试模式 php svnadmind.php console |
方式二:系统管理
创建系统服务文件/usr/lib/systemd/system/svnadmind.service,内容如下:
1 2 3 4 5 6 7 8 9 10 |
[Unit] Description=SVNAdmin After=syslog.target network.target [Service] Type=simple ExecStart=/usr/bin/php /var/www/html/server/svnadmind.php start [Install] WantedBy=multi-user.target |
管理服务
1 2 3 4 5 6 7 8 9 |
# 启动服务 # systemctl daemon-reload systemctl start svnadmind # 查看状态 systemctl status svnadmind # 开机自启 systemctl enable svnadmind |
原创文章禁止转载:技术学堂 » Redhat/CentOS安装基于web的SVN管理系统SVNAdmin2