Linux中apache http server+svn+svnadmin整合

查看当前Linux的系统版本

cat /etc/issue

查看当前Linux的内核版本

cat /proc/version     或     uname -a



升级所有软件包

yum -y update

升级所有软件包,系统版本和内核版本都会升级,会改变软件设置和系统设置

升级完成并reboot后,查看系统版本和内核版本,如下图

Linux中apache http server+svn+svnadmin整合_第1张图片


安装Apache HTTP server

安装httpd httpd-devel

yum install httpd httpd-devel

启动httpd

service httpd start

httpd设置为开启启动

chkconfig httpd on


修改配置文件

vim /etc/httpd/conf/httpd.conf

Linux中apache http server+svn+svnadmin整合_第2张图片


浏览器中访问http://192.168.0.239

Linux中apache http server+svn+svnadmin整合_第3张图片


安装SVN模块

yum install mod_dav_svn subversion

查看/etc/httpd/conf.d/目录下是否存在subversion.conf

cd /etc/httpd/conf.d/

Linux中apache http server+svn+svnadmin整合_第4张图片


重启Apache HTTP server,查看svn模块是否安装成功

service httpd restart

ls /etc/httpd/modules/|grep svn 

svn --version

Linux中apache http server+svn+svnadmin整合_第5张图片


创建SVN库并修改subversion.conf

mkdir /svn

vi /etc/httpd/conf.d/subversion.conf


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

创建文件passwd.http、authz

touch  /svn/passwd.http

touch  /svn/authz

重启Apache HTTP server

service httpd restart


安装MySQL

yum -y install mysql-server mysql mysql-devel

启动mysql

service mysqld start

查看mysql

chkconfig --list|grep mysqld

mysql设置为开机启动

chkconfig mysqld on



设置mysql密码

mysqladmin -u root password root

登录命令

mysql -u root -p 回车后输入密码

进行远程访问赋权

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

sql>flush privileges;

Linux中apache http server+svn+svnadmin整合_第6张图片

如需修改mysql的密码,可以使用下面指令

mysqladmin -u root -p password "test123"

若执行上面一条指令修改了mysql的密码,注意重新授权

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

sql>flush privileges;


上述操作均在192.168.0.239的linux虚拟机中。此时,在VMWare所在192.168.0.103的Windows机器上,使用Navicat尝试连接192.168.0.239上的mysql,连接测试成功。如下图

Linux中apache http server+svn+svnadmin整合_第7张图片


安装Tomcat

 tar -zxvf apache-tomcat-8.5.11.tar.gz -C /usr/local/

重命名apache-tomcat-8.5.11为svn-tomcat

mv apache-tomcat-8.5.11 svn-tomcat

修改server.xml


                connectionTimeout="20000"
               redirectPort="9443"  URIEncoding="UTF-8" />



启动tomcat

cd /usr/local/svn-tomcat/bin

sh startup.sh

上面的tomcat也是在192.168.0.239Linux机器上安装的。在Windows的浏览器中访问http://192.168.0.239:9090/

Linux中apache http server+svn+svnadmin整合_第8张图片



Svn Admin部署到tomcat

1.svnadmin 介绍 
https://code.google.com/p/jsvnadmin/

2.svnadmin下载地址 
https://jsvnadmin.googlecode.com/files/svnadmin-3.0.5.zip

Svn Admin是一个Java开发的管理Svn服务器的项目用户的web应用。安装好Svn服务器端好,把Svn Admin部署好,就可以通过web浏览器管理Svn的项目,管理项目的用户,管理项目的权限。使得管理配置Svn简便,再也不需要每次都到服务器手工修改配置文件。


上传svnadmin.war到虚拟的linux服务器192.168.0.239,放到/usr/local/svn-tomcat/webapps

解压svnadmin.war

unzip svnadmin.war -d svnadmin

删除svnadmin.war

rm -rf svnadmin.war

修改svnadmin/WEB-INF/jdbc.properties

/usr/local/svn-tomcat/webapps/svnadmin/WEB-INF

vi jdbc.properties

Linux中apache http server+svn+svnadmin整合_第9张图片


