原文 http://www.cnblogs.com/wapco/p/3194253.html 添加到推刊
SVN托管服務(wù)大家都不陌生了,我最早開始用的是谷歌提供的SVN,因?yàn)樵谏厦嫱泄艿捻?xiàng)目都是開源的,所以當(dāng)有些項(xiàng)目不方便在網(wǎng)上公開的時(shí)候,就需要自己搭建SVN服務(wù)器了。windows、linux的用的是最多的了,但是有時(shí)候?yàn)榱朔乓粋€(gè)SVN要單獨(dú)放一臺(tái)電腦并24小時(shí)開機(jī),不符合節(jié)能減耗的目的。所以今天筆者就做一個(gè)大膽的嘗試,使用路由器架設(shè)SVN服務(wù)器,路由器的功耗只有電腦的百分之一,而且平常也都要開機(jī),這看起來有點(diǎn)像天方夜譚,因?yàn)槁酚善鞑徽撌荂PU、內(nèi)存還是ROM上,都遠(yuǎn)遠(yuǎn)不如一臺(tái)電腦,甚至不如一臺(tái)普通的安卓手機(jī)的性能,但是毛主席說過“實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn)”,所以我們今天就來做一個(gè)嘗試并檢驗(yàn)它的可能性。 我們都知道,路由器的操作系統(tǒng)也是基于Linux的,既然Linux上可以搭建SVN,那理論上路由器也是可以的,只是我們要用到第三方的路由器固件,因?yàn)槁酚善髯詭У墓碳欠忾]的,功能上也有一定的限制,所以我們這里需要一臺(tái)滿足這樣需求的路由器:至少帶一個(gè)USB接口(可以用來掛載U盤或者移動(dòng)硬盤之類的),可以刷DD-WRT、Openwrt、TOMATO其中的一種。在本文中,我們用的是華為的HG255D路由器,因?yàn)檫@臺(tái)路由器全新的也就不到100塊錢,淘寶二手的50左右即可,有一個(gè)USB接口,硬件配置是:CPU Ralink RT3052@384Mhz,16M FLASH,32M DDR內(nèi)存(+20可以升級(jí)64M性能更好)。可以刷DD-WRT和Openwrt系統(tǒng)。 路由器怎么刷第三方固件網(wǎng)上已經(jīng)有很多資料了,這里就不在詳細(xì)說明,我們直接拿刷好DD-WRT系統(tǒng)作為今天的測(cè)試平臺(tái),其他系統(tǒng)基本上操作也都差不多。 1、首先拿一個(gè)1G以上的U盤,在Linux系統(tǒng)中格式化為ext3格式,然后插在路由器的USB接口上,打開瀏覽器輸入192.168.0.1(根據(jù)自己實(shí)際IP)進(jìn)入路由器管理界面,然后點(diǎn)“服務(wù)”-“USB”選項(xiàng),按照下圖中打開USB支持,并將U盤掛載為opt,點(diǎn)應(yīng)用后如果提示Status: Mounted on /opt則掛載成功。
2、接下來再點(diǎn)選項(xiàng)卡“服務(wù)”-“服務(wù)”,然后啟用SSH并應(yīng)用,如下圖所示:
3、第三步下載PuttyMan,打開軟件后新建連接,注意用戶名那邊無論路由器的用戶名是什么都要填root,密碼則是路由器的密碼,如下圖
4、連接路由器,如果出現(xiàn)下圖中信息,那么恭喜你,已經(jīng)離成功只有一半了,否則請(qǐng)重復(fù)前面2步。
5、在PuttyMan客戶端中輸入以下命令:(請(qǐng)先確認(rèn)USB存儲(chǔ)設(shè)備已掛載到/opt) wget http://www./linux/optware/optware-install-ddwrt.sh -O - | tr -d '\r' > /tmp/optware-install.sh sh /tmp/optware-install.sh 在這里我要講一下題外話,原先是本來考慮用其他Linux系統(tǒng)安裝svn的方法,直接下載svn安裝包,但是試了很多次都不成功,因?yàn)槁酚善鞯腖inux是屬于輕量型的,里面很多庫(kù)都不支持,比如gcc庫(kù),而安裝gcc庫(kù)的時(shí)候又缺少其他的依賴庫(kù),所以走了不少?gòu)澛?,事?shí)也證明用這種方法幾乎是安裝不了的,因?yàn)榘惭b了太多的庫(kù)也會(huì)導(dǎo)致路由器硬件性能跟不上。所以后面才想到用optware這個(gè)更簡(jiǎn)單的第三方軟件運(yùn)行環(huán)境。這也是為什么第一步中要把U盤掛載為opt的原因。 6、等安裝好optware后會(huì)提示successfully,接下來就可以用功能強(qiáng)大的optware了,在命令中繼續(xù)輸入以下代碼更新opt軟件列表: cd /opt ipkg-opt update 7、你可以輸入ipkg-opt list顯示所有可安裝的軟件(還可以安裝httpd、mysql、php等等,掛上你的個(gè)人主頁(yè)),這里我們只需要安裝SVN,所以輸入 ipkg-opt install svn 8、安裝好SVN后可以在命令行中輸入svnserve --version檢查一下SVN是否安裝成功,如果可以正常顯示svn版本號(hào),那么恭喜你,你已經(jīng)成功在路由器上運(yùn)行SVN服務(wù)了,接下來讓我們啟動(dòng)SVN服務(wù),輸入命令: svnserve -d -r /opt/svndata/ 9、為了方便每次路由器關(guān)機(jī)后會(huì)自動(dòng)啟動(dòng)服務(wù),我們可以把它添加到路由器的啟動(dòng)命令中,點(diǎn)“管理”-“命令”選項(xiàng)卡,然后在指令的最后面添加以上代碼即可。
10、接下來就是測(cè)試了,為了方便測(cè)試我們開啟路由器的Samba服務(wù),進(jìn)入“服務(wù)”-“NAS”選項(xiàng)卡,啟用Samba服務(wù),并在文件分享那邊選擇opt
11、然后打開我的電腦,點(diǎn)“工具”-“映射網(wǎng)絡(luò)驅(qū)動(dòng)器”,將路由器U盤映射為A盤,映射只是為了方便訪問,也可以直接在運(yùn)行中輸入 \\192.168.0.1 來訪問
12、回到命令行中輸入 cd /opt/svndata svnadmin create svntest 13、打開文件夾,修改這3個(gè)配置文件,具體方法參照Linux中svn配置
14、然后回到windows中檢出,在版本庫(kù)中加入我們的程序代碼并提交。
哈哈,太令人振奮了,和以前用的SVN服務(wù)用起來沒什么兩樣,簡(jiǎn)直看不出來這是用一臺(tái)路由器搭建的SVN,測(cè)試結(jié)果很成功,太完美了。 15、如果需要外網(wǎng)可以訪問,則啟用動(dòng)態(tài)DNS即可,這樣不管家里的IP怎樣變化,也可以用域名來訪問了,這樣使用更方便。如下圖設(shè)置,方法很簡(jiǎn)單就不再具體說明。如果你覺得本文對(duì)你有不能關(guān)注,就幫我點(diǎn)一下推薦吧。(完)
|
|