2013年4月11日木曜日

TS-TGLをKURO-BOX/T4化

職場で不要になったTS-TGLをもらったので遊んでみました。
現役のもあるのですが容量が少ないのとMacだとSambaの文字化けが不便なのでこのあたりが改善できればもっと使えそうです。

※KURO-BOX/T4化すると普通のLinuxボックスになるので、TS-TGLのブラウザの設定画面とかは無くなります。これが必要な方はやってはいけません。

1. ハードウェアの準備
TS-TGL本体(250GBx4のやつ)
USB-シリアル変換ケーブル(これっぽいやつ使ってます)
シリアルのクロスケーブル(9pin)
(手元に無かったので上のUSB-シリアルについてたケーブルの片方を切ってコネクタ付けて作りました)
TeraTermの設定は
ボー・レート57600
データ8ビット
パリティnone
ストップ1bit
フロー制御none

2. TS-TGLにrootアクセス
そのままのファームウェアではシステムを更新できないので、rootアクセスが出来るファームウェアに更新します。
ここにrootアクセスできるように変更されたファームウェアがあるのでそれを使いました。
TeraStation Pro (TS-TGL Models)の1.12をダウンロードして解凍します。

NASUpdater_Japanese.exeを実行して、ファームウェア更新ボタンを押すだけです。

3. TFTPサーバーの準備
次にTFTPサーバーをクライアント側で用意しておきます。
(tftpd64を使いました)

KURO-BOX/T4のファームウェアをHPから落としておきます。
ダウンロード2のbz2ファイルを落として、解凍します
解凍したフォルダから kuro_nas_t4.itb をtftpサーバーのフォルダにいれておきます。

一緒にダウンロード1からWindows用のファームウェア更新用のZIPファイルも落として解凍しておきます。

4. 現在のファームウェアのバックアップ
シリアルケーブルを繋いだだけではログインできないので、先にブラウザで
http://(TS-TGLのIPアドレス)/cgi-bin/task.cgi?task=console&param=on
を開く必要があります。

そうしておいてからTeraTermを開いてログインします
(SNOOPYがサーバーの名前です...)
BUFFALO INC. TeraStation series TS-TGL(IENARI)

SNOOPY login: myroot

root@SNOOPY:~# dd if=/dev/mtd0 of=mtd0.bin bs=1k
3072+0 records in
3072+0 records out
root@SNOOPY:~# dd if=/dev/mtd1 of=mtd1.bin bs=1k
448+0 records in
448+0 records out
root@SNOOPY:~# dd if=/dev/mtd2 of=mtd2.bin bs=1k
64+0 records in
64+0 records out
root@SNOOPY:~# dd if=/dev/mtd3 of=mtd3.bin bs=1k
512+0 records in
512+0 records out
root@SNOOPY:~# dd if=/dev/mtd4 of=mtd4.bin bs=1k
4096+0 records in
4096+0 records out
root@SNOOPY:~# tar zcvf ts-tgl.tgz mtd*
mtd0.bin
mtd1.bin
mtd2.bin
mtd3.bin
mtd4.bin
root@SNOOPY:~# mv ts-tgl.tgz /mnt/array1/share/ ← 共有フォルダにおいてクライアントPCから取れるようにしておきました
6.以降の手順後に再起動すると、もう共有フォルダへアクセス出来なくなる&HDDは初期化されるのでバックアップを忘れずに。

5. 更新するファームウェアの準備
TS-TGL側でもHPにある更新ファームを拾ってきます。
ダウンロード2にあるbz2ファイルを取ってきて、解凍しておきます。
root@SNOOPY:~# wget http://kuroutoshikou.com/products/kuro-box_t4/bootimg.tar.bz2
root@SNOOPY:~# bzip2 -dc bootimg.tar.bz2 | tar xvf -
boot/
boot/u-boot-kuro-nas-t4.bin
boot/kuro_nas_t4.itb
boot/uImage.buffalo

6. ファームウェアの更新
まずはブートローダーをu-bootに変更します。
sh-2.05a$ dd if=boot/u-boot-kuro-nas-t4.bin of=/dev/mtdblock1
480+1 records in
480+1 records out
問題なさそうなら再起動します。
sh-2.05a$ reboot
再起動したら、タイミングをみてsキーを押すとu-bootのプロンプトに入ります。
(押さなくても起動できるカーネル入ってないのでu-bootのメニューになりますが...)
U-Boot 2009.06-BUFFALO-svn1379 (Sep 25 2009 - 18:41:39) KURO-NAS/T4

CPU: MPC8245/8241 Revision 1.4 at 262.144 MHz: 16 kB I-Cache 16 kB D-Cache
DRAM: 128 MB
FLASH: 4 MB
*** Warning - bad CRC, using default environment

In: serial
Out: serial
Err: serial
Net: RTL8169#0
Boot in 05 seconds ('s' to stop)... ← ここでsを押す
BUFFALO>>
うまくいったらtftpブートさせて見ます。
BUFFALO>> setenv ipaddr 192.168.1.233 ← TS-TGLのIPアドレス
BUFFALO>> tftpboot ${ldaddr} 192.168.1.222:kuro_nas_t4.itb ← tftpサーバーのIPアドレス
Using RTL8169#0 device
TFTP from server 192.168.1.222; our IP address is 192.168.1.233
Filename 'kuro_nas_t4.itb'.
Load address: 0x500000
Loading: #################################################################
#################################################################
#################################################################
#################################################################
#################################################################
########################
done
Bytes transferred = 5111396 (4dfe64 hex)
BUFFALO>> bootm
起動したら、クライアント側でファームウェア更新プログラム(KURO-NAS-Installer.exe)を実行して、インストールボタンを押すとファームウェアがインストールされます。

無事に終わって再起動されたらTS-TGLがKURO-BOX/T4になってるはずです。
お疲れ様でした。

参考:LinkStation/TeraStation/玄箱/PPC/TS-TGL u-boot化

2 件のコメント:

  1. こんばんは、チェレンジしてみました。
    手順に従って進んでいったのですが6番のreboot後TS-TGLがnow bootingとなり進まなくなってしまいました。
    その場合復旧することは可能でしょうか?

    返信削除
  2. こんにちは、ようやくファームの更新まで進むことが出来たのですがファームウェア更新プログラム(KURO-NAS-Installer.exe)を実行すると進んでいくのですが最後にKURO-NAS-T4からの応答を確認できませんでした・・・・・アップデートを中止しますとなってしまいます。何とか対策はありませんか?

    返信削除