linux nginx svn 安装
??? svn服務器是項目開發中版本發布器,軟件編程用的,我是給人家配置環境的,第?一次接觸svn有點困難,網上搜了很多,也看了很多,終于摸索出針對自己服務器的環?境的方案,我們服務器的環境是 Centos5.5加lnmp的環境,所以沒有apache,那就不?能配置基于apache訪問的svn,也就不能通過網頁輸入http//:ip的形式訪問,那么網?上的一大半的教程都沒用啦, ?要配置獨立的svn服務器,我把我在安裝的過程中遇到的問題列出了一下也分析一?下,大家都是普通人,所以我遇到的問題,有的人也可能遇到。 ?
? ? 首先是下載svn的源碼安裝包 ?
http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=0&expandFolder=0&folderID=0
? ? # wget “http://subversion.tigris.org/downloads/subversion‐1.6.6.tar.gz” ?
# wget http://subversion.tigris.org/downloads/subversion‐deps‐1.6.6.tar.gz ?
? ? 然后放在一個目錄下面解壓 ?
用命令 tar jxvf 解壓 ?
切記這兩個文件要在同一目錄下面。然后進入解壓后的目錄執行源碼安裝 ?
./configure ? ?
Make ?
?Make install ?
這些都沒有問題,其中有可能會在make install 后遇到一個找不到?
/usr/local/src/subversion‐1.5.2/subversion/svnversion/.libs/lt‐svnversion: error ?
while loading shared libraries: libexpat.so.1: cannot open shared object file: No such file ?
or directory這個是找不到lib庫的路徑 ?
編輯etc/ld.so.conf文件 ?
在里面添加 ?
/usr/local/lib ?
保存退出然后運行ldconfig這個命令,然后在make install 就可以啦 ?
下一部就是配置svn ??
1.安裝svn服務器端
yum install subversion ? ? ?從鏡像下載安裝svn服務器端
cd /usr/local/ ? ? ? ? ? ? ?//進入目錄,準備創建svn目錄
mkdir svn ? ? ? ? ? ? ? ? ? //創建一個svn目錄
chmod -R 777 svn ? ? ? ? ? ?//修改目錄權限為777
svnadmin create /usr/local/svn/sunny ?//創建一個svn版本倉庫sunny(sunny可以隨便起名字)
cd sunny/conf ? ? ? ? ? ? ? //進入sunny版本倉庫下的配置文件目錄
下面要修改這個目錄下的三個配置文件
(1)vi svnserve.conf ? ?//配置版本庫信息和用戶文件和用戶密碼文件的路徑、版本庫路徑
[
把
# anon-access = read
# auth-access = write
# password-db = passwd
//這四行,前面的#號和空格去掉,變成
anon-access = none ? ? ?//改成none
auth-access = write
password-db = passwd
realm = sunny ? ? ? ? ? //改成自己的版本庫
保存
(2)vi authz ? ? //文件,創建svn組和組用戶的權限
[group]
sunny = gep,wce //創建一個sunny的組,并制定兩個用戶gep和wce
[/] ? ? ? ? ? ? //制定根目錄下的權限
@sunny = rw ? ? //sunny組用戶權限為讀寫
* = r ? ? ? ? ? //其他用戶只有讀權限
保存退出
(3) vi passwd ? //創建或修改用戶密碼
[users]
gep = 123456 ? ?//用戶名為gep的用戶的密碼為123456
wce = 123456 ? ?//。。。
保存退出
然后要設置自啟動
vi /etc/rc.local ? ?打開自啟動文件
文件內容如下
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
/usr/local/webserver/mysql/3306/mysql start
ulimit -SHn 51200
/usr/local/webserver/php/sbin/php-fpm start
/usr/local/webserver/nginx/sbin/nginx
svnserve -d -r /usr/local/svn/sunny
#/usr/local/webserver/mysql/bin/mysql -u root -p -S /tmp/mysql.sock
svn命令:
lsof -i :3690 ? 查看svn是否啟動
ps aux |grep 'svn' ?查找所有svn啟動的進程
kill -9 2505 ? ?殺死2505這個查找到的svn進程
svnserve -d -r /usr/local/svn/sunny 啟動svn(可以把這個放到/etc/local/rc.local文件中,實現開機自啟動)
這個有必要解釋一下 –d是后臺運行 ?‐r是讀取版本庫的根目錄,如果在根目錄下面再?
svn up ? ? ? ? ? ? ? ? ? ? ? ?//更新文件
#svn commit -m "注釋" xxx.php ?//提交文件
svn ci -m'aaa' test.php ? ? ? //提交文件
#svn add file ? ? ? ? ? ? ? //新建文件并添加到svn
svn add *.php ? ? ? ? ? ? ? //(添加當前目錄下所有的php文件)
svn delete test.php ? ? ? ? //刪除test.php
svn log test.php ? ? ? ? ? ?//查看test文件的log信息
svn cleanup ? ? ? ? ? ? ? ? //清理當前目錄
svn co svn://172.19.5.12 ./ ? ?//檢出一份版本庫文件到當前目錄
svn switch --relocate svn://192.168.1.253 ?svn://172.19.10.250 ? ? ?//重新定位SVN版本庫地址
// SVN版本庫起動方式,現在SVN下面有 sunny、test 兩個版本庫
1:單版本庫起動 ? ?svnserve -d -r /usr/local/svn/sunny
2:多版本庫起動 ? ?svnserve -d -r /usr/local/svn
區別在于起動svn時候的命令中的啟動參數-r指定的目錄。
限制不同的用戶對不同的版本庫操作權限,修改版本庫中的conf目錄下的 authz文件
以配置 sunny 版本庫為例
vi authz
[groups]
teacher = sunny,sunny1
[sunny:/] ? ? ? ? ? ? //指定版本庫跟目錄下的權限
@teacher = rw ? ? //teacher組用戶權限為讀寫
* = r ? ? ? ? ? //其他用戶只有讀權限
保存退出
vi passwd 設置組中用戶的賬號和密碼
[users]
sunny ?= 123456
sunny1 = 123456
然后從外面telnet 服務器ip的 3690端口,如果是通的,那么說明成功啦。?
轉載于:https://blog.51cto.com/hhwong/1163901
總結
以上是生活随笔為你收集整理的linux nginx svn 安装的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hadoop之zookeeper快速安装
- 下一篇: Linux系统中的uptime命令