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': 許可權不夠