linux服務器搭建svn服務器步驟

?????之前工作中從事開發(fā)都是完成功能方面的事情,對于linux配置方面了解到的比較少,一般也都有運維人員來完成。今天有個機會,幫同事搭建svn版本控制器。一邊網(wǎng)上查找資料一邊配置,終于配置完成了。心里還有些小高興,從此我對svn的權(quán)限、組之類的有個具象的概念,我要記錄一下。

安裝環(huán)境:centos6.+,安裝模式y(tǒng)um

檢查已安裝版本

#檢查是否安裝了低版本的SVN

[root@localhost /]# rpm -qa subversion

#如果存儲舊版本,卸載舊版本SVN

[root@localhost modules]# yum remove subversion

安裝SVN

[root@localhost modules]# yum install subversion

驗證安裝

檢驗已經(jīng)安裝的SVN版本信息

[root@localhost modules]# svnserve --version

svnserve,版本 1.6.11 (r934486)

編譯于 Jun 23 2012,00:44:03

版權(quán)所有 (C) 2000-2009 CollabNet。

Subversion 是開放源代碼軟件,請參閱 http://subversion.tigris.org/ 站點。

此產(chǎn)品包含由 CollabNet(http://www.Collab.Net/) 開發(fā)的軟件。

下列版本庫后端(FS) 模塊可用:

* fs_base : 模塊只能操作BDB版本庫。

* fs_fs : 模塊與文本文件(FSFS)版本庫一起工作。

Cyrus SASL 認證可用。

代碼庫創(chuàng)建

SVN軟件安裝完成后還需要建立SVN庫

[root@localhost modules]# mkdir -p /opt/svn/repo

[root@localhost modules]# svnadmin create /opt/svn/repo

執(zhí)行上面的命令后,自動建立repo測試庫,查看/opt/svn/repo 文件夾發(fā)現(xiàn)包含了conf, db,format,hooks, locks, README.txt等文件,說明一個SVN庫已經(jīng)建立。

配置代碼庫

進入上面生成的文件夾conf下,進行配置

[root@localhost modules]# cd /opt/svn/repo/conf

用戶密碼passwd配置

[root@localhost password]# cd /opt/svn/repos/conf

[root@admin conf]# vim passwd

修改passwd為以下內(nèi)容:

[users]

# harry = harryssecret

# sally = sallyssecret

hello=123

用戶名=密碼

這樣我們就建立了hello用戶,123密碼

以上語句都必須頂格寫,左側(cè)不能留空格,否則會出錯.

權(quán)限控制authz配置

[root@admin conf]# vi + authz

目的是設置哪些用戶可以訪問哪些目錄,向authz文件追加以下內(nèi)容:

[groups]

php=yonghu,yonghu2,yonghu3?#創(chuàng)建用戶分組,可對組遠進行權(quán)限、訪問目錄設置

android=yonghu5,yonghu6

#設置[/]代表SVN目錄下所有的資源

[/] 或者寫成[repl:/]

hello = rw #意思是hello用戶對repo測試庫下所有的目錄有讀寫權(quán)限,當然也可以限定。

#代表svn目錄下的android文件夾

[/adnroid]

@android=rw #android組的用戶擁有讀寫權(quán)限

以上語句都必須頂格寫,左側(cè)不能留空格,否則會出錯.

服務svnserve.conf配置

[root@admin conf]# vim svnserve.conf

追加以下內(nèi)容:

[general]

#匿名訪問的權(quán)限,可以是read,write,none,默認為read

anon-access=none

#使授權(quán)用戶有寫權(quán)限

auth-access=write

#密碼數(shù)據(jù)庫的路徑

password-db=passwd

#訪問控制文件

authz-db=authz

#認證命名空間,subversion會在認證提示里顯示,并且作為憑證緩存的關鍵字

realm=/opt/svn/repositories

以上語句都必須頂格寫,左側(cè)不能留空格,否則會出錯.

配置防火墻端口

[root@localhost conf]# vi /etc/sysconfig/iptables

添加以下內(nèi)容:

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

保存后重啟防火墻

[root@localhost conf]# service iptables restart

啟動SVN

svnserve -d -r /opt/svn/repo

查看SVN進程

[root@localhost conf]# ps -ef|grep svn|grep -v grep

root 12538 1 0 14:40 ? 00:00:00 svnserve -d -r /opt/svn/repo

檢測SVN 端口

[root@localhost conf]# netstat -ln |grep 3690

tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN

停止重啟SVN

[root@localhost password]# killall svnserve //停止

[root@localhost password]# svnserve -d -r /opt/svn/repo // 啟動

如果已經(jīng)有svn在運行,可以換一個端口運行

svnserve -d -r /opt/svn/ --listen-port 3391

測試

SVN服務已經(jīng)啟動,使用客戶端測試連接。

客戶端連接地址:svn://192.168.15.231

用戶名/密碼: hello/123

測試創(chuàng)建文件夾等操作。

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

相關閱讀更多精彩內(nèi)容

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