Ubuntu8.10下遷移SVN版本庫到新增的SAS硬盤

一、新增SAS硬盤

公司一臺DELL POWEREDGE R200的服務器安裝了UBUNTU8.10版本的系統並配置作爲SVN服務器。

因數據增長迅速,300GB的硬盤空間將近用完,近期新買了一塊300GB 15000轉的SAS盤(這種盤速度真心快,但是燒米呀,否則自己機器也弄這盤)掛上。

原服務器上安裝有LSI sas 6/i的raid卡,但是因爲其Raid只能支持至少2塊硬盤所以沒有做,硬盤直接掛上即可。


啓動機器後能正常出現UBUNTU的啓動界面,但是最後出現下面的提示不能進入系統。

BusyBox v1.1.3 (Debian 1:1.1.3-3ubuntu3) Built-in shell (ash)

Enter 'help' for a list of built in commands.

(initramfs)


經過GOOGLE查詢有提到輸入exit回車即可進入系統,嘗試OK,只是每次重啓系統都需要輸入exit才能進入,按照論壇中修改menu.lst文件沒能解決,不過已經滿意。


注意:論壇中有提到有的機器要輸入2次exit纔可!我的是一次搞定。


(如何將新盤加入系統這裏略過,goole一下很多好帖子!)


二、遷移原有SVN版本庫到新硬盤中(這裏說明的方法可以不用改變原有的任何使用方式

1、新增一個目錄,然後將新加入的硬盤mount到這個目錄下;

sudo mkdir svn2

sudo cd svn2

sudo mkdir repo

sudo mount /dev/sdb1(新硬盤上建立的新分區) /svn2/repo


注:如需系統重啓後自動掛載新硬盤則操作如下

sudo nano /etc/fstab

加入這一行——

/dev/sdb1 /svn2/repo ext3 defaults 0 2

sudo mount -a或重啓系統即可。


2、使用svnadmin hotcopy 命令copy原硬盤的版本庫文件到新mount進來的新硬盤中

sudo svnadmin hotcopy /svn/repo/proj(原svn文件存放路徑) /svn2/repo/proj


3、上面copy過來後如果直接使用,在svn客戶端TortoiseSVN會出現下面的錯誤提示:

Commit failed(details follow):

Can't open file /svn2/repo/proj/db/txn-current-lock' :Permission denied

要解決上面的問題在copy過來後還需對文件夾做下面的命令操作獲取目錄讀寫權限:

sudo chown -R root:subversion /svn2/repo/proj

sudo chown -R www-data:www-data /svn2/repo/proj

sudo chmod -R g+rws  /svn2/repo/proj


4、配置httpd.conf文件
 在/etc/apache2/mods-enabled下找到dav_svn.conf文件,修改其中內容如下

<Location /svn>

DAV svn

SVNListParentPath on  

SVNParentPath /svn2/repo(原路徑是/svn/repo)

AuthType Basic  

AuthName "Subversion Repository"  

AuthUserFile /etc/apache2/passwd

AuthzSVNAccessFile /etc/svnacl

Require valid-user

</Location>

注意你只需要修改上面第二塊紅色部分即可,第一處的紅色部分不要動,這樣可以不用改變原有的任何使用方式,這非常方便!

如果你將第一部分紅色部分改爲<Location/svn2>新的文件夾的話,那麼你至少需要郵件通知所有使用svn的同事,告知他們需要將訪問路徑更改爲http://192.168.1.X/svn2/...!

多爽,對使用者來說壓根不知道你已經對svn做了這麼大的調整! 這裏對SVN設計者猛贊一個!


5、重啓apache

/etc/init.d/apache2 restart


搞定!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章