實驗環境
system:Centos7.5 64bit
Mem:2G
Ip addr: 192.168.200.101
Disk:40Gsys+100Gdata
if.svnadmin簡介
iF.SVNAdmin 是一個基于 Web 的,用來管理 Subversion 的認證檔案的項目。無需資料庫支援,直接對 Subversion 的認證檔案和使用者認證檔案進行設定,支援 LDAP,同時也可以用來建立和删除版本庫,以及對版本庫進行浏覽。
實驗環境準備
[[email protected] ~]# vim /etc/hostname
svn-server
[[email protected] ~]# hostname $(cat /etc/hostname) && bash
[[email protected] ~]# systemctl stop firewalld //關閉firewalld和selinux
[[email protected] ~]# setenforce 0
setenforce: SELinux is disabled
[[email protected] ~]# iptables -nL //确定IP tables防火牆無規則
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
配置yum
[[email protected] ~]# cd /etc/yum.repos.d/
[[email protected] yum.repos.d]# wget https://mirrors.aliyun.com/repo/Centos-7.repo
--2019-03-01 13:27:01-- https://mirrors.aliyun.com/repo/Centos-7.repo
正在解析主機 mirrors.aliyun.com (mirrors.aliyun.com)... 219.238.20.85, 219.238.20.88, 219.238.20.100, ...
正在連接配接 mirrors.aliyun.com (mirrors.aliyun.com)|219.238.20.85|:443... 已連接配接。
已發出 HTTP 請求,正在等待回應... 200 OK
長度:2523 (2.5K) [application/octet-stream]
正在儲存至: “Centos-7.repo”
100%[======================================================================================================================================================================================================>] 2,523 --.-K/s 用時 0.001s
2019-03-01 13:27:02 (2.57 MB/s) - 已儲存 “Centos-7.repo” [2523/2523])
[[email protected] yum.repos.d]# yum clean all && yum makecache
安裝httpd&php&svn
可視化工具是web頁面需要用到httpd+php提供頁面
[[email protected] ~]# yum install -y httpd subversion mod_dav_svn php
[[email protected] ~]# svnserve --version //确認軟體包安裝資訊
svnserve,版本 1.7.14 (r1542130)
編譯于 Apr 11 2018,02:40:28
版權所有 (C) 2013 Apache 軟體基金會。
此軟體包含了許多人的貢獻,請檢視檔案 NOTICE 以獲得更多資訊。
Subversion 是開放源代碼軟體,請參閱 http://subversion.apache.org/ 站點。
下列版本庫後端(FS) 子產品可用:
* fs_base : 子產品隻能操作BDB版本庫。
* fs_fs : 子產品與文本檔案(FSFS)版本庫一起工作。
Cyrus SASL 認證可用。
[[email protected] ~]# php -v
PHP 5.4.16 (cli) (built: Oct 30 2018 19:30:51)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
[[email protected] ~]# httpd -v
Server version: Apache/2.4.6 (CentOS)
Server built: Nov 5 2018 01:47:09
配置httpd
[[email protected] ~]# cd /etc/httpd/conf.modules.d/
[[email protected] conf.modules.d]# ll
總用量 36
-rw-r--r-- 1 root root 3739 10月 30 23:00 00-base.conf
-rw-r--r-- 1 root root 139 10月 30 23:00 00-dav.conf
-rw-r--r-- 1 root root 41 10月 30 23:00 00-lua.conf
-rw-r--r-- 1 root root 742 10月 30 23:00 00-mpm.conf
-rw-r--r-- 1 root root 957 10月 30 23:00 00-proxy.conf
-rw-r--r-- 1 root root 88 10月 30 23:00 00-systemd.conf
-rw-r--r-- 1 root root 451 10月 30 23:00 01-cgi.conf
-rw-r--r-- 1 root root 216 10月 31 03:33 10-php.conf
-rw-r--r-- 1 root root 164 4月 11 2018 10-subversion.conf //預設生成的配置檔案
[[email protected] conf.modules.d]# cp 10-subversion.conf{,.bak}
[[email protected] conf.modules.d]# vim 10-subversion.conf
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
LoadModule dontdothat_module modules/mod_dontdothat.so
<Location /repo>
DAV svn
SVNParentPath /data/project //代碼倉庫的父目錄
AuthUserFile /data/project/svnconfig/passwdfile //定義使用者檔案位置
AuthzSVNAccessFile /data/project/svnconfig/accessfile //定義驗證檔案位置
</Location>
建立對應檔案
[[email protected] ~]# mkdir /data/project/{svn,svnconfig} -pv
mkdir: 已建立目錄 "/data"
mkdir: 已建立目錄 "/data/project"
mkdir: 已建立目錄 "/data/project/svn"
mkdir: 已建立目錄 "/data/project/svnconfig"
[[email protected] ~]# touch /data/project/svnconfig/{accessfile,passwdfile}
[[email protected] ~]# cd /data/project/
[[email protected] project]# tree
.
├── svn
└── svnconfig
├── accessfile
└── passwdfile
安裝并配置iF.svnadmin
[[email protected] ~]# wget http://sourceforge.net/projects/ifsvnadmin/files/svnadmin-1.6.2.zip
[[email protected] ~]# ll | grep svn
-rw-r--r-- 1 root root 370302 8月 29 2013 svnadmin-1.6.2.zip
[[email protected] ~]# unzip svnadmin-1.6.2.zip
[[email protected] ~]# mv iF.SVNAdmin-stable-1.6.2/ /var/www/html/svnadmin //移動php頁面類似zabbix
[[email protected] ~]# chmod 777 -R /var/www/html/svnadmin/data/ //data檔案夾用于存放web頁面配置檔案
[[email protected] ~]# ll /var/www/html/svnadmin/data/
總用量 8
-rwxrwxrwx 1 root root 5007 8月 29 2013 config.tpl.ini //确定起始配置檔案權限
[[email protected] ~]# chown -R apache:apache /var/www/html/svnadmin/ //更改屬主
[[email protected] ~]# chmod -R 777 /data/project/
[[email protected] ~]# ll /data/project/svnconfig/
總用量 0
-rwxrwxrwx 1 root root 0 3月 4 13:43 accessfile
-rwxrwxrwx 1 root root 0 3月 4 13:43 passwdfile
[[email protected] ~]# systemctl start httpd
[[email protected] ~]# netstat -lnpt | grep httpd
tcp6 0 0 :::80 :::* LISTEN 2762/httpd
web頁面通路檢視
通路URL://192.168.200.101/svnadmin
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2cs0TPnNGNxIDWoFjMMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL5YTOzUjNxQTM0AzMwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
iF.svnadmin基礎配置
建立一個代碼倉庫
伺服器端檢視
[[email protected] ~]# cd /data/project/mslinux/
[[email protected] mslinux]# ll
總用量 8
drwxr-xr-x 2 apache apache 54 3月 4 14:09 conf
drwxr-sr-x 6 apache apache 233 3月 4 14:09 db
-r--r--r-- 1 apache apache 2 3月 4 14:09 format
drwxr-xr-x 2 apache apache 231 3月 4 14:09 hooks
drwxr-xr-x 2 apache apache 41 3月 4 14:09 locks
-rw-r--r-- 1 apache apache 229 3月 4 14:09 README.txt
建立一個使用者
iFsvnadmin操作簡單便捷,不占用空間,對于我們這些不會使用svn的運維管理很有用哦。
加油,方法總比問題多!!!