SVNAdmin2是一款管理SVN服务器的web程序,主要功能支持用户及组、仓库管理,支持SVN、HTTP协议检出,同时支持LDAP接入。本文讲述在Redhat/CentOS7中源码安装SVNAdmin2。
部署基础环境
0x01 安装sasl及其依赖
# svn协议检出配置sasl认证如ldap要用到) yum install -y cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain
0x02 安装PHP及其扩展
# 配置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服务器
# Apache支持http协议检出 yum install -y httpd mod_dav_svn mod_ldap systemctl start httpd systemctl enable httpd
0x04 安装任务计划组件
# 支持启用任务计划功能 yum install -y cronie at #启动atd atd #启动crond crond
部署SVNAdmin
下载解压代码包
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
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获取属主和属组
# 配置数据目录权限 chown -R apache:apache /home/svnadmin
启动服务
方式一:手动启动
# 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,内容如下:
[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
管理服务
# 启动服务 # systemctl daemon-reload systemctl start svnadmind # 查看状态 systemctl status svnadmind # 开机自启 systemctl enable svnadmind
原创文章禁止转载:技术学堂 » Redhat/CentOS安装基于web的SVN管理系统SVNAdmin2