「1/9 以降、Windows VISTA 搭載 レッツノートのハードディスクが突然死する可能性がある」問題を解決するための BIOS が公開された。
レッツノート (1/21):
本BIOSの導入によって現象を回避することが可能ですが、 詳細が判明次第、弊社Webサイトにてご報告いたしますので、 引き続き弊社Webサイトからお知らせを覧いただきますようお願いします。
ただし、本現象がすでに発生している場合は、 対策のBIOSアップデートプログラムを導入できません。
大変お手数ですが、下記の修理相談窓口に修理のご相談をお願いします。
Lenovo ThinkPad (1/15):
注意:Windows Vistaを使用しているシステムで、 電源投入時に"2100: Initialization error on HDD0 (Main hard disk drive)"と 表示され、 HDDから起動できなくなることがある問題を修正しました。
レッツノートの BIOS アップデートは Windows 上から実行する必要があるので、 「本現象がすでに発生している場合は」、 まず「Windows VISTA 用の更新プログラム KB943899 が原因で突然死したハードディスクを復旧させる方法」などを用いてハードディスクをスピン・アップさせ、 Windows を正常起動させておく必要がある。 「修理相談窓口に修理のご相談を」するのは「大変お手数」なので、 ハードディスク以外の方法 (USB メモリからの起動など) で 起動する手段を提供すべきだと思うのだが...
さっそくレッツノートで BIOS アップデートを行なってみた。
試しに、 ハードディスクを故意に Power-Up In Standby 状態にしてみる。 すなわち、 「Windows VISTA 用の更新プログラム KB943899 が原因で突然死したハードディスクを復旧させる方法」 の 「お手軽パック」などを使って Linux を起動し、 hdparm コマンドを使って Power-Up In Standby 状態にしてみる:
# mount -t vfat /dev/sdb1 /mnt # /mnt/hdparm -s1 /dev/sda /dev/sda: Use of -s1 is VERY DANGEROUS. This requires BIOS and kernel support to recognize/boot the drive. Please supply the --yes-i-know-what-i-am-doing flag if you really want this Program aborted #
おお、fool proof 機能付とは、なかなか親切なコマンドだ。 とても危険なので、 「何をしようとしているか分かっている」場合のみ、 「--yes-i-know-what-i-am-doing」オプションを付けて再実行する:
# /mnt/hdparm -s1 --yes-i-know-what-i-am-doing /dev/sda /dev/sda: setting power-up in standby to 1 (on) # /mnt/hdparm -I /dev/sda | grep Power-Up * Power-Up In Standby feature set #
これで、ハードディスクが Power-Up In Standby 状態になった。 つまり電源投入時にスタンバイ・モードに入り、 明示的に spin up 命令を送らない限りは回転を始めない。 だから、 レッツノートの以前の BIOS ではハードディスクを認識できず起動に失敗していた。
Ctrl-Alt-Del を押して再起動すると、 ハードディスクから正常にブートした。 再び「お手軽パック」を使って Linux を起動し、 ハードディスクの状態を確認してみる:
# /mnt/hdparm -I /dev/sda | grep Power-Up Power-Up In Standby feature set #
Power-Up In Standby 機能が無効になっていた。 新しい BIOS は、 ハードディスクに spin up 命令を送るだけでなく、 Power-Up In Standby 機能を無効にする命令も送っているようだ。
KB943899 によるHDD突然死続報
仙石浩明さんの日記にて続報があります。レッツノートにおいては、BIOSアップデートによる回避方法です。レッツノートが主ですが、ThinkPadにおの..
Comment by PCとほほ日記 — 2008年1月22日 @ 13:35