Centos7下安裝iF.svnadmin實現web方式管理svn(源碼安裝),if.svnadminsvn

來源:互聯網
上載者:User

Centos7下安裝iF.svnadmin實現web方式管理svn(源碼安裝),if.svnadminsvn

  iF.SVNAdmin 是一個基於 Web 的,用來管理 Subversion 的認證檔案的項目。無需資料庫支援,直接對 Subversion 的認證檔案和使用者認證檔案進行設定,支援 LDAP,同時也可以用來建立和刪除版本庫,以及對版本庫進行瀏覽。

  說來慚愧,用了將近半個月時間才完成整個安裝過程。想想可能是對linux不熟悉,源碼編譯安裝需要的依賴包太多,網上的教程也不靠譜,再加上這個不友好的黑白命令列介面,著實很讓人頭大。其實一開始準備用submin的,但是安裝完後建立倉庫報的一個錯誤拖了好幾天實在解決不了,只能換用iFSVNAdmin。報錯如下,希望有大神可以給出解決方案。

 

以下是本文

環境:  Centos 7 x64

用到的包:apr-1.4.6.tar.gz

     apr-util-1.5.1.tar.gz

     pcre-8.37.tar.bz2

     httpd-2.2.31.tar.bz2

     libxml2-2.9.1.tar.gz

     openssl-1.0.0e.tar.gz

     php-5.3.8.tar.gz

     sqlite-autoconf-3130000.tar.gz

     subversion-1.8.1.tar.gz

     svnadmin-1.6.2.zip

     zlib-1.2.8.tar.gz

本例所有tar包都放在/usr/local/src/下,安裝目錄為/usr/local/

 

一、建立svn組和使用者

adduser svn

passwd svn

切換到root使用者,在/etc/sudoers檔案中找到root  ALL=(ALL) ALL,在該行下添加提升許可權的使用者資訊,如:

root    ALL=(ALL)       ALL
svn    ALL=(ALL)       ALL

強制儲存退出

 

二、安裝apache及其依賴包

1.安裝 apr

sudo tar zxvf apr-1.4.6.tar.gz

cd apr-1.4.6

sudo ./configure --prefix=/usr/local/apr

sudo make

sudo make install

 

2.安裝 apr-util
sudo tar zxvf  apr-util-1.5.1.tar.gz

cd cd apr-util-1.5.1/
sudo ./configure --prefix=/usr/local/apr-util--with-apr=/usr/local/apr

sudo make

sudo make install

 

3.安裝 sqlite

sudo tar zxvfsqlite-autoconf-3130000.tar.gz

cdsqlite-autoconf-3130000.tar.gz

sudo ./configure--prefix=/usr/local/sqlite

sudo make

sudo make install

 

4.安裝 zlib

sudo tar zxvfzlib-1.2.8.tar.gz

cdzlib-1.2.8.tar.gz

sudo ./configure--prefix=/usr/local/zlib

sudo make

sudo make install

 

5.安裝 prce

sudo tar jxvf pcre-8.37.tar.bz2

cd pcre-8.37/

sudo ./configure --prefix=/usr/local/pcre 

sudo make

sudo make install

 

6.安裝openssl

sudo tar zxvf openssl-1.0.0e.tar.gz

cd openssl-1.0.0e/

sudo ./config--prefix=/usr/local/ssl shared

sudo make depend

sudo make install

 

7.安裝apache

sudo tar jxvf  httpd-2.2.31.tar.bz2

cd httpd-2.2.31

sudo ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --with-pcre=/usr/local/pcre --with-zlib=/usr/local/zlib --with-ssl=/usr/local/ssl --enable-log-config --enable-log-forensic --enable-logio --enable-env --enable-mime-magic --enable-expires --enable-headers --enable-setenvif --enable-proxy --enable-proxy-http --enable-http --enable-mime --enable-status --enable-autoindex --enable-info --enable-cgi --enable-dir --enable-actions --enable-rewrite --enable-so --enable-module=so --enable-http --enable-dav --enable-maintainer-mode --enable-mods-shared=ALL --enable-ssl

sudo make

sudo make install

 

三、修改設定檔
1.
修改設定檔

sudo vi conf/httpd.conf 
添加一行 ServerName 192.168.91.128:80(本機ip)

 

