1. 程式人生 > >10、SVN在Linux伺服器的安裝

10、SVN在Linux伺服器的安裝

學習目標:

1、瞭解SVN在Linux上面的安裝

2、svnadmin的基本使用

學習過程:

我們使用yum安裝比較容易,而且使用apache和svn整合管理,還需要安裝svnadmin管理專案,所以需要安裝apache,svn和mysql三個軟體所以我們先更新一下作業系統

一、安裝apache

1、更新作業系統

yum update

更新後最好重啟

reboot

2、安裝apache

yum install httpd httpd-devel

3、檢視當前的啟動狀態

[[email protected] ~]# /etc/init.d/httpd status

httpd 已停

或者

ps aux | grep httpd

檢視是否開機啟動

[[email protected] ~]# chkconfig --list|grep httpd

httpd           0:關閉  1:關閉  2:關閉  3:關閉  4:關閉  5:關閉  6:關閉

從上面可以看到httpd是沒有啟動,也沒有開啟啟動的,那麼我們都修改一下

啟動:

/etc/init.d/httpd start

開機啟動

chkconfig httpd on

檢視配置檔案是否使用的是80埠

 vim /etc/httpd/conf/httpd.conf

修改伺服器名稱

ServerName localhost:80

修改防火牆s

vim /etc/sysconfig/iptables

新增

#http 80

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

重啟防火牆

/etc/init.d/iptables restart

嘗試在客戶端瀏覽器訪問

http://192.168.3.21/

二、安裝svn伺服器

yum install mod_dav_svn subversion

mod_dav_svn模組是和apache整合使用的,所以也需要安裝一下。

安裝完畢重啟一下apache才能有效

/etc/init.d/httpd restart

檢視svn 版本

[[email protected] ~]# svn --version

svn,版本 1.6.11 (r934486)

   編譯於 Aug 17 2015,08:21:51

檢視apache,svn的模組是否安裝成功

[[email protected] ~]# ls /etc/httpd/modules/ | grep svn

mod_authz_svn.so

mod_dav_svn.so

建立svn倉庫主目錄:我們的svn計劃是在svn目錄中有多個svn庫的。

進入目錄

cd /etc/httpd/conf.d/

修改vim 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/

svn就是主庫目錄

AuthUserFile /svn/passwd.http

AuthzSVNAccessFile /svn/authz

分別是使用者目錄和訪問檔案許可權目錄,這兩個檔案還沒有,所以我們需要建立以下

[[email protected] conf.d]# touch /svn/passwd.http

[[email protected] conf.d]# touch /svn/authz

再重啟一下apache,看看有沒有錯誤:

[[email protected] conf.d]# /etc/init.d/httpd restart

停止 httpd:[確定]

正在啟動 httpd:[確定]

三、安裝svnadmin管理

1、安裝mysql資料庫

先看看是否已經安裝了mysql

 rpm -qa | grep mysql

如果有你可以不安裝了,當然你也可以解除安裝了它 通過 rpm -e 命令 或者 rpm -e --nodeps 命令來解除安裝掉

可見已經安裝了庫檔案,應該先解除安裝,不然會出現覆蓋錯誤。注意卸:載時使用了--nodeps選項,忽略了依賴關係:

rpm -e  mysql-libs-5.1.73-7.el6.x86_64 --nodeps

安裝

 yum install mysql-server mysql mysql-devel

安裝完畢後就可以啟動試一下了:

/etc/init.d/mysqld start

檢視開機啟動

[[email protected] conf.d]# chkconfig --list|grep mysql

mysqld          0:關閉  1:關閉  2:關閉  3:關閉  4:關閉  5:關閉  6:關閉

修改為開機啟動

 chkconfig mysqld on

修改防火牆

 vim /etc/sysconfig/iptables

新增

#mysql 3306

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

重啟

/etc/init.d/iptables restart

建立一個root使用者

mysqladmin -u root password '123456'

登陸

mysql -u root -p

設定可以遠端登陸的使用者

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

mysql> FLUSH PRIVILEGES;

嘗試遠端登陸

2、安裝tomcat

下載tomcat,解壓

wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.69/bin/apache-tomcat-7.0.69.tar.gz

 tar -axvf apache-tomcat-7.0.69.tar.gz

重新命名

  mv apache-tomcat-7.0.69 tomcatsvn7

修改tomcat埠為8580

   <Connector port="8580" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" URIEncoding="UTF-8" />

安全起見,刪除所有webapps下面的專案

[[email protected] tomcat7]# cd webapps/

[[email protected] webapps]# rm -rf *

修改防火牆埠

[[email protected] webapps]# vim /etc/sysconfig/iptables

新增內容

#svntomcat 8580

#-A INPUT -m state --state NEW -m tcp -p tcp --dport 8580 -j ACCEPT

重啟防火牆

[[email protected] webapps]# /etc/init.d/iptables restart

把svnadmin上傳到tomcat的webapps目錄下中。

解壓(不解壓也可以,不過最好還是解壓吧)

 unzip svnadmin.war -d svnadmin

進入修改資料庫的連結資訊

[[email protected] webapps]# vim svnadmin/WEB-INF/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

MySQL.jdbc.username=root

MySQL.jdbc.password=123456

新增資料庫

從上面的配置資訊可知,資料庫名稱叫svnadmin

執行mysql5.sql和en.sql

啟動tomcat

 ./bin/startup.sh

開啟瀏覽器檢視

http://192.168.3.21:8580/svnadmin 

這裡我輸入

liubao

123456

登陸後新增第一個專案

我們這樣通過介面新建的目錄都是屬於root,如果這個是否訪問會沒有許可權的,需要修改目錄所屬和目錄許可權,並且關閉selinux,記住以後每建立一個專案都需要修改所屬和許可權

修改目錄許可權

chown -R apache.apache first/

chmod -R 777 first/

修改selinux

在 SELINUX=enforcing 前面加個#號註釋掉它

#SELINUX=enforcing

然後新加一行

SELINUX=disabled

儲存,退出,重啟系統,搞定。

最好重啟一下

reboot電腦才能起效

你可以自己下載相關的svn客戶端測試了。

操作還是比較容易的,無非就是使用者和使用者組的操作。

設定開機啟動