2011年4月5日火曜日

obs600 で 再度 debian squeeze - その 1

まずはおかしくなった時の準備。tftp サーバを適当な debian マシンにインストールしておく
ファームウェアアップデートを実行したら起動しなくなりました。どうすれば復旧できますか。
からの引用

Q. ファームウェアアップデートを実行したら起動しなくなりました。どうすれば復旧できますか。
A. TFTP サーバを利用したファームウェアのアップデートを行うことで復旧できます。
  1. パッケージのインストール
  2. $ sudo apt-get install tftpd-hpa (ディレクトリはデフォルトの /srv/tftp)
    
    Starting HPA's tftpd: in.tftpdinvoke-rc.d: initscript tftpd-hpa,
    action "start" failed.
    dpkg: error processing tftpd-hpa (--configure):
     subprocess installed post-installation script returned error exit status 71
    configured to not write apport reports
                                          Errors were encountered while processing:
     tftpd-hpa
    E: Sub-process /usr/bin/dpkg returned an error code (1)
    IPv6 無効にしていると上記エラー。/var/log/daemon.log を眺めると
    Apr  5 21:06:29 devobs600 in.tftpd[16485]: cannot open IPv6 socket,
    disable IPv6: Address family not supported by protocol
    Apr  5 21:06:29 devobs600 in.tftpd[16485]: Cannot set nonblock flag on
    socket: Bad file descriptor
    なんて出力があるので /etc/default/tftpd-hpa を変更
    # diff -uw tftpd-hpa.dpkg-dist tftpd-hpa
    --- tftpd-hpa.dpkg-dist        2011-04-05 08:09:46.000000000 +0900
    +++ tftpd-hpa                  2011-04-05 08:09:56.000000000 +0900
    @@ -3,4 +3,4 @@
     TFTP_USERNAME="tftp"
     TFTP_DIRECTORY="/srv/tftp"
     TFTP_ADDRESS="0.0.0.0:69"
    -TFTP_OPTIONS="--secure"
    +TFTP_OPTIONS="--secure -4"
  3. ファームウェアをダウンロードしておき TFTP サーバ側で指定した場所におきます。
  4. TFTP サーバのディレクトリに置く
    $ su
    # wget -nd -N -P /srv/tftp \
    > http://ftp.plathome.co.jp/pub/OBS600/0.5-LATEST/powerpc-obs600/installation/uImage.initrd
  5. ETHER-0 と PC を添付のクロス・ケーブル (緑色) で接続します。
  6. アドレス追加。ハブやスイッチ介しても同じ L2 ドメインであればクロスケーブルじゃなくてもOK
    # ip addr ls eth0
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
    state UP qlen 1000
        link/ether 00:ed:cb:a9:87:65 brd ff:ff:ff:ff:ff:ff
        inet 10.1.2.3/16 brd 10.1.255.255 scope global eth0
    # ip addr add 192.168.253.1/24 dev eth0
    # ip addr ls eth0
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
    state UP qlen 1000
        link/ether 00:ed:cb:a9:87:65 brd ff:ff:ff:ff:ff:ff
        inet 10.1.2.3/16 brd 10.1.255.255 scope global eth0
        inet 192.168.253.1/24 scope global eth0
    
  7. 本体の ディップ・スイッチ 2 を ON にします。

  8. 電源を入れます。
  9. 待つことしばし

  10. ファームウェアのアップデートが完了しますと本体の緑色の LED が点滅します。

  11. 電源を抜き、ディップ・スイッチ 2 を OFF にします。

  12. 追記 - INIT ボタンを押しながら電源を入れる
  13. いや、CF 起動でおかしな状態にして数日放置。で tftp ブートでイメージ読み込んだ後、度々忘れるので...

0 件のコメント: