linux | 在ubuntu16.04上搭建svn服務(wù)器

本文介紹在如何在ubuntu16.04 的系統(tǒng)上搭建svn服務(wù)器以及可能遇到的問(wèn)題。下面的操作都以root用戶進(jìn)行。

  1. 安裝svn服務(wù)器軟件subversion。
// 安裝完成后的svn版本為 1.9.3,通過(guò)svn --version可以查看版本號(hào)
apt-get install subversion

  1. 初始化svn目錄。

//創(chuàng)建測(cè)試目錄 repo1

mkdir -p /home/svn/repo1

// 初始化svn測(cè)試目錄

svnadmin create /home/svn/repo1

初始化后的svn目錄如圖所示

image

訪問(wèn)svn常用的有兩種協(xié)議 svn:// 和 svn+ssh:// 協(xié)議。下面分別進(jìn)行介紹。

  1. 使用svn:// 協(xié)議主要需要配置conf目錄下的三個(gè)文件。

1) svnserve.conf : repo1倉(cāng)庫(kù)svn服務(wù)配置文件


// 無(wú)認(rèn)證用戶不可以進(jìn)行訪問(wèn)

anon-access = none

//認(rèn)證用戶有讀寫(xiě)的權(quán)限

auth-access = write

//密碼存放在passwd文件中

password-db = passwd

//認(rèn)證權(quán)限存放在authz文件中

// 需要特別注意的是 所有配置的key都要頂格寫(xiě),不然讀取的時(shí)候會(huì)有問(wèn)題,造成客戶端無(wú)法讀取倉(cāng)庫(kù)

authz-db = authz

2)authz : 用戶權(quán)限配置文件


//groups 下存放分組下的用戶 多個(gè)用戶用,分割

[groups]

admin=harry,sally

//用相對(duì)路徑表示要確定的目錄 @組名 指定該組下所有用戶的權(quán)限 也可以直接指定單個(gè)用戶的權(quán)限

[/]

@admin=rw

3)passwd: 用戶密碼配置文件


//在users存放用戶的密碼,密碼是明文存儲(chǔ)的

[users]

harry = 111111

4 使用svn+ssh協(xié)議。使用這種方式將用ssh認(rèn)證代替svn自身的認(rèn)證,所以svn的conf目錄無(wú)需修改任何東西,只要保證svn的用戶有ssh登錄的權(quán)限和對(duì)svn文件夾訪問(wèn)的權(quán)限就可以了。比較常見(jiàn)的做法是將用戶放入一個(gè)用戶組中,確保用戶組對(duì)svn文件夾有訪問(wèn)權(quán)限。這樣可以往用戶組中添加多個(gè)用戶,使多個(gè)用戶都可以訪問(wèn)svn文件夾。


addgroup svngroup

useradd -m -g svngroup svn

chown -R svn:svngroup /home/svn/repo1

chmod -R g+rws /home/svn/repo1

采用svn+ssh的方式,需要注意兩個(gè)問(wèn)題:

1)ssh端口,ssh端口建議采用默認(rèn)的22端口,如果換成其他的端口,客戶端要考慮是否好配置。

2) 在新建svn用戶的時(shí)候,要為用戶建立一個(gè)默認(rèn)目錄,不然使用windows svn客戶端TortoiseSVN可能會(huì)出現(xiàn)無(wú)法登錄的情況。

5 啟動(dòng)svn服務(wù)器


// -d 表示守護(hù)進(jìn)程 -r 指定啟動(dòng)的根目錄 --log-file 指定日志的位置

svnserve -d -r /home/svn --log-file=/var/log/svnserve.log

啟動(dòng)時(shí)要注意啟動(dòng)的根目錄和訪問(wèn)目錄是否匹配。例如啟動(dòng)指定了-r /home/svn/repo1,訪問(wèn)時(shí)使用 svn://svn@ip:/home/svn/repo1 是訪問(wèn)不到這個(gè)倉(cāng)庫(kù)的。

參考文檔:SubVersion使用說(shuō)明

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容