LinkStation復旧

前日のエントリで書いた事を試すため、LS-XHLの/etc/network/interfacesをVPNっぽく編集して起動したところ、IP取れなくなって起動しなくなってしまいました、
当然sshも使えないのでHDD取り出して設定を書き直す羽目に、、

LS-XHLってシリアルコンソールが無いので(LS-GLは在ったから良いんですが)、ホント些細な事でケース割りしてHDDを救出する羽目になるんですよね。

僕が経験した例だと

  • 不具合のあるカーネルでブート、必ずパニックになる
    • 正常に動くカーネルに戻す必要がある、
    • まあこれはPCでも同じだけどKNOPPIXとかLiveCD使えるだけ楽ですよね
  • /etc/network/interfacesの設定ミスでIPが取れない
    • 以前はeth0(LS-XHLはeth1)で起動しようとして失敗、
    • 今回もコレ(brとかtapの設定をミスる)
  • ファームアップデート途中で電源が落ちて、kernelやinitrdは読めるけど、ルートパーティション(/)のマウントが必ず失敗する
    • 「initrdから/への移行の失敗」→「再起動」の無限ループ

とかがありました

しかもLS-XHLってLS-GLみたいな「ケース空けても壊す心配なし、安心して空けていいよっ」っていう設計ではなく、高確率でケース繋ぎ目のツメを破壊するような「ご自由にご開封下さい、ケース壊れるけどなw(まさに外道)」仕様なのが痛いです。もう何回も空けて壊れてるからどうでもいいけど。

今回は/etcディレクトリの編集だけで復旧できたんですが、このブログへ「LS-XHL」で検索してくる人が結構いるようなので、LS-XHLの大容量HDD交換/レンガ状態からの復旧手順って感じのネタでも書いてみようと思います。

LS-XHL復旧手順

※注意:ケースを開ける必要があります、たぶんツメが折れます

  1. IPアドレスを192.168.11.1の固定にして、TFTPD(tftpサーバ)をインストールしておく
    • LinkStationはLinuxが起動する前は192.168.11.150になるため、192.168.11.0/24のネットワークに居る状態にする
  2. LS-XHLのケースを空けて、入ってたHDDを取る
  3. インストールするHDD(買ってきた大容量のものでもOK)のパーティションテーブルを消去して、組み立てる、
    • 中途半端に/dev/sda1とか残ってた場合、無限ループに陥る可能性があるので消す
  4. インストールしたいファームウェアを解凍して、initrd.imgを(.zipにリネームするとかして)unzipで解凍する
    • パス付きですが、検索すればすぐ見つかります(つーかnas-centralに)
    • 解凍前のinitrd.imgも残しておいてください
  5. 解凍したinitrd.baffaloとuImage.baffaloをTFTPDで読める位置に置く
    • LS-XHLからは「get /uImage.buffalo」的なtftpアクセスが来ます
  6. LS-XHLをTFTPDのPCにアクセスできる位置に置いて起動する、起動しないので暫くしたらLS-XHLのfunctionボタンを押す、するとTFTPDからuImage.baffaloとinitrd.baffaloにアクセスして(EMモードという緊急モードに)ブートする。さらに暫くするとbaffaloのファームアップデータから見つかるようになるので、ファームウェアアップデートする。
    • もしバージョンが同じでアップデート出来ないって言われたらココを参考にバージョンチェックを無効にしてやってみてください
  7. アップデートが完了すると初期化状態になり復旧完了


今度からはPCで練習してからやろ