1、安裝SVN 要在linux下安裝SVN,可以下載下傳源碼自己編譯,最好是聯網的可以直接安裝
出現上面的提示,說明安裝成功。#yum install subversion 判斷是否安裝成功(有時候也會沒有結果,提示subversion commandnot find) #subversion --v svnserve, version 1.6.11 (r934486)
有了SVN軟體後還需要建立SVN庫。(這裡我建立的一個以repos作為根的倉庫)執行上面的指令後,自動在repos下建立多個檔案, 分别是conf, db,format,hooks, locks, README.txt。#mkdir /opt/svn #mkdir /opt/svn/repos #svnadmin create /opt/svn/repos
2、配置
安裝和建立第一個倉庫都很簡單,下面開始權限可使用者驗證的配置
2.1 建立使用者名和密碼
打開conf下面的passwd檔案,(#是配置檔案的注釋,這個我覺得大家應該知道)2.2 配置authz(這裡設定使用者對目錄的通路權限的配置) [group] reposgroup = hello,lee #群組的設定,将使用者hello 和lee設定為群組reposgroup這樣我們就建立了兩個使用者,hello和lee 密碼就是 = 号後面的字元[users] # harry = harryssecret # sally = sallyssecret hello=123 lee=123456
[ / ] # 組reposgroup 裡面的使用者(使用者組前面有個@),和使用者mamamiya可對 根目錄寫讀,所有使用者可以讀取(*号碼表示所有使用者)
@ reposgroup = rw mamamiya=rw * = r2.3 設定snvserv.conf (找到檔案裡裡面的屬性。把注釋符号去點就可以了)
采用預設配置. 以上語句都必須頂格寫, 左側不能留白格, 否則會出錯.anon-access = none # 使非授權使用者無法通路 auth-access = write # 使授權使用者有寫權限 password-db = password authz-db = authz # 通路控制檔案 realm = /opt/svn/repos # 認證命名空間,subversion會在認證提示裡顯示,并且作為憑證緩存的關鍵字。
3、啟動伺服器
3、1 打開伺服器 啟動svn:#svnserve -d -r /opt/svn/repos
成功打開之後,可以再别的電腦上連接配接了,
用戶端 TortoiseSVN
安裝之後 在本地建立一個目錄repos(任意名稱)
選擇Svn CheckOut
![]()
在linux下搭建SVN伺服器,權限+常見錯誤
我的伺服器IP是192.168.0.61 按下OK之後 就可以登入了這裡的使用者名密碼就是 passwd 檔案裡面配置的![]()
在linux下搭建SVN伺服器,權限+常見錯誤 如果出現 套接字 操作嘗試一個無法連接配接的主機 的錯誤 可能需要在伺服器裡面的防火牆放行一下 3690端口![]()
在linux下搭建SVN伺服器,權限+常見錯誤
打開/etc/sysconfig 裡面的 iptables檔案 添加下面語句,(從iptables裡面複制一行 端口修改成3690即可,防止不同iptables檔案 配置語句不一樣)
-A INPUT -m state --statr NEW -m tcp -p tco --dport 3690 -j ACCEPT使用者名密碼驗證成功之後 就會收到倉庫裡面的檔案4、添加子目錄,控制權限![]()
在linux下搭建SVN伺服器,權限+常見錯誤
因為開始 我們設定了 一個hello使用者可以對整個目錄進行 讀寫,現在我們可以再這個目錄下面建立其他目錄 如,aaa、bbb
然後再目錄裡面右鍵 選擇SVN Commit,就建立了兩個子目錄。
再回到linux的authz檔案可以讓使用者 xiaodidi 隻能通路aaa目錄 (現在passwd檔案裡面添加這使用者)[/aaa]xiaodidi = rw
這樣xiaodidi這個使用者就隻能通路aaa目錄了,
如果出現 authorization failed 一般是授權問題 authz ,檢查檔案配置