操作系统:Centos 6.7

集成环境服务器:10.0.210.112

操作用户:root

建议安装前更新操作系统

# yum update

更新完成后重启

# reboot

1: 安装 Apache

# yum install httpd httpd-devel

# service httpd start

# chkconfig httpd on

2: 修改httpd.conf 配置文件:

# vi /etc/httpd/conf/httpd.conf

找到 ServiceName 并修改成:

ServiceName localhost:80

3: 防火墙中配置80端口:

# vi /etc/sysconfig/iptables

增加: -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

4: 重启防火墙:

# service iptables restart

5: 访问 Apache : http://10.0.210.112 :

6: 安装 SVN 服务:

# yum install mod_dav_svn subversion (必须安装mod_dav_svn模块)

# cd /etc/httpd/conf.d

# ls

此时你可以看到一个subversion.conf配置文件,svn安装完成后重启 Apache

# service httpd restart

7:查看模块是否安装成功:

# ls /etc/httpd/modules/ | grep svn

mod_authz_svn.so
mod_dav_svn.so

8: 创建Svn库主目录(多库模式,一份配置文件管理多个库)

# mkdir /svn/

9:修改subversion.conf 配置文件:

# vi /etc/httpd/conf.d/subversion.conf 增加以下内容:

<Location /svn/>
   DAV svn
   SVNListParentPath on
   SVNParentPath /svn
   AuthType Basic
   AuthName "Subversion repositories"
   AuthUserFile /svn/passwd.http
   AuthzSVNAccessFile /svn/authz
   Require valid-user
</Location>
RedirectMatch ^(/svn)$ $1/

10:创建 /svn/passwd.http 和 /svn/authz

# touch /svn/passwd.http

# touch /svn/authz

11: 重启 Apache

# service httpd restart

12: 下载 jsvnadmin (需要FQ),第步需要用到 :

https://code.google.com/p/jsvnadmin/

https://jsvnadmin.googlecode.com/files/svnadmin-3.0.5.zip

13: 安装 Mysql (单独安装,与业务系统的数据库分开)

# rpm -qa | grep mysql  (查看该操作系统上是否已经安装了mysql数据库)

有的话,可以通过 rpm -e 命令或者 rpm -e  --nodeps 命令来卸掉

# yum install mysql-server mysql mysql-devel

# service mysqld start

14: 用chkconfig --list | grep mysqld 查看Mysql是否开机启动

# chkconfig --list | grep mysqld

# mysqld         0:off    1:off    2:off    3:off    4:off    5:off    6:off

# chkconfig mysqld on

方便远程管理,防火墙打开3306端口

# vi  /etc/sysconfig/iptables 增加以下内容:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
# service iptables restart

15: 设置 Mysql数据库root用户的密码:

# mysqladmin -u root password 'wangfajun'

16:登录数据库:

mysql -u root -p

17: Mysql授权远程访问(先用root登录Mysql)

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'wangfajun' WITH GRANT OPTION;

mysql>FLUSH PRIVILEGES;

18: 使用Tomcat7部署svnadmin(我的Tomcat放置在/root下):

# cd /root

# tar -zxvf apache-tomcat-7.0.61.tar.gz  (解压)

# mv apache-tomcat-7.0.61 svnadmin-tomcat (重命名)
19: 修改Tomcat 的端口为9000,容器编码为UTF-8:

# vi /root/svnadmin-tomcat/conf/server.xml 修改以下内容:

<Server port="" shutdown="SHUTDOWN">

<Connector port="" protocol="HTTP/1.1"
       connectionTimeout="20000"
       redirectPort="8443"

   URIEncoding="UTF-8"/>

20:防火墙配置9000端口:

# vi /etc/sysconfig/iptables

增加以下内容:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 9000-j ACCEPT

#service iptables restart

21: 上传svnadmin.war 到 /root/svnadmin-tomcat/webapps 目录:

# cd /root/svnadmin-tomcat/webapps

解压

# unzip svnadmin.war -d svnadmin

# cd svnadmin/WEB-INF

# vi jdbc.properties

db=MySQL

#MySQL
MySQL.jdbc.driver=com.mysql.jdbc.Driver
MySQL.jdbc.url=jdbc:mysql://127.0.0.1:3306/svnadmin?characterEncoding=utf-8  注:127.0.0.1也可以是你的主机地址:10.0.210.112
MySQL.jdbc.username=root
MySQL.jdbc.password=wangfajun
22:创建数据库svnadmin并导入响应数据(utf-8编码)

执行:db/mysql5.sql和db/lang/en.sql

23:启动svnadmin-tomcat:

# /root/svnadmin-tomcat/bin/startup.sh

浏览器中打开: http://10.0.210.112:9000/svnadmin

输入:admin wangfajun

24: 配置库目录权限:

# cd /svn

# chown -R apache.apache  meeting_study

# chmod -R 777 meeting_study

(如果创建了新的库,都要执行上面两步授权 )

原因:当前http访问的发起者是Apache(/etc/httpd/conf/httpd.conf 中配置了),而访问的目录(/svn/meeting_study)拥有者为root)

25: 关闭SELinux(Linux的访问控制):

