FREESCO packages 安裝篇



贊助商連結


rushoun
2006-11-22, 07:00 PM
前言:
也許他使用的人不多,不過它卻很小,對於想快速架設簡易網路的user來說,也許是另一種選擇。僅將個人的一些心得發表,供大家參考。
寫下這一系列的FREESCO文章的用意,除了希望能讓這個好用的自由軟體,有方便華人參考的中文文件外。也希望有更多的網友,能將自己在LINUX領域中的使用心得寫出,方便入門者參考學習。同時利用這些紀錄,當成是一種知識上的分享累積,讓自由軟體不斷茁壯長大。

本文一系列的安裝說明,均參考http://bakskuru.se/fredrik/freesco/index.html網頁中的說明,還有一些個人在使用FREESCO過程當中的經驗,以及一些PCZONE論壇中網友,如linux_xp,maize等網友無私的分享。網友如果有不瞭解的部分,可以直接到這些網頁閱讀,或是透過我個人的網頁及PCZONE當中去搜尋吧。其實透過google的搜索,大概都可以找到我所寫的一些FREESCO的文章,也可以透過e-mail聯絡指教。

之前我曾經有寫過一些關於FREESCO的文章,在PCZONE發表過,當時並沒有太專注在FREESCO的其他功能上做研究,只是純粹的把它當成一個防火牆程式,因為它可以當DHCP+NAT伺服器,又可以做一些基本的防火牆規則設定,對於一些小型的網路來說,功能是穩定且運作快速的。如果能加上好的防火牆規則管理,還是不錯的。不過網路日新月異,尤其現在對於QoS的要求,FREESCO在這方面就顯得比較弱,雖然他也有外掛的頻寬管制的外掛程式,我沒有用過,所以無從介紹。請網友自行早資料研究吧,如果有個成果,希望能將您的寶貴經驗,發表分享一下吧。

最近因為想用FREESCO來做其他的服務,比如說FTP或是HTTP伺服器,因此在這方面開始蒐集資料,雖然還在測試進行中,不過卻已經了解了如何將package程式外掛上去的方法,在此分享給網友。往後如果成功的將FTP等的功能,成功的執行後,我會另外寫一篇有關的文件,供網友參考。

或許網友會覺得很奇怪?為什麼不直接用小紅帽,Fedora之類的linux套件不就好了。我只能這麼說,我是個不太愛動腦筋的人,頭腦又不太靈光,凡事都喜歡盡量最用簡單的方式解決問題,上面的這些套件對我來說,真是有夠複雜啊。當初因為處理大樓的網路伺服器,才一頭栽進FREESCO的世界,因為安裝他真是太容易了。現在碰到了要加強功能的問題,當然也是想用最簡單的方式解決囉!好在FREESCO的作者,不斷的有寫出新功能的外掛package程式,而且安裝蠻簡單的。就我目前所看到的資料,舉凡apach,流量統計程式,mysq,samba等等,都有外掛的package程式可用,也許能解決我的問題。所以我就再試試這個好幾年沒讓我再進一步研究的FREESCO了,看看能不能解決我的需求。

或許FREESCO不適合用來對外架站,不過拿來當區域網路內的伺服器來用,我想應該是相當簡單好用的系統,而且不需要太多的維護工作,尤其是您把他移植到硬碟,或是CF卡上來運作,幾乎讓人忘了他的存在。還有就是,他可以用舊電腦,舊零件,舊網卡,舊......。總之,我覺得.......他還很環保。

爾後還會有一些關於將FREESCO安裝到RAM中,將FREESCO移植到硬碟中等等的資料,都會有文章陸續發表。這些相關的文件,隨後也都會在我的個人網頁上發表,供網友參考,因為本人不是一個專業的linux使用者,基礎的相關知識都不足。所以有錯誤之處,請網友多多包涵並予以指正錯誤,也希望網友先進門熱心提供經驗吧。

不廢話了,開始後面的說明。

安裝package程式

