而前陣子也買了臺二手的 XBOX 取代出了問題的 DVD Player,作為家用的多媒體中心,呼,真的,執行 XBMC 環境,透過 smb 無線網路連結到這臺 TS-209 Pro 的檔案中心,觀看 rmvb, divx(avi) 等影片格式,真是不亦樂乎。

我並不喜歡讓我自己工作用的電腦整天開著去下載有的沒的,尤其是所謂的 "養驢子機"。倒是 TS-209 Pro 這臺讓我倒興起了有時可以兼著 "養驢子" 也不錯。但是 TS-209 系列的韌體並沒有提供這,它倒是提供了 FTP, BT 等下載模式,但是就是沒有提供養驢子的 AP。
我在想,不就是內嵌的 Linux 系統麼,應該是可以自行來安裝吧? 不過主要的問題是,一我不太熟 Linux,二更為麻煩的是,TS-209 系列是採用 ARM 的處理器,所以自行下載的應用程式,要嘛就是已經 compile 好的,要嘛就是自己要重新編譯。後者我當然不會,在 INTEL-based 下還勉強可以,但在 ARM-based 我可就完成沒輒了。
嘿,沒想到透過 Google 爬文後,還真讓我找到,國外早已有玩家編譯 (ARM-based)好養驢子的應用程式,要能在 Linux 系統下跑,當然就是這套 MLdonkey 莫屬了!
在 TS-209 系列上跑 MLdonkey,只要依循這篇討論串安裝:[Howto] MLdonkey on TS-109/209 安裝設定即可。我從下載 MLdonkey binary 檔案、解壓縮與安裝設定,不到一個小時就完成了,相當順利!
該討論串寫得最完整的安裝設定指引就是在第三頁約中間左右(hkimmel post...),老實地照其步驟安裝指引,應該是不致於出錯的。我這裡同時註記一下設定的過程中我自己的設定,當然,可要先利用 SSH Client(如 pietty) 連線到 TS-209 伺服器上才能作底下的設定。
- step 1~3 就是下載, copy, 解壓縮 等動作,這也同時就算是完成安裝 MLdonkey 了。
- step 4 我是依比較後面的討論串,將啟動執行(launch)存成一個 script 檔,檔名為 mldonkey-start.sh (記得要將該檔案權限設為 755),放於 /share/MD0_DATA/mldonkey 目錄下。
爾後要啟動 MLdonkey 時,只要執行下列指令即可:
#!/bin/sh
#
#*******************************************************************************
#
# Script for launching mlnet in QNAP's TS-209
#
#*******************************************************************************
# We create the symbolic link on /root/ folder so that mlnet can save user data
echo Creating symbolic link
if [ ! -d /root/.mldonkey ]; then
ln -s /share/MD0_DATA/mldonkey /root/.mldonkey
fi
# We launch the core
/share/MD0_DATA/mldonkey/mlnet &
# We remove our script from the crontab
# crontab -l | sed '/mldonkey-start.sh/d' | crontab -
# All done, exit ok
exit 0
# sh mldonkey-srart.sh - 第一次執行時,要先給它終止掉,如此才會產生預設的設定檔(*.ini)。有兩種方法可以終止 MLdonkey 程序:
- # telnet 127.0.0.1 4000 ;連線至 MLdonkey command-line 模式,再執行 stop 程序(不過我不會這一方式,要詳細看 MLdonkey 的說明文件才知道如何作)。
- 暴力一點,直接在 linux 命令列模式下,執行: # killall mlnet,這樣就會把 MLdonkey 的所有執行程序給刪除掉的!
- # telnet 127.0.0.1 4000 ;連線至 MLdonkey command-line 模式,再執行 stop 程序(不過我不會這一方式,要詳細看 MLdonkey 的說明文件才知道如何作)。
- 程式停掉後,在 MLdonkey 原目錄內,就會產出多個 .ini 檔案,其中最需要修改的就是 downloads.ini 了。利用 vi 編輯該檔案,然後依其討論串的 step 7~9,修改 allowed_ips (允許可以連結 MLdonkey 的 Clinet 所在 IP位址,建議區域網路內的 IP 打開即可), shared_directories (爾後所下載回來檔案的位置)等。
- 再重新啟動,如此一個 MLdonkey 的 Daemon 就可以正常 stand-by 了。
- 再來就是下載 sancho,它是一個可以遠端連結 MLdonkey 的 GUI 工具。我下載了 win32 的版本,結果卻沒有辦法執行,後來轉而下載 jvm 版本,倒就是可以正常執行了。設定採用預設即可 (username:admin, passwod:空白, port:4001),IP 就是 TS-209 所在的 IP 位址了。
- 在 sancho 的 [Console] 標籤最底下的命令列,執行:
server http://www.xxx.xxx/server.met (其中 xxx 煩請自行尋找常用的伺服器位置)。

我們知道要讓驢子跑得快,需要開 port。在 sancho 上的 [preferences]->[Networks]->[Donkey] 有個設定欄:ED2K-port ,填入自行設定的 port number, 如 4662。當然,NAS 或是 Firewall 對外的 port mapping 要打開才可。不過,有個問題是,我不知道這樣設定是否就足夠了? 在 TS-209 的內嵌 Linux 系統內是否也要把該 port 給打開呢? 該如何打開,就我就不會了。
其實整個花最多的時間,反而是在 MLdonkey 的設定上,而不是如何能在 TS-209 上跑,那已經不是問題了(前提是要先下載回來已編譯好, arm-based 的 MLdonkey)。
當然,讓 TS-209 NAS 可以又多一項功能也是好的,不過,養驢子等還是切莫玩物喪志,適可而止就好。 ;) 還有,若有此類的問題,請至該 QNAP 討論區提問,那邊的能人高手很多,相信能得到滿意的回覆。