CentOS 6.8下SVN服务器搭建及使用

CentOS 6.8搭建SVN

查看系统环境

(1)查看系统版本
[root@node-005 ~]# cat /etc/RedHat-release
CentOS release 6.8 (Final)

(2)查看系统全部信息
[root@node-005 ~]# uname -a
Linux node-005 2.6.32-642.15.1.el6.x86_64 #1 SMP Fri Feb 24 14:31:22 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

(3)查看系统内核
[root@node-005 ~]# uname -r
2.6.32-642.15.1.el6.x86_64

安装SVN

1、修改yum仓库配置(可不做,我这里做事保留SVN安装包)
[root@node-005 ~]# sed -i ‘s#keepcache=0#keepcache=1#g’ /etc/yum.conf
[root@node-005 ~]# grep keepcache /etc/yum.conf    #rpm包不删除
keepcache=1
[root@node-005 ~]# yum -y install subversion

2、查找查找SVN安装包
[root@node-005 ~]# find / -name subversion-1.6.11-15.el6_7.x86_64.rpm
/var/cache/yum/x86_64/6/base/packages/subversion-1.6.11-15.el6_7.x86_64.rpm
[root@node-005 ~]# tree /var/cache/yum/x86_64/6/base/packages/
/var/cache/yum/x86_64/6/base/packages/
├── apr-1.3.9-5.el6_2.x86_64.rpm
├── apr-util-1.3.9-3.el6_0.1.x86_64.rpm
├── libproxy-0.3.0-10.el6.x86_64.rpm
├── libproxy-bin-0.3.0-10.el6.x86_64.rpm
├── libproxy-python-0.3.0-10.el6.x86_64.rpm
├── neon-0.29.3-3.el6_4.x86_64.rpm
├── pakchois-0.4-3.2.el6.x86_64.rpm
├── perl-URI-1.40-2.el6.noarch.rpm
├── subversion-1.6.11-15.el6_7.x86_64.rpm
└── tree-1.5.3-3.el6.x86_64.rpm
 
0 directories, 10 files
[root@node-005 packages]# rpm -aq subversion
subversion-1.6.11-15.el6_7.x86_64

配置并启动SVN
1、创建SVN版本库根目录(svndata)及密码权限目录(svnpasswd)
[root@node-005 ~]# mkdir -p /application/svndata
[root@node-005 ~]# mkdir -p /application/svnpasswd
[root@node-005 ~]# tree /application/svn*
/application/svndata
/application/svnpasswd
 
0 directories, 0 files

2、启动SVN服务指定服务的SVN根目录
[root@node-005 ~]# svnserve -d -r /application/svndata/ # -d 
后台运行;-r 指定运行目录

# 注:查看svnserver命令帮助
[root@node-005 ~]# svnserve –help
用法: svnserve [-d | -i | -t | -X] [options]
 
有效选项:
  -d [–daemon]            : 后台模式
  -i [–inetd]            : inetd 模式
  -t [–tunnel]            : 隧道模式
  -X [–listen-once]      : 监听一次方式(调试用)
  -r [–root] ARG          : 服务的根目录
  -R [–read-only]        : 强制只读;覆盖版本库配置文件
  –config-file ARG        : 从文件 ARG 读取配置
  –listen-port ARG        : 监听端口
                            [方式: daemon, listen-once]
  –listen-host ARG        : 监听主机名称或IP地址
                            [方式: daemon, listen-once]
  -T [–threads]          : 使用线程代替进程 [方式: daemon]
  –foreground            : 在前台运行(调试用)
                            [方式: daemon]
  –log-file ARG          : svnserve 日志文件
  –pid-file ARG          : 写进程 PID 到文件 ARG
                            [方式: daemon, listen-once]
  –tunnel-user ARG        : 隧道用户名(默认是当前UID对应的用户名)
                            [方式: tunnel]
  -h [–help]              : 显示本帮助
  –version                : 显示程序版本信息

3、查看服务是否启动
(1)查看进程
[root@node-005 ~]# ps -ef |grep svn
root      67481  0 15:25 ?        00:00:00 svnserve -d -r /application/svndata/
root      67526658  0 15:34 pts/0    00:00:00 grep svn

(2)查看端口
[root@node-005 ~]# netstat -lntup
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local AddressForeign AddressState      PID/Program name 
tcp        00 0.0.0.0:36900.0.0.0:*                  LISTEN      6748/svnserve     
tcp        00 0.0.0.0:3306                0.0.0.0:*                  LISTEN      5217/mysqld       
tcp        00 0.0.0.0:210.0.0.0:*                  LISTEN      2160/vsftpd       
tcp        00 0.0.0.0:220.0.0.0:*                  LISTEN      5581/sshd         
tcp        00 127.0.0.1:6310.0.0.0:*                  LISTEN      1315/cupsd       
tcp        00 127.0.0.1:250.0.0.0:*                  LISTEN      1905/sendmail     
tcp        0  0 :::80                      :::*                        LISTEN      1925/httpd       
tcp        00 :::22:::*                        LISTEN      5581/sshd         
tcp        00 ::1:631:::*                        LISTEN      1315/cupsd       
udp        00 0.0.0.0:6310.0.0.0:*1315/cupsd

