1. 程式人生 > >ubuntu中裝配和解除安裝svn伺服器

ubuntu中裝配和解除安裝svn伺服器

一.解除安裝:

sudo apt-get remove --purge subversion

(--purge 選項表示徹底刪除改軟體和相關檔案)

二.安裝:

1.安裝命令

sudo apt-get install subversion

2.建立專案目錄並設定讀寫許可權

sudo mkdir <span style="color:#FF0000;">-p</span> /home/svn/repository
cd /home/svn
sudo chmod -R 777 repository

 
3.建立svn倉庫
sudo svnadmin create /home/svn/repository


注:執行命令後生成以下檔案


4.設定訪問許可權:
修改配置檔案conf/svnserve.conf

<!-- 去掉#[general]前面的#號 -->
[general]
<!-- 匿名訪問的許可權,可以是read,write,none,預設為read -->
anon-access = read
<!-- 認證使用者的許可權,可以是read,write,none,預設為write -->
auth-access = write
<!-- 密碼資料庫的路徑,去掉前面的 -->
password-db = passwd


 注:

1.所有的行都必須頂格,否則報錯。

2.這些配置檔案都是read-only的,需要先賦予write的許可權

sudo chmod a+w svnserve.conf


5.新增訪問使用者:
進入conf/passwd,新增賬戶和密碼
如:
[users]
leon = 123456

注:
一定要去掉[users]前面的#,否則svn只能以匿名使用者登入,客戶端不會出現登入視窗,除非你的anon不為none,否則將返回一個錯誤。

6.設定使用者許可權:
進入config/authz,設定訪問許可權,admin=andy(andy使用者屬於admin許可權組)@admin=rw(admin許可權組可以read)

 

三.啟動SVN伺服器
svnserve -d -r /home/svn [--listen-host 192.168.1.16]


注:

-d:表示在後臺執行

-r:指定伺服器的根目錄

這樣訪問伺服器時就可以直接用"svn://伺服器ip/repository"來訪問了。
如果伺服器有多ip的話--listen-host來指定監聽的ip地址.
我們可以在svn客戶端中通過svn://192.168.1.16來訪問svn伺服器


四.停止SVN伺服器
killall svnserve


五.開放SVN伺服器埠
svn預設埠是3690,若訪問不了責需要在防火牆上開放這個埠。

/sbin/iptables -A INPUT -i eth0 -p tcp --dport 3690 -j ACCEPT

/sbin/service iptables save
也可以通過svnserve的--listen-port選項來指定一個已經開放的其他埠,不過這樣的話客戶端使用也必須家上埠
如:svn://192.168.1.200:9999/. 六.通過TortoiseSVN客戶端訪問SVN伺服器 1.本地新建一個資料夾,進入資料夾,使用TortoeseSVN訪問之前建立的SVN伺服器倉庫

  2.進入遠端倉庫,測試新增一個資料夾

  3.輸入資訊,提交

  4.輸入之前在"passwd"中新增的使用者名稱和密碼

  5.資料夾新增成功,SVN伺服器安裝成功,並測試通過

 
安裝和使用過程中出現的問題:
1.svnserve.conf:option expected
原因:配置檔案內容沒有頂格

 
解決:
svnserve.conf: Option expected的問題解決方法

2.不能開啟檔案 txn-current-lock
解決:
不能開啟資料 '/home/svn/ishare/db/txn-current-lock': 許可權不夠