点击URL链接进去,会显示认证失败,原因是当前登录用户admin没有所属的一个用户组,并且linux自带的selinux访问控制跟svn目录访问有冲突

将SELINUX=enforcing 改为 SELINUX=disabled

重启生效:

# reboot

linux安装Subversion版本控制工具(Subversion + Apache + jsvnadmin)的更多相关文章

  1. linux安装安卓开发工具android studio

    http://www.android-studio.org/ http://android-studio.org/index.php/docs/guide 最近要接触android编程,本来想装ecl ...

  2. 解决Linux安装 VMware tools 工具的方法

    一:启动linux服务器,并用远程登录工具访问linux服务器 1:启动系统 2:用服务器控制台   :查看点ip地址 3:用客户端 连接服务器 二:挂起 vm虚拟机的 tools 安装光盘 三:开始 ...

  3. Linux 安装Jdk、mysql、apache、php、tomcat、nginx

    Jdk 安装分三步:第一步,上传跟 linux 位数相同的 jdk tar 包,解压:第二步:解压 tar 包,配置环境变量,且 source 一下 /etc/profile:第三步:检查版本 第一步 ...

  4. Linux安装 微信开发者工具(deepin linux ubt)

    一.环境:: deepin linux15.4.1 二.安装过程: 2.1 安装wine sudo apt-get install wine 2.2 安装nwjs-sdk 2.2.1 下载linux版 ...

  5. Kali linux安装漏洞扫描工具Nessus指南

    引子:Nessus是著名信息安全服务公司tenable推出的一款漏洞扫描与分析软件,号称是"世界上最流行的漏洞扫描程序,全世界超过75,000个组织在使用它".虽然这个扫描程序能够 ...

  6. linux 安装vbox增强工具

    首先在虚拟机控制台点设备--------安装增强功能,这样会用虚拟光驱加载增强功能镜象. 然后打开终端,先转到root身份:=================su================= f ...

  7. Linux安装Sqlmap等工具

    简单记录一下安装过程,都是小白教程,省的哪天又忘了要去百度. 1.下载sqlmap 源码进行安装 wget https://github.com/sqlmapproject/sqlmap/tarbal ...

  8. linux安装mysql可视化工具MySQL-workbench 连接数据库 执行sql

    Step1:建立数据库连接 点击新建连接的按钮,符号是“+”的按钮,出现下图,在“Connection name”输入连接名称. 填写连接信息 输入数据库连接密码 测试连接: 再次点击连接时会要求输入 ...

  9. linux安装python串口工具pyserial遇到不能成功导入的问题

    常规方法:pip install pyserial导入serial后提示: 解决方法:apt install python3-serial 参考:https://stackoverflow.com/q ...

随机推荐

  1. visual studio 显示引用关系 作者更改项

    visual studio 2017中,每个类或者方法顶部会显示此方法的引用关系或者作者更改项:这个功能极大了提高了我们代码的定位效率:不过有时候却发现每一行代码都有,会增加我们屏幕显示内容,有时候看 ...

  2. P1091 合唱队形 最长上升子序列

    思路:最长上升子序列 正着做一遍 倒着做一遍 然后 取最大值 #include<bits/stdc++.h> using namespace std; const int maxn=105 ...

  3. Django+Xadmin打造在线教育系统(九)

    xadmin的进阶开发 因版本问题.有些配置可能无效 自定义icon xadmin的图标采用的是第三方css样式font awesome,我们可以进官网下载最新的样式替代原本的,下载地址:http:/ ...

  4. Data truncation: Data too long for column 'content' at row 1

    项目运行报错: Data truncation: Data too long for column 'content' at row 1 是由于字段长度太小导致的 搜索mysql 中text 字段长度 ...

  5. php unset对json_encode的影响

    先运行一段php代码: $a = Array(0=>'hello world', 1=>'girl', 2=>'boy'); var_dump(json_encode($a)); u ...

  6. 压缩JS,CSS的工具

    目标: 压缩项目中的JS,CSS文件. 方法一:使用uglifyjs uglifycss 压缩JS: 1.安装NODEJS.是一个在服务端运行的JS语言.下载地址https://nodejs.org/ ...

  7. 「HNOI2016」树 解题报告

    「HNOI2016」树 事毒瘤题... 我一开始以为每次把大树的子树再接给大树,然后死活不知道咋做,心想怕不是个神仙题哦 然后看题解后才发现是把模板树的子树给大树,虽然思维上难度没啥了,但是还是很难写 ...

  8. bzoj1047/luogu2216 理想的正方形 (单调队列)

    开b组单调队列,分别维护此时某一列中的最大/最小值 然后我每次把它们的头取出来,塞到维护行的单调队列里,就是n*n的最大/最小值 #include<bits/stdc++.h> #defi ...

  9. 8、16、32-BIT系列单片机区别与特点

    一.8位单片机 8031/8051/8751是Intel公司早期的产品 1.8031的特点 8031片内不带程序存储器ROM,使用时用户需外接程序存储器和一片逻辑电路373,外接的程序存储器多为EPR ...

  10. Pandas库中的DataFrame

    1 简介 DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表. 或许说它可能有点像matlab的矩阵,但是matlab的矩阵只能放数值型值(当然matla ...