CentOS中安装subversion,并使用svn+ssh访问

一、Subversion的传输协议
Subversion可以支持以下多种传输协议,以便客户端和仓库之间进行数据版本控制:
 

引用

file:// 本地数据传输
http:// 基于Apache的HTTP协议(明文)
https:// 基于Apache+SSL的HTTPS协议
svn:// 基于svnserve的SVN协议(明文)
svn+ssh:// 基于SSH的svnserve协议

可见,正如telnet与ssh方式的差别一样,Subversion也可以采用加密的传输方式。
那该选择哪种加密方式呢?在 这里 会告诉你两种方式的差异。

二、实现SVN over SSH方式
要使用svn+ssh://方式前,我们先列举一些该方式的优缺点:
 

引用

1、网络协议是有状态的,svn+ssh比WebDAV快很多;
2、该方式可以利用现有的ssh帐号和用户基础;
3、只有一个认证方法可选择,并且需要用户在同一个系统组,使用共享ssh密钥;
4、没有任何类型的日志,甚至是错误,如果使用不正确,会导致文件许可问题。

另外,在使用该方式的注意事项是:
 

引用

1、svn客户端在访问远端时,默认除保存验证信息外,还会保留协议类型,以方便下次提交版本更新时不需再次定义;
但这就是说,你不能这次使用svn+ssh://,而下次用svn:// ;
2、该方式会同时进行两重验证,一是ssh的密钥验证,二是svnserve设置的访问权限认证,缺一不可;
3、该方式是依赖于ssh来发起一个svnserve进程,然后网络断开后终止进程,所以,远端是不需要单独启动svnserve服务的;
4、因此,连接是需要直接指向版本仓库在远端的实际物理路径,而不是svnserve给出的映射路径

1. 服务器安装

(1) 安装ssh服务器和subversion服务器

yum install -y subversion

(2)创建登陆的用户(一定是要能登陆的账号,如果设置为不能登陆,就会报错)

useradd im

passwd im

(3)创建svn仓库

mkdir /data/svn

svnadmin create /data/svn

(4)修改权限

chown -R root.im /data/svn/

(5)修改配置文件(都在你的工程目录下)

1.修改svnserver.conf文件

anon-access = none // 未认证的用户没有任何访问权限

auth-access = write // 认证的用户有写权限

authz-db = authz // 认证文件为conf目录下的authz文件

realm = /data/svn/ //工程所在的目录

2.修改authz文件

[/]

svnserver = rw //读写

im =r  //只读

* =  //除了以上用户或组都不能使用

(6)访问(服务端不需要启动)

svn co svn+ssh://[email protected]/data/svn im

ps:这样是需要输入密码的,如果想免密钥登陆,需要通过ssh-kengen生成密码

时间: 2024-11-08 06:35:24

CentOS中安装subversion,并使用svn+ssh访问的相关文章

在Centos中安装HustOJ实验记录

hustoj是目前使用题广泛的,因学生要刷新,所以刷题平台要自已建一个,这是编程学习中重要一环,教,学,测,反思形成闭合回路.目前利用现有的服务器资源,建成了开高开源code中心,一个刷题系统,六月再建一个私有云,私有云不仅是存,上传的视频学生可以在线学习,省去了再开发的时间.下学期在基础上建成权限中心,然后自已设计实现一部分,再整合再有资料,形成自持的小型,服务于教育.教学的数据中心.后续再在此基础上再做一些自已的开发. 1.centos中安装 wget https://raw.githubu

在CentOS中安装中文支持

执行命令: # yum groupinstall chinese-support 修改配置文件: # vim /etc/sysconfig/i18n LANG="zh_CN.UTF-8" LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN" SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en" SYSFONT="lat0-sun16"

在CentOS中安装32位或64位MySql报错error: Failed dependencies解决办法

在CentOS中安装MySql报错error: Failed dependencies解决办法 安装64位MySql报错内容如下:error: Failed dependencies:        libaio.so.1()(64bit) is needed by MySQL-server-5.6.19-1.el6.x86_64    libaio.so.1(LIBAIO_0.1)(64bit) is needed by MySQL-server-5.6.19-1.el6.x86_64    

Centos中安装PHP的PDO MySQL扩展的教程

一聚教程网 >操作系统>>CentOS > Centos中安装PHP的PDO MySQL扩展的教程 www.111cn.net 编辑:Bolshevik 来源:转载 天在寻思着安装 Drupal 玩一下,在安装的过程中发现数据库选项只支持 SQLite 而没有 MySQL.纳尼?为什么会这样?结果发现没有编译安装PDO MySQL导致的.于是赶紧更新LAMP一键安装脚本. PHP Data Objects(PDO)扩展为 PHP 访问数据库定义了一个轻量级的一致接口.实现 PDO

centos中安装chromium和flash

安装环境:centos 6.5 64位 在centos中安装chromium 安装Google源 1 cd /etc/yum.repos.d/ 2 sudo wget http://people.CentOS.org/hughesjr/chromium/6/chromium-el6.repo 安装Chromium 1 sudo yum install chromium # 安装后位于 /opt/chromium-browser 安装Flash插件 下载Adobe官方Flash插件 1 // 64

Centos中安装code blocks

CentOS下面安装Codeblocks不像Ubuntu下面那样轻松,可以直接在软件中心安装.这里好多信赖我们要自己安装,也不是很麻烦. 1.先安装gcc和gcc++,这个可以直接安装 # yum install gcc # yum install gcc-c++ 2.再安装gtk2,也是直接安装 # yum install gtk2* 3.再安装wxGTK,一样的方法 # yum install wxGTK 4.本来要安装xterm的,最后我用的时候发现,显示中文有些显示的是方框,开始以为是c

centos中安装tomcat

1.先保证centos中安装了jre的环境. 2.上传tomcat的压缩包到root根目录. 3.切换到根目录 输入命令cd ~ , 然后 ll , 查看上传情况: 4.选中复制压缩文件,输入解压命令,tar -zxvf apache-tomcat-7.0.57.tar.gz -C /usr/local,  把它解压到/usr/local目录下,该目录是用户自己安装的软件的存放目录. 5.进入解压后的目录,查看解压情况,第一个文件夹就是tomcat的解压后的文件夹,tomcat解压后是可以直接使

centOS 中安装 Redis

之前安装过了 jdk,mysql,tomcat,这次安装 Redis, 1 . 首先得安装 c环境,用来编译 Redis源码, [[email protected] lib64]# clear [[email protected] lib64]# yum install gcc-c++ 接下来大约要下载 22MB 这个样子,很快就能下载完, 2 . 准备 redis 源码文件 利用 SSH 将 redis 拷贝到 centOS 中的 /soft 中,然后我在 /usr/local/ 下新建了一个

在CentOS中安装setup工具

在CentOS中可以使用setup配置工具很方便地配置防火墙.网络.系统服务等配置项.如果采用最小化安装CentOS的话,默认没有安装该工具.下面我们手动安装下setup工具. 1.安装setuptool# yum install setuptool 2.安装防火墙设置# yum install system-config-securitylevel-tui 3.安装网络设置# yum install system-config-network-tui 4.安装系统服务管理# yum insta