After upgrading my ubuntu 13.10
server using sudo apt-get upgrade
and rebooting, my zpool wouldn't show.
messier@ANDERSON:~$ sudo zpool status
no pools available
messier@ANDERSON:~$ sudo zpool import
zpool: ../../lib/libzfs/libzfs_import.c:356: Assertion `nvlist_lookup_uint64(zhp->zpool_config, ZPOOL_CONFIG_POOL_GUID, &theguid) == 0' failed.
messier@ANDERSON:~$
I looked on the zfs on linux github and I found a fix for CentOS which is to remove the old kernel modules and then reinstall the software to get the new kernel modules.
$ find /lib/modules/$(uname -r)/extra -name "splat.ko" -or -name "zcommon.ko" -or -name "zpios.ko" -or -name "spl.ko" -or -name "zavl.ko" -or -name "zfs.ko" -or -name "znvpair.ko" -or -name "zunicode.ko" | xargs rm -f
$ find /lib/modules/$(uname -r)/weak-updates -name "splat.ko" -or -name "zcommon.ko" -or -name "zpios.ko" -or -name "spl.ko" -or -name "zavl.ko" -or -name "zfs.ko" -or -name "znvpair.ko" -or -name "zunicode.ko" | xargs rm -f
$ yum reinstall zfs-release
$ yum reinstall $(rpm -qa | egrep "zfs|spl")
People are saying this is fixing it. I just don't know how to make this fix run on my ubuntu server. Thank you for the help!
Last edit : If you come onto this page for the zfs update bug. The easiest solution is like Scott Simon said.
# apt-get update
# apt-get dist-upgrade
# reboot