本文描述如何透過安裝package程式以便擴充FREESCO的功能。當要從硬碟安裝FREESCO執行這些主要功能的程式時,這些功能還是要透過軟碟安裝。以軟碟安裝時,package程式是被載入ramdisk的,所以ramdisk的容量大小,會限制你能安裝package程式的數量及程式大小。在FREESCO預設的ramdisk的最大上限值是16MB。如果您不怕麻煩想改變ramdisk的容量大小,以符合實際上您想要的 ramdisk容量(請參考this thread for more info (http://forums.freesco.org/support/index.php?showtopic=14584))。使用ramdisk功能,您的電腦需要至少有20MB的RAM,否則ramdisk的功能將不能使用。

FREESCO的package程式是以pkg指令的URL參數來安裝的,URL參數是用來指出要從哪裡下載package程式,想要瞭解更多的 pkg指令,請自行輸入pkg指令,就會有指令的相關說明可以參考,在此不多加說明。另外一點要提的是,FREESCO本身功能設定選項中,就有自動下載安裝package程式的功能,但是這個部分我不介紹說明,請網友自行操作參考。我這裡介紹的方式,是採取登入到FREESCO的命令提示列下,直接下達 pkg指令,來手動安裝package程式。其實,您只要會手動安裝package程式,在FREESCO的功能設定中的自動安裝方式,就更沒問題了。

package程式大部分都可以從FREESCOsoft (http://www.freescosoft.org/)(FREESCO 程式庫網站)來下載和安裝。當程式安裝在硬碟時,執pkg指令一次並完成安裝後,即使您重新起動您的FREESCO,package程式依舊會保存在硬碟中。當安裝在RAM中時,只有一點不同,package程式只存在RAM中,當您關閉FREESCO時,package程式就會從您的電腦記憶體中消失。這表示您必須在每次FREESCO啟動後,都要再執行pkg指令,下載並重新安裝package程式。

如果同時有許多FREESCO用戶使用這種方法安裝package程式,對於FREESCO soft (http://www.freescosoft.org/)網站和它的映射網站的網路流量來說,將是非常大的負擔。因此要減少FREESCOsoft網站流量,使用RAM安裝package程式的方式,是不太好的一個方式。最好的方式應該是,我們可以先下載package程式到電腦中,再將package程式上傳到自己的FTP伺服器,或是個人的網頁空間中。

當您在您的FREESCO發出pkg指令,您不需要使用URL參數對任何FREESCO soft網站點下載package程式,而是使用URL參數,到您上傳package程式的FTP網站或是個人網頁中下載。通常您的ISP業者應該都會提供FTP空間讓您使用。另一個選擇是使用免費網頁空間,例如hinet,yahoo,PChome等之類提供的免費網頁空間。如果您願意,您也可以在自己的LAN裡面架設一個伺服器來放置這些package程式,以方便FREESCO下載安裝程式,如果您熟悉Linux操作,您也可以直接從檔案系統之中下載安裝。我以下介紹的方式,是透過自己的hinet網頁共間下載package程式的。

請記住一件事,安裝在RAM當中的package程式,在下次重新起動FREESCO時,將會消失(因為它是安裝在RAM記憶體中的)。因此對於一個常常要使用的package程式來說,它不是一個很好的安裝方式。因為您必須在每起動FREESCO以後,還要再下載跟安裝package程式。在後面的例子當中,我會使用一個名叫Hosts的一個package程式。這個package程式用於封鎖不安全或是一些惡意網站,例如廣告站點等...。在安裝時,因為它程式很小,而且不需要使用者去手動設定任何參數,所以安裝在RAM當中,應該是可以被接受的方式。如果您想安裝的package程式很大,我還是建議您將他安裝在硬碟當中,會比較洽當。

綜合以上的說明,安裝package程式到RAM中共有三個步驟要做:

一.啟動FREESCO中的ramdisk功能。
二.下載您想要安裝的package程式,然後再將他上傳到您的FTP服務器或是個人網頁中。
三.安裝package程式。

最後一步是自動安裝package程式。

啟動ramdisk功能

請先用最高權限的root等級登入FREESCO當中,並且在設定畫面(ADVANCE SETTING MENU)中選擇第19功能選項,請參考下面的文字畫面:(至於一些基本的FREESCO安裝設定,請初學者先參考前面有關FREESCO的安裝設定文章,在此不多做一些基礎操作的說明)

If you have 20+Mb ram. Then a 4,8, or 16MB ram drive will be
installed depending upon system memory.

19 Do you want to install a ramdrive (y/n) [n]?

Enter a "y" to enable the ramdisk and hit Enter.

請按 y 同意啟動ramdisk功能。

191 Restrict ram disk size to 4MB.(y/n) [n]?

這是問您是否選擇限制ramdisk的大小在4MB的容量,輸入"y"或"n"設定選項。然後退出設定選項畫面,並儲存設定。重新起動FREESCO,這時在開機時的程式載入畫面中,應該會看到ramdisk被設定(ramdisk大小也許變化在4和16 MB之間,其大小是取決您的電腦的記憶體大小)的RAM容量大小,如下面這樣的訊息:

Loading extra ramdisk.... Done 16MB /mnt/ram1

[ Top ]

下載 package程式 (並且上傳它)

首先下載您想要安裝的package程式。最好的下載方式是先到FREESCOsoft網站 (http://www.freescosoft.org/),從這個站點主頁,選擇最接近你的鏡射網站位置。您被導向到鏡射網站後,找到您想要下載的package程式並下載。FREESCOsoft網站它的package程式不一定是最新的,因此我們必須注意一下package程式的相關說明文件。FREESCO作者Lightning會把他最新的package程式發布在他自己的網站當中,因此網友可以到他自己的網站on his own site (http://lewys-spot.dyndns.org/packages/0.3.x/)下載最新版本的package程式。因此,如果您想要最新版本的package程式,就到這裡檢查下載吧。

一個完整的FREESCO 的package程式應該有二個檔:一個是安裝script檔(installer)和一個壓縮檔(主程式)。您必須同時下載這兩個檔案到您的電腦中。到 Lightning's site 網站下載檔名為hosts-1.5-lightning的檔案,這是
一個安裝script檔,下載並儲存到電腦中。請確定不要將他存成一般的text文件,注意這個檔是沒有副檔名的。然後下載檔名為hosts-1.5-lightning.tgz 的檔案,副檔名是 .tgz。這樣您就已經下載了 hosts-1.5-lightning 跟 hosts-1.5-lightning.tgz 兩個檔在硬碟中,請把這兩個檔放在同一個檔案路徑。

下一個步驟就是將剛才下載的檔案,上傳到您想要使用的FTP伺服器或是個人網頁空間中,以便讓您的FREESCO下載package程式。 記住要將這兩個檔案,放在FTP伺服器或是個人網頁中的相同目錄路徑中。然後您必須確定這兩個檔案能被我們的網頁流覽器(如IE或是firefox)下載,請在瀏覽器的網址列中,輸入您放置檔案完整的連結路徑,如http: //myweb.hinet.net/您的網頁/檔案完整路徑。如果不做這個測試下載的動作,您無法確認package程式檔案是否能被您的 FREESCO下載安裝,所以別偷懶,還是測試一下吧。

[ Top ]

安裝 package程式

一旦您上傳了package程式到伺服器或網頁空間,您就能把他安裝到您的FREESCO中。使用pkg指令,如下所示:(以root權限登入到您的FREESCO中)pkg -r http://address.to.your/web/server/hosts-1.5-lightning
如果您輸入的網址是正確的,您應該看到package程式安裝過程的一些信息,如下所示:

Installing... hosts-1.5-lightning

Download and use online hosts files for blocking known unwanted URL's

Checking vesions... Pv0.3.0.0.3.x
Checking required temp space... Ok
Checking required disk space... Ok
Checking dependencies... Ok
Checking if package is installed... Ok
Checking for existing libraries... Ok
***-- This package is officially unapproved at this time --***
***-- loading this program could damage your system --***
http://address.to.your/web/server/hosts-1.5-lightning.tgz (1K)
/tmp/1864~/hosts-1.5-lig [######################################] 1K|1152.233K/s
1253 bytes transferred in 0.00 sec (562.62k/sec)
Unpacking hosts-1.5-lightning.tgz .. Done
Updating hosts...

pkg在安裝時,會依據script描述安裝檔安裝程式。因此他會自動的下載跟他同檔名,且副檔名是.tgz的壓縮程式檔,解壓縮並進行安裝。以本例子中的程式來說,程式會自動執行更新阻攔不需要的URL網址的網站資料。這個程式就是攔阻惡意網站的程式,他會自動更新最新的惡意網站相關資料,防止網友上惡意網站被綁架或是被駭。這時您將看見如下所示:

Finished updating hosts... Done
Sucessfully installed... hosts-1.5-lightning

package程式現在已經安裝在您的ramdisk當中了。


package程式會自動地更新為阻攔惡意網站URL的文件。這將使這個package程式非常有效,新的惡意網站URL的資料會自動的從網路取得最新的資料,由名為Cron的服務自動更新處理程序。可是這個package程式只有在安裝當時,
阻攔惡意網站URL的文件才會進行更新。如果您希望本程式能自動的定時進行更新惡意網站的資料,請登入到FREESCO中,進入設定選單中的第42功能選項,將Cron服務打開即可。請參考下面的畫面設定:

Cron is a scheduling agent, capable of executing any task at a
specific min,hour,day,month.

42 Enable Cron daemon (y/n) ? [n]?

Type a "y" and press Enter to enable Cron.

請按 y 同意啟動。

Do you want to configure Crond now (y/n) ?

現在您被問及您是否想要設定配置Cron功能。這由編輯名為crontab的文件檔來達成。 鍵入「y」,打開crontab這個文件檔,並在文件的最末端,增加如下所示一行:

0 23 * * sun rc_hosts update 1>/dev/null 2>/dev/null

上面這行指令指定本程式,每星期天的23.00 (11PM)更新惡意網站資料。如果您想要在其他時候更新資料,可以改變其中任一個參數即可。對於關於crontab的指令更多信息,請從 Google查詢crontab關鍵字即可。一旦您完成編輯上述的指令後,請按F10退出編輯和保存crontab檔案變動後的資料。然後您會回到先前的 FREESCO的功能設定選項畫面中。退出功能設定畫面,並且保存您的變動。當回到指令提示列下,輸入如下畫面的指令rc_crond start,以便啟動Cron服務,請參考下面的畫面:

[root@Freesco] rc_crond start
Starting crond... Done

現在您的package程式已經完成安裝,並且開始Cron服務。這意味著這個package程式已經開始阻攔不需要的惡意網站的URL。而且任何在FREESCO 後面LAN端的機器都無法連上這些惡意網站了。

[ Top ]

自動安裝packages程式

當您重新起動您的FREESCO時,安裝在FREESCO的package程式將會消失,因為他是安裝在ramdisk中。所以每次當您重新啟動您的FREESCO電腦時,您都需要再次安裝這些package程式。這個繁複的動作,可以藉由增加一行指令到FREESCO特定的開機設定文件檔當中,使 FREESCO再重新啟動時,自動地完成安裝執行package程式,這個檔案就是rc_user檔。rc_user檔內容有一段文件是用來定義 FREESCO在開機啟動時,要執行哪些指令,就像是DOS的批次檔。所以我們可以將安裝package程式的一連串指令,寫到這個文件區塊中,這樣 FREESCO在開機時,就會自動的安裝我們想要安裝的package程式。

請用root登錄到FREESCO中,並且打開編輯rc_user文件,方法如下所示:

edit /boot/pkg/rc/rc_user

edit是FREESCO的文件編輯程式,非常簡易。在rc_user文件中您將看到有一段 start) 部分,如下面所示的內容。在=等號之前,增加一道pkg安裝命令,就是之前在命令提示列下輸入的安裝package程式指令,如下所示:

start) echo -s "Starting rc_user..."
pkg -r http://address.to.your/web/server/hosts-1.5-lightning
=
;;

編輯完內容後,按F10保存您的設定,並且重新啟動您的FREESCO。下次FREESCO重新啟動時,它將自動地安裝package程式。如果要檢查目前系統中安裝的package程式,可以在命令提示列下輸入 pkg -l 指令,如下所示:
編寫本檔案時,請注意空格的問題,以及網址的問題。因為有些免費的網頁空間,他的網址相當的長,所以在編輯rc_user檔案時,如果碰到網址超過一行的問題,請記得在頭一行文字的最後面打"\"符號並Enter後,才可以在下一行繼續文件,表示上下兩行文字是在一起的。

有點像這樣:記得下一行接續前一行的文字,前面的空白要去掉。我再安裝時就發生過第二行的資料,因為前面的空白造成下載失敗,因為第二而是接續第一行的指令,可能空白被視為網址的一部份,所以產生無法下載的錯誤訊息。

start) echo -s "Starting rc_user..."
pkg -r http://address.to.your/web/server\ #記得最後面打入"\"
/hosts-1.5-lightning #記得這行前面的空白要去掉。
=
;;

還有就是有的免費空間的檔案連結中,有空白的部分會出現%20這個符號,如hinet的myweb空間,就會有這個現象。所以輸入網址時這個%20這個符號也記得要輸入進去。說真的,我也不明白這個%20符號的意義,總之這樣做不會
產生錯誤。

[root@Freesco] pkg -l

提示列下打入pkg -l指令,將會列出目前的系統所有已經安裝的package程式,您應該會看到名單中有hosts-1.5-lightning這個package程式。

到此已經順利的安裝好package程式在FREESCO中了,有沒有覺得他的功能又提昇了?

[ Top ]