筆記:解放你的 LinkStation — FreeLink + Transmission

其實這是我一直以來夢寐以求的組合,可惜在改機初期爬的文不夠多,所以還是卡在 Transmission 的 dependancy 和 kernel 2.6 的問題上,直到上個月才解決。

原裝 Freelink 的 kernel 是 2.4 版本的,可是不少軟件的最新版本都要求 kernel 2.6,所以還是更新一下比較好。我的更新過程很混亂,更新後又不能以 kernel 2.6 開機,所以我就只貼出相關連結好了。

更新為 kernel 2.6 的相關連結:
http://hvkls.dyndns.org/downloads/documentation/README-webinstaller.html
http://fjufirefox.blogspot.com/2007/08/linkstation-hg-kernels-26.html

更新至 kernel 2.6 後,先利用 apt-get update 及 apt-get upgrade 更新系統,然後就可以安裝 Transmission。在 Freelink 的 wiki 有一篇很好的文章教了如何安裝 Transmission 及寫 autorun 的 script。

安裝 Transmission 的 wiki:
http://buffalo.nas-central.org/wiki/Transmission_BitTorrent_Client

在 script 中把

/sbin/start-stop-daemon –start –quiet –exec /usr/local/bin/transmission-daemon

置換成

/sbin/start-stop-daemon –start –quiet –exec /usr/local/bin/transmission-daemon -- -t -u <username> -v <password>

會比較安全,而當中的 username 及 password 就是進入 WebUI 時會用到的。

reboot 後用瀏覽器進入 http://ip-of-your-linkstation:9091/ 測試就可以了。在那裡雖然只有幾個基本設定,但其實都足夠了。

安裝設定就到此為止,但我總是遇上兩個問題:不知甚麼原因的 crash、重開後的設定和 quaue list 跟重開前不同。

不知甚麼原因的 crash 我猜想是負荷過重,因為多數在同時進行三個或以上的任務時出現,但只有一兩個任務時也偶有發生,所以不能下定論,查 log 也沒有甚麼發現。

另一個重開的問題,查 log (/var/log/daemon.log) 時發現在是出現在 config 的儲存位置問題。開機時會把 config 指向 //.config/transmission-daemon/,但 crash 後再以 root 身份啟動就會指向 /root/.config/transmission-daemon/。解決方法就是在 /.config/ 內建立一個 softlink 指往 /root/.config/transmission-daemon/

cd /.config
# 把舊的 config 改名
mv transmission-daemon transmission-daemon-bak
ln -s /root/.config/transmission-daemon/ transmission-daemon

參考網頁:
Linux Kernel 2.6 Installation on Buffalo Linkstation/KuroBox/HG/HS/Terastation
[LinkStation HG] 更新 kernels 至 2.6 版
Transmission BitTorrent Client
How to: Linux / UNIX create soft link with ln command

筆記:解放你的 LinkStation — FreeLink (3 END)

由於我的 Samba 3.x 的設定是使用 Unicode,而以往 Samba 2.x 時是使用 Shift-JIS,所以在 Samba 3.x 上是無法正確讀取檔名,此時需要使用 convmv 來將 Shift-JIS 的檔名轉成 Unicode。

先透過 apt 安裝 convmv

apt-get install convmv

然後執行一次看看有沒有問題

convmv -f shiftjis -t utf8 /mnt/share/*

這個指令只會模擬執行改名動作,如果發現有問題的話會作出警告並終止執行。

如果發現一些問題檔,但又無法修復,只好暫時先將 Samba 的 charset 設成 SJIS 再作處理。

最後執行以下指令作實際改名動作

convmv -f shiftjis -t utf8 –notest /mnt/share/*

如果要將 /mnt/share/ 下所有檔案(包括子資料夾內的)都一次過執行改名動作,可以加上 -r 選項。

筆記:解放你的 LinkStation — FreeLink (2)

在安裝過程中並非完全順利,以下是我遇到的問題和解決方法。

1. 執行 Renew Firmware 至最後出現更新失敗,但 LinkStation 沒有閃 DIAG 燈。

估計是 FreeLink 已經正確安裝好了,可是因為預設會透過 DHCP 取得 IP,而網絡中又沒有 DHCP server 所以就做成 Firmware updater 最後因找不到 LinkStation 而報告更新失敗。只要先離開 Firmware Updater,然後開啟路由器的 DHCP 服務及重開 LinkStation 即可。

2. 使用固定 IP 時,沒有正確修改好 interfaces 檔,導致重開後不能接上 LinkStation

這個的確是自己大意…解決方法有兩個:進入 EM Mode 重新安裝 FreeLink;拆 HDD 出來並用另一台 Linux 機器去修改錯誤的地方。由於攪不懂 EM Mode 到低是怎樣,所以我就使用了後者的方法。

3. 在 Linux 上不能 mount /dev/hdX1 (X 是 LinkStation 硬碟)

這是因為 Buffalo 改了一點東東,令其他 Linux 不能正常 mount LinkStation 的系統分割區。可以使用fix_ext2_magic 來修正這問題。不過苦要再次拿回 LinkStation 使用,必須將它還原。

參考資料:
http://www.geishuettner.de/docs/Linkstation/
http://www.geishuettner.de/docs/Linkstation/Hacking%20Linkstation%20II.pdf
fix_ext2_magic:http://downloads.nas-central.org/PlatformSupport/i386/
fix_ext2_magic_back:http://www.geishuettner.de/docs/Linkstation/files.zip

筆記:解放你的 LinkStation — FreeLink (1)

以下的改機行為將有機會令你的 LinkStation 失去保養或變磚、又或者會令資料受損,實行前請先三思能否承擔上述之風險。

LinkStation 是 Buffalo 的一個 NAS 系列,LinkStation 本身的 firmware 是個以 Linux 作基礎的系統,但卻只有 Samba 和 FTP 的功能,而部份較舊的 LinkStation 是不支援 Unicode 的。於是就有人發展出 OpenLink 和 FreeLink 這兩套改機軟件,以便各位自行升級系統。

(閱讀全文…)