Bei der freitagsrunde betreiben wir mittlerweile eine ansehnliche Zahl virtueller Maschinen auf xen-Basis. In den letzen Wochen hatten wir allerdings verstärkt mit korrupten Dateisystemen zu kämpfen.
Die Symptome: Aus heiterem Himmel ist das Dateisystem read-only und ein fsck findet eine Menge Fehler. Meist sind die Dateien kaputt, auf die zuletzt zugegriffen wurde. Es verschwindet aber durch den fsck durchaus auch mal der /sys Mountpoint. In lost+found taucht nicht auf, dafür in dmesg:
[ 40.460059] EXT4-fs error (device xvda2): ext4_mb_generate_buddy: EXT4-fs: group 36: 24445 blocks in bitmap, 24418 in gd [ 40.460085] Aborting journal on device xvda2-8. [ 40.460307] EXT4-fs error (device xvda2): ext4_journal_start_sb: Detected aborted journal [ 40.460322] EXT4-fs (xvda2): Remounting filesystem read-only [ 40.460765] EXT4-fs (xvda2): Remounting filesystem read-only [ 40.461477] EXT4-fs error (device xvda2) in ext4_reserve_inode_write: Journal has aborted [ 40.461491] EXT4-fs error (device xvda2) in ext4_reserve_inode_write: Journal has aborted [ 40.461501] EXT4-fs error (device xvda2) in ext4_ext_remove_space: Journal has aborted [ 40.461514] EXT4-fs error (device xvda2) in ext4_reserve_inode_write: Journal has aborted [ 40.461524] EXT4-fs error (device xvda2) in ext4_ext_truncate: Journal has aborted [ 40.461537] EXT4-fs error (device xvda2) in ext4_reserve_inode_write: Journal has aborted [ 40.461547] EXT4-fs error (device xvda2) in ext4_orphan_del: Journal has aborted [ 40.461558] EXT4-fs error (device xvda2) in ext4_reserve_inode_write: Journal has aborted
Wir dachten zunächt daran, auf ext3 umzusteigen, doch auch das führte zu ähnlichen Fehlern. (Neues FS angelegt, rsync der Dateien, fsck ohne Fehler in der dom0, in der domU wieder: crash)
Natürlich waren die mysql-Tabellen beschädigt. Der Versuch diese per myisamchk zu reparieren reproduzierte dann stets das obige Fehlerbild. In einem chroot auf der dom0 gemounted funktionierte alles, in der domU nicht. Jeder Zugriff auf die ‚beschädigte‘ myi-Datei innerhalb der domU lies das Dateisystem sofort in sich zusammenfallen.
Letztlich geholfen zu haben scheint ein Update des kernels auf 3.2.0-3-amd64 aus wheezy.