首先呢,所謂的 NAS(Network Attached Storage),是指網路儲存設備,基本上就是專門存放資料的伺服器,提供了幾種傳輸方式(網芳、FTP)來做存取;對於多台電腦在區域網路的環境下,要共用、分享檔案,算是一種相當實用的服務。關於 NAS 的相關說明,可以參考維基百科。
而 FreeNAS 則是基於 FreeBSD 修改、客製化的作業系統,他的目的很單純,就是拿來當作 NAS 用;而特色呢?就是提供了一套整合好、精簡化過的系統了!包含了網頁管理界面、Samba(網芳)、FTP、SSH 等等的功能;而透過他簡單的 console 安裝、管理,以及網頁管理介面,就可以使不會 Linux 或 FreeBSD 的人,都可以比較簡單的架設出一套 NAS Server 了!
而這樣的 NAS 作業系統,和一般完整的作業系統比起來,另一個好處就是因為精簡化了,所以開啟速度會比較快。而且由於體積小,不但不吃資源,安裝的速度也很快!像 Heresy 現在已經可以在五分鐘內裝完了∼如果設定檔有備份下來的話,重裝再把設定檔還原,也是相當快的!也因此,如果 NAS 不幸陣亡了,應該也可以在最短的時間,把他還原回去。
他的官方網頁是:http://www.freenas.org/,在 CHICWORKS 的部落格,則也有一系列的 FreeNAS 中文文章可以參考。
而前一陣子,工作上要規畫大容量的 NAS Server,但是預算又買不起整套的;所以,後來就決定 DIY 一台電腦出來,並安裝 FreeNAS 來用了!基本的硬體配置,大概如下:
- Intel Core 2 Quad Q6600
- 2GB DDR2 x4
- Gigabyte EP45-DQ6(是看上他有四個 gigabit 網路買的)
- Adaptec RAID 31605 (16port SATA/SAS RAID Contoller)
- Seagate ST31000340NS(1TB SATA2 硬碟)16 顆
- Transcend TS8GSSD25S-S(8GB SSD,安裝作業系統用)
- SuperMicro SC846TQ-R900B(24 個 3.5" SATS 熱抽拔、900W Redundant PSU)
而在這環境下呢,沒想到本來以為很簡單就可以搞定的 FreeNAS,卻感覺問題很多…碰到的問題,大概如下流程吧∼
- 目前 FreeNAS 官方,最新的是 0.69RC1,用的 kernel 是 FreeBSD 6.4 的。結果當裝上去後,才發現這版本不支援主機板上的網路卡晶片,Realtek RTL8111C…而 Realtek 官網雖然有提供 FreeBSD 的驅動程式,但是卻是原始碼,要自己編譯;而 FreeNAS 卻又精簡到連 make 都沒有了…
雖然網路上有人有提供編譯好的檔案可以下載,號稱直接放進去,再修改設定檔就可以用了,但是或許是 i386 和 amd64 不同的關係吧?Heresy 沒有辦法就這樣成功的驅動網路卡… - 本來想說改用 i386 的 FreeNAS 來裝,再試試看 driver 有沒有問題,但是卻沒有辦法安裝成功。
(理由大概也知道了,應該是記憶體太多… = =) - 由於 FreeBSD 7 就可以支援 RTL8111C 了∼所以本來想說乾脆就用 nightly build 裡的 0.7 來裝吧∼但是沒想到,0.7 只有 i386 的 LiveCD,沒有 64 位元的…(版本為 0.7.3953)而且,Heresy 測試是根本開不起來。(理由後來有找到…不能用 USB 光碟機、不能開 AHCI)
- 後來本來想決定根據《客製化 FreeNAS 映像檔》一文,來自己用 FreeBSD 7 的 Kernel 製作一片 FreeNAS 光碟吧∼但是不管怎麼做,就是失敗…按照流程一步一步來,每次要 build FreeNAS 的 kernel 的時候,就會有錯誤…在搞了一天半後,決定徹底放棄這個方案…
(話說,SVN checkout 下來的 FreeNAS 真的是能直接用 FreeBSD build 出來的嗎? ><)
- 接下來,換個方向想,去找有沒有人做好的 amd64 0.7 LiveCD 呢?終於有在大陸網站找到可以抓了!但是結果是,不行用… orz(記得是網路卡還是抓不到…)
- 後來發現,原來這片光碟,只要用 USB 光碟機,都沒有辦法正常開機… orz
結果,只好弄個 IDE 光碟機,打開機殼接上去了。不過,後來又弄了老半天,才發現 SATA 的 AHCI 如果打開的話,也會導至使用上的問題… - 而最後,又發現由於 FreeNAS 的 i386 的版本,在記憶體大於 4GB 的時候(就算是 4GB 也一樣,Heresy 本來還以為 4GB 應該可以 orz),不是只有超過的記憶體不能用,而是根本會整個 crash 掉…
- 最後的最後,終於在內接光碟機+AHCI 關閉+2GB 記憶體的情形下,完成了 FreeNAS i386 0.7 的安裝了…而也終於能順利的抓到了那四張網路卡。
到此為止,Heresy 終於搞清楚,到底要怎麼在這樣的配備下,安裝 FreeNAS 了∼本來已為三十分鐘可以搞定的東西,結果用了將近整整兩天… orz
而之後,在裝好的 FreeNAS 上又想看看 Adaptec 那張 RAID 卡的狀況(還沒 Build 完),所以想說裝個 arcconf 來看吧∼結果又因為一堆東西都沒有,所以也跑不起來…搞了很久,最後決定作罷。
最後呢,Heresy 整理了幾點對於 FreeNAS 的感想,或許可以提供給想裝,或是安裝上也有問題的人做個參考:
- 像 Herewsy 這樣不熟悉 FreeBSD 的人,不要妄想自己 build FreeNAS 的光碟了…
- 有的版本的 FreeNAS 是不能用 USB 光碟機開(但是有的可以)
- 有的版本的 FreeNAS 可以支援 AHCI,但是有的不行。還是建議你關掉他吧…
- 有的版本的 FreeNAS 似乎不能用 USB 鍵盤
- i386 版不要裝 4GB 以上記憶體,就算 4GB 整也不行
- package 不要亂裝亂移,Heresy 為了讓 arcconf 能動,亂試 package 又移掉,結果因為把 pcre 移除了,導致 http 的 service 跑不起來
- HTTPS 下,用 IE7 看不到 Status – Graph 的圖似乎算是正常的,換套瀏覽器就好了
- 現在 nightly build 0.7 版的 ZFS 是好看的,不能用…要有 opensolaris 才行,但是又不知道怎麼裝 orz
- FreeNAS 備份出來的設定檔裡,使用者的密碼好像是明碼 orz
大概就這樣吧∼不過,Heresy 對於 FreeBSD 實在不熟,FreeNAS 也沒有玩很久,所以上述資訊或許是有問題的…如果有人知道到底是什麼回事,也麻煩告訴 Heresy 一下吧∼
你已經有8GB SSD,為何不直接安裝freebsd 7呢?
主要是看上 FreeNAS 的管理介面啦… ^^”