linux下離線安裝svn服務器並配置


一、下載相應的包

subversion-1.8.18.tar.gz   下載地址:http://subversion.apache.org
sqlite-autoconf-3190300.tar.gz 下載地址:http://www.sqlite.org
apr-1.5.2.tar.gz,apr-util-1.5.4.tar.gz 下載地址:http://archive.apache.org/dist/apr

zlib-1.2.11.tar.gz 下載地址:http://linux.softpedia.com/get/Programming/Libraries/zlib-159.shtml

 

二、把下載好的包上傳至目錄/home/svn/download目錄下,並解壓相關壓縮包:

tar -xf 文件名.tar

三、安裝:

1.檢查是否已經安裝gcc環境,如果沒有,先安裝gcc環境;

2.安裝apr

  1. [root@localhost ~]$ cd apr-1.5.2  
  2. [root@localhost apr-1.5.2]$ ./configure --prefix=/home/svn/apr-1.5.2  
  3. [root@localhost apr-1.5.2]$ make  
  4. [root@localhost apr-1.5.2]$ make test  
  5. [root@localhost apr-1.5.2]$ make install  

3.安裝apr-util:

  1. [root@localhost ~]$ cd apr-util-1.5.4  
  2. [root@localhost apr-util-1.5.4]$ ./configure --prefix=/home/svn/apr-util-1.5.4 --with-apr=/home/svn/apr-1.5.2  
  3. [root@localhost apr-util-1.5.4]$ make  
  4. [root@localhost apr-util-1.5.4]$ make test  
  5. [root@localhost apr-util-1.5.4]$ make install  

4.安裝依賴的sqlite:

  1.可以自行安裝sqlite或者將sqlite解壓到/home/svn/subversion-1.8.16/sqlite-amalgamation下

  2.這里采取將sqlite解壓到/home/svn/download/subversion-1.8.18/sqlite-amalgamation下

  3.將文件夾名稱改為要求的文件夾名稱
    [root@localhost subversion-1.8.18]$ mv sqlite-autoconf-3190300 sqlite-amalgamation

5.zlib的安裝:

6.安裝apr

  1. [root@localhost ~]$ cd zlib-1.2.11
  2. [root@localhost zlib-1.2.11]$ ./configure --prefix=/home/svn/zlib-1.2.11  
  3. [root@localhost zlib-1.2.11]$ make  
  4. [root@localhost zlib-1.2.11]$ make install  

7.subversion的安裝:

  1.[root@localhost ~]$ cd subversion-1.8.18

  2.[root@localhost subversion-1.8.18]$ ./configure --prefix=/home/svn/subversion-1.8.16 --with-apr=/home/svn/apr-1.5.2 --with-apr-

util=/home/svn/apr-util-1.5.4 --with-zlib=/home/svn/zlib-1.2.11
  3.[root@localhost subversion-1.8.18]$ make
  4.[root@localhost subversion-1.8.18]$ make install

8.安裝完成,添加環境變量path

  1. [root@localhost subversion-1.8.18]$ cd  
  2. [root@localhost ~]$ vi .bash_profile 
  3. 在文件里面添加以一行:PATH=/home/svn/subversion-1.8.18/bin:$PATH   並保持退出
  4. [root@localhost ~]$ source .bash_profile

9.驗證安裝是否成功,輸入:svnserve --version

四、配置

1.創建svn版本庫目錄:

  svnadmin create /home/svn/product

2. 修改版本庫配置文件svnserve.conf  主要不要前面留空格

anon-access = none          # 使非授權用戶無法訪問
auth-access = write           # 使授權用戶有寫權限
password-db = passwd    # 指明密碼文件路徑
authz-db = authz                # 訪問控制文件

3.修改passwd文件

[users]
username1 = password1
username2 = password2

username3 = password3

username4 = password4

4.修改authz文件

# 用戶分組;

[groups]

users = username1,username2

# 給用戶組users和用戶username3賦予/目錄下的讀寫權限

[/]

@users = rw

username3 = rw

*=

# *=其他用戶沒有該權限

# 給用戶username4賦予/product/10]目錄下的讀寫權限

[/product/10]

username4 = rw

5.添加端口到防火窗里:

  vi /etc/sysconfig/iptables

  添加一行:

  -I INPUT -p tcp --dport 3690 -j ACCEPT

  重新啟動防火窗:

  /sbin/service iptables restart

6.啟動服務:

  svnserve –d –r /home/svn/product/

7.遠程連接地址:

  svn://服務器ip:端口(默認端口3690可以不寫)/product/

例如:svn://192.168.23.345:82/product/

五、問題

svn客戶端訪問服務器時報錯: 由於連接方在一段時間后沒有正確答復或連接的主機沒有反應,連接嘗試失敗。

首先配置什么的都是對的。在網上搜了一些有用的東東,可以解決此問題:

請依次檢查下面各項
1,服務器有沒有運行,有沒有打開相應端口
如果服務器是svnserve,檢查有沒有運行svnserve,有沒有打開3690端口
如果服務器是apache,檢查apahce是否運行,是否打開80端口
檢查時可以在服務器運行netstat -an看看相應端口是否在LISTEN 
2,防火牆有沒有開放相應端口
3,客戶端是否可以連接服務器的相應端口
使用命令telnet 服務器IP 相應端口
如:telnet 192.168.0.1 3690

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM