立ち上がらなくなった 旧型 LS-GL

LS-GL

最近、どーも負け続けている。
こんな事ばっかりに時間をとられて、本業(?)のハックが進まない(藁)

立ち上がらない

先日、1日かけて育て上げた旧型 LS-GL が起動しなくなった。
元気に動いていたのに、、、

電源を入れると、ピーポ、ピーポ鳴って LED は E06 を示している。

Orion1   CPU =  Low

=== BUFFALO LS-GL U-Boot. ===
 ** LOADER **
 ** BUFFALO BOARD: BUFFALO_BOARD_LS_GL LE (CFG_ENV_ADDR=fffff000)


U-Boot 1.1.1 (Apr 18 2007 - 18:35:44) Marvell version: 1.12.1 - TINY

DRAM CS[0] base 0x00000000   size 128MB
DRAM Total size 128MB
[256kB@fffc0000] [0kB@f8000000] ## Unknown FLASH at f8000000: Size = 0x00000000 = 0 MB
Flash: 256 kB
Addresses 20M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (20M - 16M): Done

Soc: 88F5182 A2
CPU: ARM926 (Rev 0) running @ 400Mhz
Orion 1 streaming disabled
SysClock = 200Mhz , TClock = 166Mhz


USB 0: host mode
USB 1: host mode
PCI 0: PCI Express Root Complex Interface
PCI 1: Conventional PCI, speed = 33000000
Net:   egiga0 [PRIME]
Using 88E1111 phy

Marvell Serial ATA Adapter
Integrated Sata device found
  Device 1: OK
Model: ST3320620AS                            Firm: 3.AAD    Ser#:             9QF0NVQ5
          Type: Hard Disk
            Supports 48-bit addressing
            Capacity: 305245.3 MB = 298.0 GB (625142448 x 512)

Using device ide0, partition 1
** Bad partition 1 **
Using device ide1, partition 1

Loading from block device ide device 1, partition 1: Name: hdb1
  Type: U-Boot  File:/initrd.buffalo

64 bytes read
Lost all init_rd
hit any key to switch tftp boot.
Hit any key to stop autoboot:  0
/boot が読めていないようだ。

また HDD がつぶれた?

中身の確認

旧型 LS-GL から HDD を取り出し、 LS-HGL に USB で接続して中身を確認する。
hackkit:~# tail -f /var/log/messages
	:
	:
Jan 27 19:14:13 hackkit kernel: usb 1-1: new high speed USB device using ehci_platform and address 2
Jan 27 19:14:13 hackkit kernel: usb 1-1: configuration #1 chosen from 1 choice
Jan 27 19:14:13 hackkit kernel: scsi2 : SCSI emulation for USB Mass Storage devices
Jan 27 19:14:18 hackkit kernel:  Vendor: ST332062  Model:         9QF0NVQ5  Rev: D
Jan 27 19:14:18 hackkit kernel:  Type:   Direct-Access                      ANSI SCSI revision: 02
Jan 27 19:14:18 hackkit kernel: SCSI device sdb: 625142448 512-byte hdwr sectors (320073 MB)
Jan 27 19:14:18 hackkit kernel: sdb: Write Protect is off
Jan 27 19:14:18 hackkit kernel: SCSI device sdb: 625142448 512-byte hdwr sectors (320073 MB)
Jan 27 19:14:18 hackkit kernel: sdb: Write Protect is off
Jan 27 19:14:18 hackkit kernel: sdb: sdb1 sdb2 sdb3 sdb4
Jan 27 19:14:18 hackkit kernel: sd 2:0:0:0: Attached scsi disk sdb
Jan 27 19:14:18 hackkit kernel: sd 2:0:0:0: Attached scsi generic sg1 type 0
	:
パーティションはちゃんとあるようだ。
マウントしてみる
hackkit:~# mkdir /tmp/boot
hackkit:~# mount /dev/sdb1 !$
mount /dev/sdb1 /tmp/boot
hackkit:~# ls !$
ls /tmp/boot
initrd.buffalo  lost+found  uImage.buffalo
hackkit:~#
特に問題ないように見える。なんで?

切り分け

HDD が悪いのか、
旧型 LS-GL 本体側が悪いのか、
の切り分けを行う。

起動しない HDD を新型 LS-GL にセットして起動

動いた。
悪いのは旧型 LS-GL 本体側か。

起動する HDD を旧型 LS-GL にセットして起動

動かないと思っていたら、、、、動いた。

予想外、わけわからん。

引っ越し

以前 LS-GL で使っていた WD1600JS は認識してブートするようなので、 LS-HGL を使って引っ越しする。

/, /boot の吸出し

LS-GL が認識しない ST3320620AS を LS-HGL に USB で接続、 /, /boot を LS-HGL の /mnt/LS-GL にコピーする
hackkit:~# mkdir /mnt/LS-GL
hackkit:~# mkdir /tmp/root
hackkit:~# mount /dev/sdb2  /tmp/root
hackkit:~# (cd /tmp/root; tar cf - .)|(cd /mnt/LS-GL/; tar xvf -)
	:
	:
hackkit:~# umount /tmp/root
hackkit:~# 
hackkit:~# mkdir /tmp/boot
hackkit:~# mount /dev/sdb1 /tmp/boot
hackkit:~# ls /tmp/boot/
initrd.buffalo  lost+found  uImage.buffalo
hackkit:~# (cd /tmp; tar cf - boot )|(cd /mnt/LS-GL/; tar xvf -)
boot/
boot/lost+found/
boot/initrd.buffalo
boot/uImage.buffalo
hackkit:~# umount /tmp/boot/
hackkit:~#
USB を抜く

WD1600JS のフォーマット

本当は温存しておきたかったのだが、どうせつぶれたし、 LS-HGL に USB で接続してフォーマットする。
hackkit:~# fdisk -l /dev/sdb

Disk /dev/sdb: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x3301f1b5

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1          25      200781   83  Linux
/dev/sdb2              26         281     2056320   83  Linux
/dev/sdb3             282         313      257040   82  Linux swap / Solaris
/dev/sdb4             314       19457   153774180   83  Linux
hackkit:~# mkfs.ext3 -j /dev/sdb1
mke2fs 1.41.3 (12-Oct-2008)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
50200 inodes, 200780 blocks
10039 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67371008
25 block groups
8192 blocks per group, 8192 fragments per group
2008 inodes per group
Superblock backups stored on blocks:
        8193, 24577, 40961, 57345, 73729

Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
hackkit:~# mkfs.xfs -f /dev/sdb2
meta-data=/dev/sdb2              isize=256    agcount=4, agsize=128520 blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=514080, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=0
realtime =none                   extsz=4096   blocks=0, rtextents=0
hackkit:~# mkswap /dev/sdb3
Setting up swapspace version 1, size = 263204 kB
no label, UUID=a5e64da7-6c21-42ea-b77f-970533089846
hackkit:~# mkfs.xfs -f /dev/sdb4
meta-data=/dev/sdb4              isize=256    agcount=4, agsize=9610887 blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=38443545, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096
log      =internal log           bsize=4096   blocks=18771, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=0
realtime =none                   extsz=4096   blocks=0, rtextents=0
hackkit:~#

/, /boot のリストア

hackkit:~# mount /dev/sdb2 /tmp/root
hackkit:~# mkdir /tmp/root/boot
hackkit:~# mount /dev/sdb1 /tmp/root/boot
hackkit:~# (cd /mnt/LS-GL/; tar cf - .)|(cd /tmp/root/; tar xvf -)
	:
	:
hackkit:~# umount /tmp/root/boot
hackkit:~# umount /tmp/root
hackkit:~#
まだ /mnt はコピーできていないけれど、これでブートするはず。

WD1600JS でブート

旧形 LS-GL に WD1600JS を戻して、ブート。

ぴぃーぽぉ~ぴぃーぽぉ~ぴぃーぽぉ~ぴぃーぽぉ~

なんで????いよいよわけわからん

新型 LS-GL の標準ファームでコピー

同じことを新型 LS-GL の標準ファームでやってみた。
root@LS-GL530:~# mkdir /mnt/disk1/LS-GL/
root@LS-GL530:~# mkdir /tmp/root
root@LS-GL530:~# mount /dev/sdb2 !$
mount /dev/sdb2 /tmp/root
mount: wrong fs type, bad option, bad superblock on /dev/sdb2,
       or too many mounted file systems
root@LS-GL530:~#
またつぶれた。

LS-HGL が悪いのか、USB 変換器が悪いのか

結局、フォーマットしてバックアップから復旧した。
あ~ぁ。無駄な時間。

原因不明なので、いつ再発するか分からないのも不安。



LS-GL
バッファローダイレクト
楽天市場
Amazon
Yahoo!ショッピング
ソフマップ
livedoor デパート
ドスパラ


LS-XHLシリーズ ファームウェア アップデータ Ver.1.03
ハックの記録
LinkStation/玄箱 をハックしよう

ネットワーク対応HDDの最大約40%値下げ

Copyright (C) 2003-2009 Yasunari Yamashita. All Rights Reserved.
yasunari @ yamasita.jp 山下康成@京都府向日市