Skip to content

zpool.cache lost

Yet another incident with this E250. There must be something wrong with its SCSI controller, as it's throwing scsi errors every now and then. And sometimes it even corrupts the rootfs, which is still running on UFS. It's mirrored, yes - but when the controller decides to write crappy data, the filesystem gets corrupted anyway. So, I fsck'ed the filesystem and at one point it prompted me to:
DUP/BAD  I=26761  OWNER=root MODE=100644
SIZE=2764 MTIME=Feb  5 14:44 2009 
FILE=?/zpool.cache

REMOVE DIRECTORY ENTRY FROM I=25105? y
Well, what choice did I have? It's a "cache" file anyway, right? Oh boy was I suprised when I rebooted and all my ZFS pools were gone. Luckily zpool import is there to help:
   zpool import [-d dir] [-D]
         Lists pools available to import. If the -d option is not
         specified,   this   command   searches  for  devices  in
         "/dev/dsk".
With -a added, it imported all pools, mounted them and created this /etc/zfs/zpool.cache file again. Yeah, ZFS :)