1

Just now I did an apt-get upgrade, which upgraded package spl to 0.6.4.1. After rebooting, my zfs-formatted disk failed to mount. How should I regain zfs functionality?

All zfs commands are now aborting with

Failed to load ZFS module stack.
Load the module manually by running 'insmod <location>/zfs.ko' as root.

When I follow that instruction, insmod /var/lib/dkms/zfs/0.6.3/3.13.0-49-generic/x86_64/module/zfs.ko fails as well:

error inserting '/var/lib/.../zfs.ko': -1 Unknown symbol in module

The OS, according to /etc/lsb-release and uname -a, is

12.04.5 LTS
Linux 3.13.0-49-generic #81~precise1-Ubuntu SMP Wed Mar 25 ... x86_64 x86_64 x86_64

Perhaps the upgraded spl package is incompatible with the other zfs packages, because dkms status reports 0.6.4.1 vs. 0.6.3:

fglrx, 13.350.1, 3.13.0-36-generic, x86_64: installed
fglrx, 13.350.1, 3.13.0-39-generic, x86_64: installed
fglrx, 13.350.1, 3.13.0-40-generic, x86_64: installed
fglrx, 13.350.1, 3.13.0-43-generic, x86_64: installed
fglrx, 13.350.1, 3.13.0-44-generic, x86_64: installed
fglrx, 13.350.1, 3.13.0-45-generic, x86_64: installed
fglrx, 13.350.1, 3.13.0-46-generic, x86_64: installed
fglrx, 13.350.1, 3.13.0-48-generic, x86_64: installed
fglrx, 13.350.1, 3.13.0-49-generic, x86_64: installed
spl, 0.6.4.1, 3.13.0-46-generic, x86_64: installed
spl, 0.6.4.1, 3.13.0-49-generic, x86_64: installed
zfs, 0.6.3, 3.13.0-36-generic, x86_64: installed
zfs, 0.6.3, 3.13.0-37-generic, x86_64: installed
zfs, 0.6.3, 3.13.0-39-generic, x86_64: installed
zfs, 0.6.3, 3.13.0-40-generic, x86_64: installed
zfs, 0.6.3, 3.13.0-43-generic, x86_64: installed
zfs, 0.6.3, 3.13.0-44-generic, x86_64: installed
zfs, 0.6.3, 3.13.0-45-generic, x86_64: installed
zfs, 0.6.3, 3.13.0-46-generic, x86_64: installed
zfs, 0.6.3, 3.13.0-48-generic, x86_64: installed
zfs, 0.6.3, 3.13.0-49-generic, x86_64: installed
zfs, 0.6.3, 3.8.0-36-generic, x86_64: installed
zfs, 0.6.3, 3.8.0-44-generic, x86_64: installed

But apt-cache policy spl reports that the only version of spl is 0.6.4.1-1~precise, so I can't un-upgrade spl even if I wanted to.

The other zfs packages installed are, from dpkg --get-selections:

libzfs1 ubuntu-zfs zfs-auto-snapshot zfs-dkms zfsutils

I'd prefer to stick to Ubuntu packages, instead of (say) manually installing spl-0.6.3 from http://zfsonlinux.org/ . That might break things even worse.

[Edit at gertvdijk's request:

# grep -rF zfs /etc/apt
/etc/apt/sources.list.d/zfs-native-stable-precise.list:deb http://ppa.launchpad.net/zfs-native/stable/ubuntu precise main
/etc/apt/sources.list.d/zfs-native-stable-precise.list:deb-src http://ppa.launchpad.net/zfs-native/stable/ubuntu precise main
/etc/apt/preferences.d/pin-zfs-native:Pin: release o=LP-PPA-zfs-native-daily
/etc/apt/preferences.d/pin-zfs-native:Pin: release o=LP-PPA-zfs-native-grub
/etc/apt/preferences.d/pin-zfs-native:Pin: release o=LP-PPA-zfs-native-stable

# apt-cache policy zfs-dkms spl-dkms
zfs-dkms:
  Installed: 0.6.3-2~precise
  Candidate: 0.6.4.1-1~precise
  Version table:
     0.6.4.1-1~precise 0
       1001 http://ppa.launchpad.net/zfs-native/stable/ubuntu/ precise/main amd64 Packages
 *** 0.6.3-2~precise 0
        100 /var/lib/dpkg/status
spl-dkms:
  Installed: 0.6.4.1-1~precise
  Candidate: 0.6.4.1-1~precise
  Version table:
 *** 0.6.4.1-1~precise 0
       1001 http://ppa.launchpad.net/zfs-native/stable/ubuntu/ precise/main amd64 Packages
        100 /var/lib/dpkg/status

]

How should I recover from this? Where should I investigate further?

6
  • 1
    The modules zfs and spl are indeed now incompatible. The ZFS module is also upgraded to 0.6.4.x in the PPA (see here). Perhaps you have to run sudo apt-get update; sudo apt-get dist-upgrade to get zfs upgraded too? Please include full output of the commands grep -rF zfs /etc/apt and apt-cache policy zfs-dkms spl-dkms. It could also be possible your zfs packages have been upgraded perfectly fine, but the DKMS build failed for some reason.
    – gertvdijk
    Apr 27, 2015 at 20:28
  • Also, the ZFS packages may not be compatible with the linux-image-generic-lts-trusty kernel you appear to be running (3.13 backported from Trusty to Precise) and fail on the DKMS build. It may help to change the ppa source to trusty for you, or to revert the kernel to a supported one for ZFS. Just guessing though.
    – gertvdijk
    Apr 27, 2015 at 20:34
  • 1. Full output added, in an edit. 2. Now that you mention it, depmod ran several times instead of just once. For a minute I feared that the apt-get upgrade was stuck in an infinite loop. 3. Given this new info, should I dist-upgrade? Or try to DKMS build manually, e.g. askubuntu.com/questions/53364/… ? Apr 27, 2015 at 20:48
  • 1
    Please try sudo apt-get install ubuntu-zfs zfs-dkms and provide full output. It should mention an error in the upgrade/postinstall configuration, because the new 0.6.4.1 version is perfectly a new installable candidate. I'm sure you've overlooked some pretty fatal error messages during your previous upgrade command. I think your apt output will mention a DKMS error log, please provide that output too (or on paste.ubuntu.com or something.) :)
    – gertvdijk
    Apr 27, 2015 at 21:02
  • Full output is in paste.ubuntu.com/10916676 . No DKMS error log was mentioned. Happily, zfs commands now work again! Unhappily, zfs mount -a appears to do nothing, and zfs list says no pools available. Apr 27, 2015 at 22:04

1 Answer 1

2

To make zfs compatible again with spl, as root:

apt-get install ubuntu-zfs zfs-dkms
zpool import -a
zfs mount -a

(This summarizes the comments with gertvdijk, who deserves the credit for this answer but may have lost interest as almost a week has passed.)

1
  • This fix worked again today, when a power outage forced a reboot, and zpool status again failed with Failed to load ZFS module stack. After the fix, both zfs-dkms and spl-dkms now have installed version 0.6.4.1-1~precise. Jun 23, 2015 at 20:02

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .