linux – 从zfs-0.6.2-1.el6.x86_64更新到zfs-0.6.3-1.el6.x86_64由zpool发出不可读

运行#yum update zfs并在 Linux系统上重新启动我的CentOS 6 ZFS后,再也无法查看或与zpools交互.
# zpool status
no pools available
# zpool import
zpool: ../../lib/libzfs/libzfs_import.c:356: Assertion `nvlist_lookup_uint64(zhp->zpool_config,ZPOOL_CONfig_POOL_GUID,&theguid) == 0' Failed.
Aborted
# dmesg | grep -i spl 
SPL: Loaded module v0.6.2-1 
SPL: using hostid 0x43a4c8a0

这是一个金丝雀系统,所以我并不担心它的内容,但我有其他机器,我最终想要安全升级.我做错了什么,更重要的是我如何才能为重要系统做到这一点?

解决方法

这看起来像……一个错误.实际上,it is a bug.ZFS用户空间已更新,但DKMS未更新内核模块.此断言是由版本不匹配引起的.

您可以通过删除旧内核模块然后重新安装所有内容,通过错误comment中给出的过程来解决它.

$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")

相关文章

在Linux上编写运行C语言程序,经常会遇到程序崩溃、卡死等异...
git使用小结很多人可能和我一样,起初对git是一无所知的。我...
1. 操作系统环境、安装包准备 宿主机:Max OSX 10.10.5 虚拟...
因为业务系统需求,需要对web服务作nginx代理,在不断的尝试...
Linux模块机制浅析 Linux允许用户通过插入模块,实现干预内核...
一、Hadoop HA的Web页面访问 Hadoop开启HA后,会同时存在两个...