2022年10月30日日曜日

ASRock C236M WS障害


マザーボードの(BIOS/UEFI)バッテリーが弱るとHDDアクセスが不安定になる場合があることを知りました。
電源入れっぱなしのPCでマザーボードのバッテリーが原因で障害になるとは思いませんした。

サーバ運用しているASRock C236M WSにリモートログインが出来なくなり無反応な状態に。
普段外しているディスプレイ、キーボードを接続するも無反応なので、強制電源断で再起動すると取り敢えずログインできるようになりました。

messagesログを見ると下記メッセージの記録後、同じメッセージが定期的に記録され
kernel: ata11.00: exception Emask 0x10 SAct 0xc0 SErr 0x4000000 action 0xe frozen
kernel: ata11.00: irq_stat 0x80000040, connection status changed
kernel: ata11: SError: { DevExch }
kernel: ata11.00: failed command: WRITE FPDMA QUEUED
kernel: ata11.00: cmd 61/08:30:68:d2:b4/00:00:06:00:00/40 tag 6 ncq 4096 out#012         res 50/00:00:00:00:00/00:00:00:00:00/a0 Emask 0x10 (ATA bus error)
kernel: ata11.00: status: { DRDY }
kernel: ata11.00: failed command: WRITE FPDMA QUEUED
kernel: ata11.00: cmd 61/08:38:80:2f:13/00:00:61:00:00/40 tag 7 ncq 4096 out#012         res 50/00:00:00:00:00/00:00:00:00:00/a0 Emask 0x10 (ATA bus error)
kernel: ata11.00: status: { DRDY }
kernel: ata11: hard resetting link
kernel: ata11: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
kernel: ata11.00: configured for UDMA/133
kernel: ata11: EH complete
1時間40分後に下記メッセージの記録を最後にストール状態になったようです。
kernel: ata11.00: exception Emask 0x10 SAct 0x0 SErr 0x4000000 action 0xe frozen
kernel: ata11.00: irq_stat 0x80000040, connection status changed
kernel: ata11: SError: { DevExch }
kernel: ata11.00: failed command: FLUSH CACHE EXT
kernel: ata11.00: cmd ea/00:00:00:00:00/00:00:00:00:00/a0 tag 5#012         res 50/00:00:00:00:00/00:00:00:00:00/a0 Emask 0x10 (ATA bus error)
kernel: ata11.00: status: { DRDY }
kernel: ata11: hard resetting link
kernel: ata11: SATA link up 6.0 Gbps (SStatus 133 SControl 320)
kernel: ata11.00: configured for UDMA/133
kernel: ata11.00: retrying FLUSH 0xea Emask 0x10
kernel: ata11.00: device reported invalid CHS sector 0
kernel: ata11: EH complete
エラーが出ていたata11(起動HDD)のSMART情報を確認するとエラー記録もなく、ディスクとしては問題なさそうな様子。

SATAケーブルがダメになったかな?などと考えながらその他ログなどを確認していると、I/Oエラーのメッセージが表示されシェルでコマンドを実行できなくなり、電源断再起動後にBIOS画面も出ない状態に。
なんどか試すもBIOS画面が表示されたり、されなかったりでOSブートまで辿り着かず。
これはマザーボードのバッテリー交換あるあるかなと思い、バッテリー交換するとGRUB画面まで進み一先ず復旧しました。

不安定な状態で確認作業等をしていたため、ファイルシステムの不整合も起きたようで、/sysrootがマウントできずに起動失敗するようになっていました。

ブート時にシェルモードになり、dmesgで下記メッセージが表示されたので、lvscanでrootボリュームを調べ、xfs_repairを実行したところ失敗。
起動ディスクだから失敗したのかなと、あまり考えずUSBブートイメージを作成してxfs_repairを実行し直しました。
最終的にxfs_repairの-Lオプションを付けて実行したので、USBブートする必要なかったかもしれません。
  :
systemd[1]: Mounting /sysroot...
kernel: SGI XFS with ACLs, security attributes, no debug enabled
kernel: XFS (dm-0): Mounting V5 Filesystem
kernel: XFS (dm-0): Corruption warning: Metadata has LSN (720:28720) ahead or current LSN (720:28592). Please unmount and run xfs_repair (>= v4.3) to resolve.
kernel: XFS (dm-0): log mount/recovery failed: error -22
kernel: XFS (dm-0): log mount failed
mount[526]: mount: wrong fs type, bad option, bad superblock on /dev/mapper/ct-root
mount[526]: missing codepage or helper program, or other error
mount[526]: In some cases useful info is found in syslog - try
mount[526]: dmesg | tail or so.
systemd[1]: sysroot.mount mount process exited, code=exited status=32
systemd[1]: Failed to mount /sysroot.
systemd[1]: Dependency faild for Initrd Root File System.
systemd[1]: Dependency failed for Reload Configuration from the Real Root.
  :
しばらく様子見が必要ですが、マザーボードのバッテリー交換だけで今のところ復旧した感じです。
まさか、起動時だけでなく起動している状態でもマザーボードのバッテリー状態が影響するとは思いませんでした。

ちなみに外したバッテリーの電圧は、無負荷状態では3Vありました。