Linux CentOS 6.5 x64 SVN服務器搭建

Linux CentOS 6.5 x64 SVN服務器搭建步驟

1. 安裝Subversion

yum install subversion

注意:安裝需要使用root權限,否則會提示You need to be root to perform this command.英文也很簡單,這裏就不多廢話了。

2. 查看Subversion的安裝位置

rpm -ql subversion
我們看到在bin目錄下放有可執行的命令:

可以通過查看SVN版本來確認是否已經安裝成功,輸入如下命令:

svn --version

3. 確定SVN版本庫存放位置,我選擇使用/var/svn/repository

mkdir -p /var/svn/repository
4. 在指定位置(/var/svn/repository)創建版本庫

svnadmin create /var/svn/repository
版本庫創建成功後,在版本庫目錄中會生成如下文件:


5. 進入conf目錄(該svn版本庫配置文件)
authz -- 文件是權限控制文件
passwd -- 帳號密碼文件
svnserve.conf -- SVN服務配置文件

6. 配置

設置賬號密碼,打開passwd文件

vim passwd

在[users]塊下添加一行username = password, 此處格式爲:用戶名 = 密碼,例如:admin = password


設置權限,打開authz文件

vim authz

在最後添加:

[/]
admin = rw

說明:

[/] -- 版本庫根目錄

admin = rw -- admin用戶有讀寫權限

用戶組設置爲同樣道理,大家自己研究吧,這裏就不多說了。


設置配置文件svnserve.conf

vim svnserve.conf

打開如上紅色框中的幾行註釋:
anon-access = read #匿名用戶可讀
auth-access = write #授權用戶可寫
password-db = passwd #使用哪個文件作爲賬號文件
authz-db = authz #使用哪個文件作爲權限文件
realm = /var/svn/repository # 認證空間名,我們最初設置的版本庫所在的目錄

7. 配置防火牆端口

默認端口爲3690

vi /etc/sysconfig/iptables
添加以下內容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
保存後重啓防火牆
service iptables restart

8. 啓動SVN版本庫

svnserve -d -r /var/svn/repository/

9. 查看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/repositories

10. 檢測SVN 端口

[root@localhost conf]# netstat -ln |grep 3690
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN

11. 停止重啓SVN

[root@localhost password]# killall svnserve    //停止
[root@localhost password]# svnserve -d -r /opt/svn/repositories  // 啓動 

12. 測試

地址:svn://127.0.0.1

默認端口:3690

13. 問題

a. 提交時提示Error: Can't open file '/var/svn/repository/db/txn-current-lock': Permission denied的解決

根源:/var/svn目錄下的一切子目錄和文件都是屬於root用戶的

解決辦法:把/var/svn目錄下的所有文件和子目錄添加讀寫權限

chmod –R o+rw /home/svn
延伸問題:is not in the sudoers file.  This incident will be reported.

1.切換到root用戶下,怎麼切換就不用說了吧,不會的自己百度去.

2.添加sudo文件的寫權限,命令是:

chmod u+w /etc/sudoers

3.編輯sudoers文件
vi /etc/sudoers
找到這行 root ALL=(ALL) ALL,在他下面添加xxx ALL=(ALL) ALL (這裏的xxx是你的用戶名)

ps:這裏說下你可以sudoers添加下面四行中任意一條
youuser            ALL=(ALL)                ALL
%youuser           ALL=(ALL)                ALL
youuser            ALL=(ALL)                NOPASSWD: ALL
%youuser           ALL=(ALL)                NOPASSWD: ALL

第一行:允許用戶youuser執行sudo命令(需要輸入密碼).
第二行:允許用戶組youuser裏面的用戶執行sudo命令(需要輸入密碼).
第三行:允許用戶youuser執行sudo命令,並且在執行的時候不輸入密碼.
第四行:允許用戶組youuser裏面的用戶執行sudo命令,並且在執行的時候不輸入密碼.

4.撤銷sudoers文件寫權限,命令:
chmod u-w /etc/sudoers

這樣普通用戶就可以使用sudo了.


如有不對的地方歡迎大家支出,交流學習。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章