在本地Windows的机器上,通过Navicat连接1922.168.0.239上的mysql,创建数据库svnadmin并设置数据库字符集为utf-8,导入对应的数据库文件mysql5.sql(表和数据)、en.sql(语言编码)

Linux中apache http server+svn+svnadmin整合_第10张图片


启动192.168.0.239上的tomcat,在本地Windows机器上访问http://192.168.0.239:9090/svnadmin

Linux中apache http server+svn+svnadmin整合_第11张图片

登录成功之后的主页面

Linux中apache http server+svn+svnadmin整合_第12张图片

新建项目

Linux中apache http server+svn+svnadmin整合_第13张图片

在239机器上查看svn库目录下多了一个AiCheYiXiu目录

Linux中apache http server+svn+svnadmin整合_第14张图片

点击AiCheYiXiu项目的url,如下图所示,发现认证失败,即当前用户admin没有对AiCheYiXiu项目的任何操作权限。因此,在右侧针对该项目设置用户组。

Linux中apache http server+svn+svnadmin整合_第15张图片

点击保存后如下图

Linux中apache http server+svn+svnadmin整合_第16张图片

向用户组中添加用户

Linux中apache http server+svn+svnadmin整合_第17张图片

因为developer属于AiCheYiXiu资源的用户组,并且向该用户组分配了读写权限,然后向developer用户组中添加了用户admin。此时,admin用户拥有了对AiCheYiXiu资源的读写权限。

Linux中apache http server+svn+svnadmin整合_第18张图片

对AiCheYiXiu目录赋权,因为使用Apache和SVN整合,在使用svnadmin对资源进行管理的时候,用户的group和user均为apache

vi /etc/httpd/conf/httpd.conf

Linux中apache http server+svn+svnadmin整合_第19张图片

然而我们新建的资源AiCheYiXiu所属的用户组和用户均为root,因此需要做如下设置。

chown -R apache.apache  AiCheYiXiu

chmod -R 777 AiCheYiXiu

Linux中apache http server+svn+svnadmin整合_第20张图片


关闭SELinux的文件访问权限

vi /etc/selinux/config

Linux中apache http server+svn+svnadmin整合_第21张图片


重启Linux

reboot

重启tomcat

/usr/local/svn-tomcat/bin/startup.sh

在本地Windows中访问http://192.168.0.239:9090/svnadmin

Linux中apache http server+svn+svnadmin整合_第22张图片


若需要添加用户,可如下图操作

Linux中apache http server+svn+svnadmin整合_第23张图片

若需要添加用户组

Linux中apache http server+svn+svnadmin整合_第24张图片

给新加用户组添加针对指定项目的特定权限

Linux中apache http server+svn+svnadmin整合_第25张图片

将新添加的用户cb,添加到新添加的用户组UI中,如下图

Linux中apache http server+svn+svnadmin整合_第26张图片




安装Tortoise

Linux中apache http server+svn+svnadmin整合_第27张图片

下载地址https://tortoisesvn.net/downloads.html

下载并安装TortoiseSVN、LanguagePack

在桌面右键--TortoiseSVN--Repo-browser如下图

Linux中apache http server+svn+svnadmin整合_第28张图片



项目导入SVN服务器

选中待导入的项目--右键Tortoise SVN--Import

Linux中apache http server+svn+svnadmin整合_第29张图片

Linux中apache http server+svn+svnadmin整合_第30张图片



Eclipse中检出项目

在Eclipse中新建资源库,指定项目路径http://192.168.0.239/svn/AiCheYiXiu

Linux中apache http server+svn+svnadmin整合_第31张图片


检出此项目

Linux中apache http server+svn+svnadmin整合_第32张图片


一般不会把项目下的target、.project、.classpath、.settings提交到SVN中,可能需要删除SVN上所有的这些目录和文件。

在本地Windows的桌面,右键TortoiseSVN--Repo-browser,查看并删除不需要的目录和文件。

Linux中apache http server+svn+svnadmin整合_第33张图片

下图为设置Eclipse忽略提交

Linux中apache http server+svn+svnadmin整合_第34张图片






你可能感兴趣的:(系统架构)