云服務(wù)器搭建SVN服務(wù)器完整指南
環(huán)境準備與方案選擇
選擇CentOS 7或Ubuntu 20.04等主流Linux系統(tǒng),建議配置1核2G及以上云服務(wù)器實例。通過SSH工具連接服務(wù)器后,執(zhí)行系統(tǒng)更新命令:
# CentOS
yum update -y
# Ubuntu
apt update && apt upgrade -y
Subversion安裝與配置
軟件包安裝
# CentOS
yum install -y subversion
# Ubuntu
apt install -y subversion
創(chuàng)建版本庫
mkdir /var/svn
svnadmin create /var/svn/myproject
chmod -R 777 /var/svn/myproject
權(quán)限配置文件修改
vim /var/svn/myproject/conf/svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
訪問控制與用戶管理
# 編輯用戶密碼文件
vim /var/svn/myproject/conf/passwd
[users]
user1 = 123456
user2 = abcdef
# 配置目錄權(quán)限
vim /var/svn/myproject/conf/authz
[/]
user1 = rw
user2 = r
服務(wù)啟動與防火墻設(shè)置
# 啟動SVN服務(wù)
svnserve -d -r /var/svn --listen-port 3690
# 防火墻配置(CentOS)
firewall-cmd --permanent --add-port=3690/tcp
firewall-cmd --reload
客戶端連接驗證
Windows使用TortoiseSVN客戶端,輸入服務(wù)地址:
svn://服務(wù)器IP:3690/myproject
Linux客戶端執(zhí)行測試命令:
svn checkout svn://服務(wù)器IP:3690/myproject
運維管理與優(yōu)化建議
- 配置systemd服務(wù)實現(xiàn)開機自啟
- 設(shè)置日志輪轉(zhuǎn)策略
- 定期執(zhí)行svnadmin hotcopy備份
- 啟用SSH隧道加密傳輸
常見問題解決方案
客戶端無法連接服務(wù)器
檢查云服務(wù)器安全組的入站規(guī)則,確認3690端口已開放。驗證服務(wù)進程是否正常運行:
ps aux | grep svnserve
netstat -tunlp | grep 3690
提交時提示權(quán)限不足
檢查authz文件中的權(quán)限分配,確保相應(yīng)用戶對目標目錄有寫入權(quán)限。注意配置文件中不能包含中文注釋。
倉庫數(shù)據(jù)遷移方法
svnadmin dump /var/svn/myproject > myproject.dump
svnadmin create new_repo
svnadmin load new_repo