linux nginx svn 安裝

來源:互聯網
上載者:User

    Centos5.5下面lnmp環境配置獨立的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 zxvf 解壓  

切記這兩個檔案要在同一目錄下面。然後進入解壓後的目錄執行源碼安裝  

./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連接埠,如果是通的,那麼說明成功啦。  

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.