(3):已知端口号查看进程
[root@node-005 ~]# lsof -i tcp:3690
COMMAND  PID USERFD  TYPE DEVICE SIZE/OFF NODE NAME
svnserve 6748 root    3u  IPv448866      0t0  TCP *:svn (LISTEN)
[root@node-005 ~]# netstat -lntup |grep 3690
tcp        00 0.0.0.0:36900.0.0.0:*                  LISTEN      6748/svnserve

创建SVN版本库
1、新的Subversion项目
(1)创建一个新的Subversion项目(版本库)
[root@node-005 ~]# svnadmin create /application/svndata/sadoc
[root@node-005 ~]# ll /application/svndata/sadoc/
总用量 24
drwxr-xr-x 2 root root 4096 4月  20 15:47 conf
drwxr-sr-x 6 root root 4096 4月  20 15:47 db
-r–r–r– 1 root root    2 4月  20 15:47 format
drwxr-xr-x 2 root root 4096 4月  20 15:47 hooks
drwxr-xr-x 2 root root 4096 4月  20 15:47 locks
-rw-r–r– 1 root root  229 4月  20 15:47 README.txt

(2)查看帮助
[root@node-005 ~]# svnadmin –help
一般用法: svnadmin SUBCOMMAND REPOS_PATH  [ARGS & OPTIONS …]
使用“svnadmin help <subcommand>” 得到子命令的帮助信息。
使用“svnadmin –version”查看程序的版本号和文件系统模块。
 
可用的子命令:
  crashtest
  create
  deltify
  dump
  help (?, h)
  hotcopy
  list-dblogs
  list-unused-dblogs
  load
  lslocks
  lstxns
  pack
  recover
  rmlocks
  rmtxns
  setlog
  setrevprop
  setuuid
  upgrade
  verify
 
[root@node-005 ~]# svnadmin help create
create: 用法: svnadmin create REPOS_PATH
 
在 REPOS_PATH 创建一个新的空版本库。
 
有效选项:
  –bdb-txn-nosync        : 在提交事务时禁用fsync [BDB]
  –bdb-log-keep          : 禁用自动删除日志文件 [BDB]
  –config-dir ARG        : 从目录 ARG 读取用户配置文件
  –fs-type ARG            : 版本库类型: “fsfs”(默认)或“bdb”
  –pre-1.4-compatible    : 使用与1.4之前版本兼容的格式
  –pre-1.5-compatible    : 使用 Subversion 1.5 之前版本的格式
  –pre-1.6-compatible    : 使用与 1.6 之前版本兼容的格式

2、仓库用户权限配置
(1)配置允许用户solin读写访问
①备份配置文件
[root@node-005 ~]# cd /application/svndata/sadoc/conf/
[root@node-005 conf]# /bin/cp svnserve.conf svnserve.conf.solin$(date +%F)

②过滤要修改的配置
[root@node-005 conf]# egrep “\-access|\-db =” svnserve.conf
# anon-access = read
# auth-access = write
# password-db = passwd
# authz-db = authz

③修改后的参数(可以用sed替换,也可用vi/vim直接修改)
[root@node-005 conf]# egrep “\-access|\-db =” svnserve.conf
# anon-access = none  #不允许匿名访问
# auth-access = write  #允许可写
# password-db = /application/svnpasswd/passwd  #密码数据库,存放SVN吗
# authz-db = /application/svnpasswd/authz      #控制权限的数据库

另:修改后对比
[root@node-005 conf]# egrep “\-access|\-db =” svnserve.conf
# anon-access = read
anon-access = none
# auth-access = write
auth-access = write
# password-db = passwd
password-db = /application/svnpasswd/passwd
# authz-db = authz
authz-db = /application/svnpasswd/authz
[root@node-005 conf]# diff svnserve.conf.solin2017-04-20 svnserve.conf
12a13
> anon-access = none
13a15
> auth-access = write
20a23
> password-db = /application/svnpasswd/passwd
27a31
> authz-db = /application/svnpasswd/authz

3、配置authz、passwd证书文件
(1)把密码证书文件模板复制到相关目录并修改文件权限
[root@node-005 conf]# cp authz passwd /application/svnpasswd/
[root@node-005 conf]# ll /application/svnpasswd/
总用量 8
-rw-r–r– 1 root root 1080 4月  20 17:22 authz
-rw-r–r– 1 root root  309 4月  20 17:22 passwd
[root@node-005 conf]# chmod 700 /application/svnpasswd/*
[root@node-005 conf]# ll /application/svnpasswd/
总用量 8
-rwx—— 1 root root 1080 4月  20 17:22 authz
-rwx—— 1 root root  309 4月  20 17:22 passwd

(2)authz、passwd的配置
vi /application/svnpasswd/authz

添加如下:
[groups]
bd_sa = solin,test
# [/foo/bar]
[sadoc:/]
# [repository:/baz/fuz]
@bd_sa = rw
test1 = r

vi /application/svnpasswd/passwd

添加如下:
[users]
solin = bdyun
test = bdyun

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/203344.html<

赞 (0)
管理的头像管理
上一篇2025-04-06 15:40
下一篇 2025-04-06 15:42

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注