Linux下安裝SVN服務器
此方法以Red Hat為例.
安裝說明:安裝CollabNetSubversionEdge(CSVN)需要先安裝JAVA JDK,Python(Red Hat已自帶).
1.安裝JAVA JDK.
(下載地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u25-download-346242.html
注意:請選擇Self Extracting Installer,否則安裝可能會失敗.)
a.首先複製JDK包到[/usr/local]目錄下(安裝後可刪掉).
命令:
cd /home/root ([/home/root]為JDK所在位置)
cp jdk-6u25-linux-x64.bin /usr/local/
b.接著安裝JDK.
命令:
chmod u+x jdk-6u25-linux-x64.bin
./jdk-6u25-linux-x64.bin
c.配置JAVA路徑(環境變量)
打開/etc/profile文件(根目錄下etc文件夾下的profile文件)
在文件後面添加以下內容:
exportJAVA_HOME=/usr/local/jdk1.6.0_25
exportJAVA_BIN=/usr/local/jdk1.6.0_25/bin
exportPATH=$PATH:$JAVA_HOME/bin
exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH命令:
vi /etc/profile
按[Insert]鍵進行修改內容,在文檔後面增加
export JAVA_HOME=/usr/local/jdk1.6.0_25
exportJAVA_BIN=/usr/local/jdk1.6.0_25/bin
exportPATH=$PATH:$JAVA_HOME/bin
exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH輸入完成後按[Esc]鍵退出編輯
:x ( :w 保存 :q退出 :x保存並退出 )
c.刷新配置文件使配置生效
命令: source /etc/profile
d.連接java程序包
命令:
cd /usr/bin
ln -s -f /usr/local/jdk1.6.0_25/jre/bin/javaln -s -f /usr/local/jdk1.6.0_25/bin/javac
連接完成後可分別輸入java及javac命令測試它是否能執行,失敗的話請檢查上面命令有沒有輸入錯誤.
2.安裝python包 (這步可跳過).
由於linux自帶安裝有python,所以不作多餘說明.可輸入python測試它是否能正常運行,運行後可用[Ctrl+D]退出.
3.安裝SVN服務.
(下載地址:http://www.open.collab.net/cn/downloads/subversion/linux.html)
a.創建一個新用戶(重要),這裡我以svnroot為用戶名進行說明.
說明:解壓SVN包不能用root用戶進行,否則使用時會因權限引起許多問題或安裝失敗.
命令:
useradd svnroot -m (創建svnroot並建立用戶目錄)
passwd svnroot (設定svnroot用戶密碼)
在系統提示(New UNIX password:)後輸入密碼,在系統提示(Retype new UNIX password:)再次輸入密碼.
b.拷貝安裝包到安裝目錄,這裡我安裝到svnroot用戶目錄下.
命令: cp /root/CollabNetSubversionEdge-1.3.2_linux-x86_64.tar.gz /home/svnroot/ (這裡的/root/為CSVN包所有文件夾)
c.使用svnroot用戶解壓CSVN安裝包.
命令:
su svnroot
tar zxvf CollabNetSubversionEdge-1.3.2_linux-x86_64.tar.gz
d.配置安裝文件.
命令:
cd /home/svnroot/csvn/data/conf/
cp csvn.conf.dist csvn.conf (拷貝源配置文檔)
vi csvn.conf
按[Insert]進行編輯
將: #RUN_AS_USER=
改為: RUN_AS_USER=svnroot (注意去掉"#"號,下同)
將: #JAVA_HOME=
改為: JAVA_HOME=/usr/local/jdk1.6.0_25
按[Esc]退出編輯
:x
e.使用root用戶安裝SVN.
命令:
exit (退出svnroot用戶,回到root用戶)
cd /home/svnroot/csvn/
sudo -E bin/csvn install
4.使用svnroot用戶運行svn.
命令:
su svnroot
cd /home/svnroot/csvn/
bin/csvn start (啟動服務,啟動過程較慢)
5.使用瀏覽器登陸SVN管理平台開記服務.
注意:如果是用虛擬機安裝的話需將網卡設置為Bridged(橋接)模式.
打linux自帶瀏覽器,在地址欄輸入http://localhost:3343/csvn/
進入後用admin登陸,密碼admin(默認).
登陸後點"start"即可開啟服務.
如果不能啟動,請對端口進行修改,具體方法請看第6步d方法.
6.安裝過程可能出現的問題及解決方法
a.linux需向windows系統拷貝安裝文件
注意:解決此問題前請先打開Windows系統的共享
用圖形界面打開"Computer",然後點 File - Connect to Server...
此時在彈出的窗口中"Service type"中選擇"Windows share"
在"Server"中輸入目標主機名稱,如:sitd010
然後點擊"Connect"進行連接.
這時會彈出一個窗口,按要求輸入訪問目標電腦的賬號及密碼後點"Connect"後即可打開Windows系統的共享文件.
b.無法解壓svn安裝包
遇到此問題請先確認命令中的路徑是否正解
排除上面可能後再確認svnroot賬號是否有權訪問或直接給予讀取權限,操作方法如下:
找到此壓縮包安方的文件夾,右鍵此文件,選擇"Properties",在"Permissions"選項卡中給svnroot賦于讀取以上的權限.c.無法打開管理平台
當你輸入http://localhost:3343/csvn/後無法打開管理平台,提示"Failed to Connect"或"File Not Found".此問題為svn平台未完成開啟,請等待一兩分鐘後再打開.
d.進入svn管理平台後無法開啟svn服務.
當你登陸管理平台後點擊"start"按鈕後無法開啟服務,
出現錯誤信息"The server could not bind to port "80". Check permission to use the port and that another process is not using the port."
請將修改服務端口.到管理平台"Administration"選項卡修改"port"端口,保存,再次開啟服務.
注意:因為只有root即超級管理員才有權限管理數字小於1000的端口,所以我們修改端口時要避免修改為數字小於1000端口.
e.本機可訪問管理平台但其它電腦無法訪問管理平台.
引起此問題的有兩種可能,一為本機防火牆阻止,二為網絡問題.
首先在防火牆中開放管理平台所用的端口(即:3343端口),及svn所用的端口(第6-d步驟中我們所設置的端口,打開此端口是為了保證svn服務能正常訪問).
依次展開在桌面上方的"System" - "Administration" - "Security Level and Firewall",打開後在"Firewall Options"選項卡中的"Other ports"開放以上所說的兩個端口(建議)或直接關閉防火牆.
再次訪問,如果不行的話請排除網絡問題.如果是用虛擬機架設的平台需將平台的網卡設置為Birdged(橋接)模式.
f.打開管理平台後,在"Repositories"選項卡中點擊項目名稱時無法打開項目.
此問題主要為系統所給的地址有誤,請注意將域名部分改為服務器的IP地址或直接將服務器的名稱改為IP地址(有域名的請改為域名).
點擊"Administration"選項卡,在"Hostname"中更改服務名.