『壹』 linux 已經安裝svn 怎麼配置
代碼庫創建
SVN軟體安裝完成後還需要建立SVN庫
[root@Linux moles]# mkdir -p /opt/svn/repo
[root@Linux moles]# svnadmin create /opt/svn/repo
執行上面的命令後,自動建立repo測試庫,查看/opt/svn/repo 文件夾發現包含了conf, db,format,hooks, locks, README.txt等文件,說明一個SVN庫已經建立。
配置SVN代碼庫
進入上面生成的文件夾conf下,進行配置
[root@Linux moles]# cd /opt/svn/repo/conf
用戶密碼passwd配置
[root@Linux password]# cd /opt/svn/repos/conf
[root@Linux conf]# vim passwd
修改passwd為以下內容:
[users]
# harry = harryssecret
# sally = sallyssecret
root=raykaeso
用戶名=密碼
這樣我們就建立了root用戶, raykaeso密碼
以上語句都必須頂格寫, 左側不能留空格, 否則會出錯.
許可權控制authz配置
[root@Linux conf]# vi + authz
目的是設置哪些用戶可以訪問哪些目錄,向authz文件追加以下內容:
#設置[/]代表根目錄下所有的資源
[/] 或者寫成[repl:/]
root= rw
意思是root用戶對repo測試庫下所有的目錄有讀寫許可權,當然也可以限定。
如果是自己用,就直接是讀寫吧。
以上語句都必須頂格寫, 左側不能留空格, 否則會出錯.
服務svnserve.conf配置
[root@Linux conf]# vim svnserve.conf
追加以下內容:
[general]
#匿名訪問的許可權,可以是read,write,none,默認為read
anon-access=none
#使授權用戶有寫許可權
auth-access=write
#密碼資料庫的路徑
password-db=passwd
#訪問控制文件
authz-db=authz
#認證命名空間,subversion會在認證提示里顯示,並且作為憑證緩存的關鍵字
realm=/opt/svn/repositories
以上語句都必須頂格寫, 左側不能留空格, 否則會出錯.
配置防火牆,SVN埠為3690
[root@Linux conf]# vi /etc/sysconfig/iptables
添加以下內容:
-A INPUT -m state –state NEW -m tcp -p tcp –dport 3690 -j ACCEPT
保存後重啟防火牆
[root@Linux conf]# service iptables restart
啟動SVN
svnserve -d -r /opt/svn/repo
啟動SVN服務
svnserve -d -r /opt/svn/
注意:如果在一台伺服器上同時啟動多個版本管理,那麼啟動路徑必須是所有項目倉庫的根路徑:比如
/opt/svn/project1 /opt/svn/project2 ——————-> /opt/svn/
參考:CentOS 6.2 SVN搭建 (YUM安裝)-http://www.leixuesong.cn/226
『貳』 linux配置SVN,添加用戶,配置用戶組的許可權
用xshell登陸伺服器,cd切換到伺服器中svn的項目倉庫目錄中,然後切換到conf文件中(也可使用xftp),會看到3個文件,分別是
authz、passwd、svnserve.conf
首先編輯svnserve.conf主配置文件,主要是對以下幾項修改
如果後面大家要用到組許可權的話,大家看authz-db = authz 前面應該會有 # 號鍵,記得去掉,這樣才能在下面分配組許可權的時候,才能起作用。
建立svn用戶以及密碼:
配置組:
配置各個組許可權:
保存修改後的svnserve.conf ,passwd,authz 三個文件
然後用下面的命令重啟一下svn
查看svn進程:ps -ef | grep svn 或者 ps aux | grep svn
強制殺死進程:kill -9 進程號
重啟svn(/home/svn為自己的目錄地址):svnserve -d -r /home/svn
最後看看是不是成功了,可以在本地測試一下,看看賬戶是否可用,對應的許可權是不是已經有了,不是該組的用戶應該不能訪問沒有賦予許可權的目錄的
helloword倉庫:
現在對於def項目中,我不想讓產品部的人看到開發部和數據部的目錄下面的數據怎麼辦?可以通過 = 來設置,沒有設置許可權的人統統不能訪問, = 這一句的目的,就是割斷許可權繼承性,使得管理員可以定製某個目錄及其子目錄的許可權,從而完全避開其父目錄許可權設置的影響
『叄』 linux系統上svn如何實現許可權控制
在你的版本庫中有個conf文件夾,在這里有你要編輯的文檔來設置許可權。
配置SVN
1、 建立版本庫目錄(可建立多個,新建庫後以下各項都需重新配置。注意區別安裝目錄與版本庫目錄,以下講的都是版本庫目錄)
mkdir –p /home/svn/repos
#類似可以創建 mkdir –p /home/svn/repos2 /home/svn/repos3
2、 建立svn版本庫(與上面目錄對應)
svnadmin create /home/svn/repos
執行此命令後svn自動在repos目錄下添加必須的配置文件.
注意:版本庫不同於一般的文件夾, 直接在操作系統上新建文件無法被SVN識別, 必須使用import命令將文件導入版本庫.
此為svn內部指令,create用於新建版本庫。請使用svn help查看詳細說明。
3、 修改版本庫配置文件
vi /home/svn/repos/conf/svnserve.conf
各參數功能在配置文件的注釋中有說明, 此處配置如下:
[general]
anon-access = none # 使非授權用戶無法訪問
auth-access = write # 使授權用戶有寫許可權
password-db = passwd # 指明密碼文件路徑
authz-db = authz # 訪問控制文件
realm = /home/svn/repos # 認證命名空間,subversion會在認證提示里顯示,並且作為憑證緩存的關鍵字。其它採用默認配置. 各語句都必須頂格寫, 左側不能留空格, 否則會出錯.
4、 配置用戶
vi /home/svn/repos/conf/passwd
輸入以下內容:
[users]
admin = admin
可以添加多個,此為用戶名和密碼。
5、 配置許可權
vi /home/svn/repos/conf/authz
此配置文件設置各用戶的授權。
包括只讀r,讀寫rw。沒有列出的用戶,則不允許訪問。還可以對用戶分組,具體請參考svn手冊,以下是簡單例子:
#對倉庫repos根目錄許可權設置
[repos:/]
admin = rw
* = r
7、 啟動服務
svnserve -d -r /home/svn/
『肆』 有個技術的問題 想咨詢下啊,就是在linux下我搭建了svn伺服器,問題是客戶端怎麼自己修改用戶的密碼呢
如果是用Collabnet SVN Edge等集成安裝包架設的SVN伺服器,一般都自帶了控制台,用戶可以用自己帳號登錄控制台後修改密碼
如果是用原版安裝包架設SVN伺服器,可以將svn和apache集成後,使用ApachePassword這個cgi來實現通過web頁面自助修改密碼