顯示具有 NAS 標籤的文章。 顯示所有文章
顯示具有 NAS 標籤的文章。 顯示所有文章

2012年2月26日 星期日

用BeagleBone Rev.A3 打造簡易行動NAS系統

承上篇開發環境 BeagleBone A8 實測Linaro-nano, 筆者便想這塊Beaglebone 可以做什麼實際用途呢?

去年,曾寫過試用FreeNas 8.01一文,若能將常用的功能(rsync, ssh, cifs) 放到Beaglebone,則它便可成為一台行動網路NAS。

但FreeNas 還沒有ARM的版本,所以筆者用Linaro-nano 為基礎,作了簡單實做。

開發時,遇到網路卡會不定時自動斷掉,十分惱人。原本以為是Linaro 所用的kernel 不穩定;
後來找了很久,最後發現BeagleBone - Rev. A3上已知硬體問題。

Etherent Drop/Reset switch(A3 and A4 Only]
On some A3 and A4 boards, the reset switch can develop a low impedance path to ground creating a voltage divider making the reset line go to 1.5V to 1.8V. To determine this you can measure the voltage on pin 10 of P9. This issue can cause intermittent resets of the SMSC PHY, causing the link to drop. To fix this, just remove the reset switch. No, it will not void the warranty on the board if you remove the reset switch. You can request an RMA for a new switch and one will be sent to you. You can also request an RMA, return the board, and we will repair the switch for you.

remove_reset_button

依照說明(不會因此破壞保固),用尖嘴鉗把Reset 按鈕暴力拔除;斷電後,重新啟動執行,測試超過24小時,目前都運作正常。


簡易NAS移植

在Linaro 中,以apt-get 安裝下列套件
  • CIFS - Samba
  • Rsync -
  • FTP  - sftp
  • SSH - openssl-server
另外,使用者介面部分,暫時先以編輯設定檔方式來修改啟動必要之功能。

目前在開發板中,以Web方式來實作必要的管理介面。
Web 由將下列主要由 node.js+ python batchjob 組成。

利用node.js來實做web 介來顯示系統狀態:

使用arm gcc-4.6.1, 編譯node.js 0.6.9,並安裝npm套件: express, commander, nconf

NAS Web Prototype – Status

nas-web

小結:

經由上述實做,筆者將beaglebone Rev.A3 打造成為一個小型NAS 系統,
可利用 rsync , ssh/sftp , cifs 來經由網路存取其SD卡或姆指碟,
而系統記憶使用量約在80MB左右,應可進一步瘦身;
最後可依筆者需求來開發對應Restful API來進行管理作業。

2011年7月24日 星期日

試用FreeNas 8.01 Beta4

近來想將重要資料做個備份,所以稍微研究一下NAS系統相關資料。

巿面上最常看到 Synology和Qnap兩家,而各其優勢如下:
Snology : DiskStation Manager (利用網頁技術開發出類視窗的使用者經驗)
Qnap: VioStor NVR (較強的BT功能,監控效能,安全監控中心)

而我的需求大致只有三個功能:
  •  CIFS (網路上的芳鄰)
  •  FTP (檔案傳輸)
  •  Rsync (同步備份)
且對於資料安全性而言:
  • 當壞掉一顆硬碟時,還可正常運作
當我發現FreeNas 8,可能滿足需求時,立刻試裝了FreeNas 8到虛擬機器上。意外發現缺少Rsync功能,最後找到在FreeNas 8.01 Beta 4才提供支援,馬上升級。

FreeNas8檔案系統,選用ZFS,以及設定mirror 兩個虛擬硬碟(分別放在兩台實體硬碟上)。
實測上,寫入速度的快慢,因以同步方式寫入兩個硬碟,故會受到實體硬碟本身速度的限制。

結論:
個人使用的NAS,就筆者而言,功能不需要太多,只要滿足需求即可。
以下是我的配置:
VMware Esxi 4.1 + FreeNas 8.01Beta4 (ZFS, Rsync, FTP, CIFS, SSH)

更新08-01: 使用VMWare Player  來進行同配置的FreeNas 也運作順暢。
(Player 使用版本為3.1.4-385536)

更新09-16: FreeNas 8.01 RC1 發佈,請由此下載。主要更新:
  • Netatalk 2.2功能提供給OSX Lion Time machine 備份機制
  • ZFS 功能更新,提供給進階使用者所使用
  • 系統提供停用產生SWAP分割區對每一磁碟裝置
  • UFS提供掛載固定磁碟裝置至任意目錄
更新10-01: FreeNas 8.01 RC2 發佈,請由此下載。主要更新:
- django 更新到1.3.1版本修正安全漏洞. - istgt 更新至 20110928 - 更新FreeBSD 8.2-p3相關修補檔 http://security.freebsd.org/advisories/FreeBSD-SA-11:05.unix.asc http://security.freebsd.org/advisories/FreeBSD-SA-11:04.compress.asc




更新10-04: 類似ZFS的Linux檔案系統 btrfs for Linux

更新10-14: FreeNas 8.01 已正式發佈

更新 2012-05-26:
  重要更新8.04 p1: 如有使用CIFS (SAMBA 的安全性漏洞) 請儘速更新
  原版本更新資訊: http://www.freenas.org/about/news/item/release-notes-for-freenas-804-release-p1

更新 2012-12-25:
 有另一個分支使用 FreeBSD 9.x based:  nas4free.org key_features

延伸閱讀: