专栏首页运维经验分享在Centos7 上安装SVN

在Centos7 上安装SVN

1、安装

使用yum安装非常简单:

yum install subversion

2、配置

创建仓库

我们这里在/opt下建立一个名为svn的仓库(repository),以后所有代码都放在这个下面,创建成功后在svn下面多了几个文件夹。

  1. [root@localhost /]# cd /opt
  2. [root@localhost opt]# mkdir svn
  3. [root@localhost opt]# svnadmin create /opt/svn
  4. [root@localhost opt]# ls svn
  5. conf db format hooks locks README.txt

我们这里特别关注一下conf文件夹,这个是存放配置文件的

  1. [root@localhost opt]# cd svn/conf
  2. [root@localhost conf]# ls
  3. authz passwd svnserve.conf

其中:

  • authz 是权限控制文件
  • passwd 是帐号密码文件
  • svnserve.conf 是SVN服务配置文件

接下来我们依次修改这3个文件。

配置passwd

  1. [root@localhost conf]# vi passwd
  2. [users]
  3. test1=123456
  4. test2=123456

上面的例子中我们创建了2个用户,一个test1,一个test2

配置authz

  1. [root@localhost conf]# vi authz
  2. [/]
  3. liuxianan=rw
  4. test1=r
  5. test2=r
  6. *=

上面配置的含义是,liuxianan/opt/svn/下所有文件具有可读可写权限,test只有只读权限,除此之外,其它用户均无任何权限,最后一行*=很重要不能少。

配置svnserve.conf

  1. [root@localhost conf]# vi svnserve.conf
  2. 打开下面的5个注释
  3. anon-access = none#匿名用户可读
  4. auth-access = write #授权用户可写
  5. password-db = passwd #使用哪个文件作为账号文件
  6. authz-db = authz #使用哪个文件作为权限文件
  7. realm = /opt/svn # 认证空间名,版本库所在目录

2点注意:

  • 最后一行的realm记得改成你的svn目录
  • 打开注释时切记前面不要留有空格,否则可能有问题

3、启动与停止

  1. [root@localhost conf]# svnserve -d -r /opt/svn(启动)
  2. [root@localhost conf]#killall svnserve(停止)

上述启动命令中,-d表示守护进程, -r 表示在后台执行。停止还可以采用杀死进程的方式:

  1. [root@localhost conf]# ps -ef|grep svnserve
  2. root 4908 1 0 21:32 ? 00:00:00 svnserve -d -r /home/svn
  3. root 4949 4822 0 22:05 pts/0 00:00:00 grep svnserve
  4. [root@localhost conf]# kill -9 4908

客户端连接

这里使用TortoiseSVN,输入地址svn://你的IP 即可,不出意外输入用户名和密码就能连接成功了。

默认端口3690,如果你修改了端口,那么要记得加上端口号。

设置SVN自动更新

cd /opt/svn/hooks

mv post-commit.tml post-commit

然后:vim post-commit

  1. #!/bin/sh
  2. #
  3. #
  4. #
  5. REPOS="$1"
  6. REV="$2"
  7. export LANG=zh_CN.UTF-8
  8. SVN=/usr/bin/svn #这里配置的是svn安装bin目录下的svn文件
  9. WEB=/opt/lampp/htdocs/ #要更新的目录
  10. $SVN update $WEB --username xxx --password xxx (此版本是linux下,windows下是.bat,写法少有不同)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

然后记得让post-commit有执行的权限: chmod 777 post-commit

总结

总的来说,如果你不需要杂七杂八的权限配置只是自己一个人用的话,安装配置还是比较简单的,并不像网上说的那么麻烦,我按照网上的方法一次性成功了。

扩展:yum安装路径

以svn为例:

  1. # rpm -qa | grep subversion
  2. subversion-1.6.11-15.el6_7.x86_64
  3. # rpm -ql subversion-1.6.11-15.el6_7.x86_64
  4. ...
  5. /usr/share/doc/subversion-1.6.11
  6. /usr/share/doc/subversion-1.6.11/BUGS
  7. /usr/share/doc/subversion-1.6.11/CHANGES
  8. ...

说明:

  • rpm -qa 查询所有安装的rpm包,可以配合grep命令。
  • rpm -qi 查询某个具体包的介绍。
  • rpm -ql 列出某个具体包的所有文件

rpm几个默认安装路径:

  1. /etc 一些设置文件放置的目录
  2. /usr/bin 一些可执行文件
  3. /usr/lib64 一些程序使用的动态函数库
  4. /usr/share/doc 一些基本的软件使用手册与帮助文档
  5. /usr/share/man 一些man page文件

本人出现的问题扩充:当linux中执行svn up 失败时,执行:

svn co svn://你的ip地址/  /opt/www/  --username  用户名 --password  密码

说明:svn://你的ip地址/     是svn url

/opt/www/ :目录也就是你要更东西的目录之后的

--username username 就是你的svn用户名 --password password就是svn密码  

扩展:数据库添加权限

进入

cd /opt/lampp/bin

./mysql -uroot -p

默认密码为空

grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

flush privileges;

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 浅谈Centos用户权限管理 原

    一.用户与组的概念 1.理解linux多用户,多任务的特性 Linux是一个真实的、完整的多用户多任务操作系统,多用户多任务就是可以在系统上建立多个用户,而...

    拓荒者
  • mongodb移除分片删除分片上数据库和添加分片

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    拓荒者
  • nginx设置反向代理,获取真实客户端ip 原

    (adsbygoogle = window.adsbygoogle || []).push({});

    拓荒者
  • 从小白变RSA大神,附常用工具使用方法及CTF中RSA典型例题

    前言 RSA加解密类题型是ctf题中常见题型,考点比较广泛,涉及各种攻击手法,以前在这栽了不少跟头,这里好好总结一下。包括RSA加密原理,RSA常用工具使用方法...

    FB客服
  • 12.7 默认虚拟主机

    默认虚拟主机目录概要 vim /usr/local/nginx/conf/nginx.conf //增加include vhost/*.conf mkdir /...

    运维小白
  • 历年 CVPR 最佳论文盘点(2000 年——2018 年)

    作为计算机视觉领域的顶级学术会议,CVPR 2019 近期公布了最终论文接收结果,引来学界密切关注。据悉,CVPR 2019 今年一共获得 5165 篇有效提交...

    朱晓霞
  • 刘知远:NLP研究入门之道(三)如何通过文献掌握学术动态

    地址 https://github.com/zibuyu/research_tao

    zenRRan
  • React Transition Group 动画原理

    本文从React的源码分析到过渡实现原理,每个步骤都进行了详细讲解,React Transition Group 动画的实现方法就是大体如此,希望对各位小伙伴有...

    腾讯IVWEB团队
  • 快讯 | 玩游戏玩出一篇论文,清华大学团队获信息检索顶会 SIGIR 最佳学生论文奖

    作者|周翔 最近几个月,以《王者荣耀》为代表的游戏受到了各方的攻击,其中以家长和老师的反应最为激烈。不过,玩物真的就一定会丧志吗?清华大学的几位学霸告诉你,玩游...

    AI科技大本营
  • “沃百富”,三个玩家一台戏能成吗?

    6月6日是一个吉利的日期。百度、联通和富国基金选择在这一天联合发布“沃百富”互联网理财和生活服务平台,地点为广东联通总部。这是互联网企业、传统金融机构和运营商之...

    罗超频道

扫码关注云+社区

领取腾讯云代金券