2.啟動
sudo /usr/local/apache2/bin/apachectl start

在瀏覽器中輸入localhost,出現it works說明安裝成功。

可能出現的問題:

 

解決方案:

sudo ln -sf /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.1.0.0

sudo ln -sf/usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.1.0.0

 

四、在apache中配置SVN

1.安裝subversion

sudo tar zxvf subversion-1.8.1.tar.gz

cd subversion-1.8.1.tar.gz

sudo ./configure --prefix=/usr/local/subversion --with-apr=/usr/local/apr/bin/apr-1-config --with-zlib=/usr/local/zlib --with-apr-util=/usr/local/apr-util/bin/apu-1-config --with-apxs=/usr/local/apache2/bin/apxs  --enable-shared --enable-maintainer-mode --enable-mod-activation --with-sqlite=/usr/local/sqlite

sudo make

sudo make install

 

2.修改設定檔

sudo vi /usr/local/apache2/conf/httpd.conf

找到User、Group修改:

User svn

Group svn

如果看到如下兩行,說明安裝是成功的

定義apache訪問svn:

 

五、配置svn許可權管理

1、建立svn版本庫目錄
sudo mkdir -p/data/svn/repos   #可以多建版本庫目錄

2、建立svn版本庫
sudo svnadmin create/data/svn/repos

 

3、建立本地存取控制檔案,第一次建立加-c 參數,就是第一次沒有passwd.conf檔案, "-c"參數不是建立passwd.conf檔案
sudo mkdir /home/svn/svnpasswd
/usr/local/apache2/bin/htpasswd -c /home/svn/svnpasswd admin 然後輸入密碼即可,預設是MD5加密的
/usr/local/apache2/bin/htpasswd /home/svn/svnpasswd svnusername 追加使用者

 

4、建立本地項目控制檔案
touch/home/svn/svnaccessfile

本例svnaccessfile內容為:

注意事項:頂格寫,=號兩邊有空格

 

六、測試連接

1、啟動apache
sudo /usr/local/apache2/bin/apachectlstart

2、開啟瀏覽器,輸入localhost/svn

出現版本庫說明安裝成功

 

七、安裝PHP及其依賴包

1.安裝libxml2

sudo tar zxvf libxml2-2.9.1.tar.gz

cd libxml2-2.9.1

sudo ./configure –prefix=/usr/local/libxml2

sudo make

sudo make install

可能出現的錯誤:

 

解決方案:

make clean && make dclean後重新編譯

可能出現的錯誤2:

 

原因:缺少python-dev依賴包

解決方案:

sudo rpm -ivh python-devel-2.7.5-34.el7.x86_64.rpm

 

2.安裝php

sudo tar zxvf php-5.3.8.tar.gz

cd php-5.3.8/

sudo ./configure  --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc --with-libxml-dir= /usr/local/libxml2 sudo make

sudo make test

sudo make install

sudo cp php.ini-development /etc/php.ini 

可能遇到的問題:

解決方案:

把php-5.3.8.patch 放在src下

cd php-5.3.8

sudo patch -p0 -b <../php-5.3.8.patch

sudo make

sudo make install

 

八、安裝iFSVNAdmin

sudo unzip svnadmin-1.6.2.zip -d /usr/local/svnadmin

unzip svnadmin-1.6.2.zip 
mv iF.SVNAdmin-1.6.2 svnadmin 
cd svnadmin/include/ 
vi config.inc.php 
#找到下段代碼,在下面添加一段代碼 
//define("IF_SVNBaseC_ConfigDir","E:/Development/Test/temp svnadmin/svn-config-dir"); 
define("IF_SVNBaseC_ConfigDir","/blubb/edi/blubb");

chown -Rsvn:svn svnadmin/ 

修改httpd.conf

 

重啟apache

sudo/usr/local/apache2/bin/apachectl restart

訪問 localhsot/svnadmin 出現 ifsvnadmin 說明安裝成功

預設使用者名密碼都是admin

登入後如下,輸入各個設定檔的路徑後點擊Test進行測試是否成功,全部成功後儲存配置Save configration:

 

登入後如下,可以看到軟體版本資訊、已有的倉庫、使用者、組、許可權路徑等:

 

 

 

 

至此,整個安裝就完成了!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.