1. 程式人生 > >Linux系統中svn服務器設置開機啟動

Linux系統中svn服務器設置開機啟動

數據庫 檢查 reat version 打開端口 rest grep 建立 標簽

安裝完svn服務器後雖然好用但是因為經常重啟Linux服務器,每次重啟完就要去手動啟動svn服務器,很是麻煩,於是在網上找了一些方法後,自己把svn服務器設置成開機啟動

步驟一:安裝svn服務器:

http://www.cnblogs.com/puloieswind/p/5856326.html

我是借鑒這位大哥的方法,成功安裝並運行svn服務器

1. 安裝SVN服務器:

檢查是否已安裝

# rpm -qa subversion

安裝SVN服務器

# yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql

驗證安裝

# cd /etc/httpd/modules
# ls | grep svn
mod_authz_svn.so
mod_dav_svn.so

查看版本

# svnserve --version

2. 代碼庫創建:

安裝完成後要建立SVN庫

# mkdir -p /opt/svn/repositories
# svnadmin create /opt/svn/repositories

執行後,自動建立repositories庫,查看/opt/svn/repositories文件夾包含了conf,db,format,hooks,locks,README.txt等文件,說明一個SVN庫已經建立。

3. 配置版本庫:

進入上面conf文件夾下,進行配置:

a. 用戶密碼passwd配置:

# vi + passwd  //+表示光標放在文件最低端

修改passwd為一下內容:

[users]
# harry = harryssecret
# sally = sallyssecret
zhoulf=123456

b. 權限控制authz配置:

# vi + authz

設置哪些用戶可以訪問哪些目錄,向authz文件追加以下內容:

[/]
zhoulf=rw  //給該用戶訪問所有庫的權限  [repositories:/project]  //repository庫的根目錄權限 zhoulf=rw

/ 表示根目錄及以下,根目錄是svnserve啟動時指定的,我們指定的是/opt/svn;/ 就是指對全部版本庫都具有權限

repositories:/ 表示對庫repositories的根目錄設置權限

PS:

* 權限配置文件中出現的用戶名必須已在用戶配置文件中定義。

* 對權限配置文件的修改立即生效,不必重啟svn。

c. 服務svnserve.con配置:

# vi + svnserve.conf

添加一下內容:

技術分享
[general]
#匿名訪問的權限,可以是read,write,none,默認為read
anon-access=none
#使授權用戶有寫權限
auth-access=write
#密碼數據庫的路徑
password-db=passwd
#訪問控制文件
authz-db=authz
#認證命名空間,subversion會在認證提示裏顯示,並且作為憑證緩存的關鍵字
realm=/opt/svn/repositories
技術分享

這裏註意各標簽不能錯,也不能有重復,不然無法連接。

d. 配置防火墻端口(如果需要):

不一定每個人都需要設置,可以先測試後再看是否需要打開端口

# vi /etc/sysconfig/iptables

添加一下內容:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT

保存後重啟防火墻

# service iptables restart

4. 查看:

a. 啟動SVN

# svnserve -d -r /opt/svn/repositories

b. 查看SVN進程

# ps -ef|grep svn|grep -v grep
root 12538 1 0 14:40 ? 00:00:00 svnserve -d -r /opt/svn/repositories

c. 檢測SVN端口

# netstat -ln |grep 3690
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN

5. 停止重啟SVN:

# killall svnserve //停止
# svnserve -d -r /opt/svn/repositories // 啟動

6. 測試連接:

(1) 在本地電腦上安裝TortoiseSVN客戶端:

成功安裝TortoiseSVN後在電腦桌面右鍵有TortoiseSVN提示;選擇Repo-browser;會出現一個地址欄;

(2)在地址欄輸入:svn://+服務器IP地址;如果安裝沒問題的話就會進入服務器的資源庫

二、Linux服務器端設置svn開機啟動

(1)在Linux服務器跟目錄((/root路徑下))創建一個腳本文件

# touch svn.sh

(2) 進入腳本文件

# vim svn.sh

(3)添加一下內容

#!/bin/bash
/usr/bin/svnserve -d -r /opt/svn/repositories

解釋一下:

這裏的svnserve路徑保險起見,最好寫絕對路徑,因為啟動的時候,環境變量也許沒加載。
絕對路徑怎麽查?

# which svnserve (4)改該腳本的執行權限 # chmod 777 svn.sh (5)加入自動運行 # vi /etc/rc.d/rc.local
在末尾添加腳本的路徑:
/root/svn.sh (6)重啟Linux服務器,重啟後查看svn服務器是否已經開啟 # ps -ef|grep svnserve 如果顯示以下信息表示svn已經開啟了: tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN

Linux系統中svn服務器設置開機啟動