Ubuntu 14.04到16.04升级打破了我的ZFS

我刚刚将Ubuntu从14.04升级到16.04,这似乎打破了ZFS。 我按照这里的指示清除了所有旧的ZFS包。 然后我从默认的16.04 PPA安装了zfsutils-linux,但每当我运行任何ZFS命令时,我都会收到以下错误:

:~$ sudo zfs get all The ZFS modules are not loaded. Try running '/sbin/modprobe zfs' as root to load them. 

我尝试使用modprobe作为错误消息建议:

 :~$ sudo /sbin/modprobe zfs modprobe: ERROR: could not insert 'zfs': Invalid argument 

似乎没有安装ZFS,但apt-get显示它是:

 :~$ sudo apt-get install zfsutils-linux Reading package lists... Done Building dependency tree Reading state information... Done zfsutils-linux is already the newest version (0.6.5.6-0ubuntu16). 0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded. N: Ignoring file '50unattended-upgrades.ucf-dist' in directory '/etc/apt/apt.conf.d/' as it has an invalid filename extension 

我还亲自去了我的机器,而不是使用SSH来观看启动,并在启动时看到了一些ZFS项目失败,其中一个我认为有关于依赖关系的东西,但是我读得太快了。 我试图通过查看启动日志来查看他们所说的内容,但我一直无法找到与启动期间显示的输出相匹配的启动日志文件。 我在哪里可以看到启动时实际失败的是什么?

更有趣的发现是,如果我只使用zfs命令,我会得到’missing command’输出,但是当添加任何命令时,我从上面得到相同的错误消息。

 :~$ zfs missing command usage: zfs command args ... where 'command' is one of the following: create [-p] [-o property=value] ...  create [-ps] [-b blocksize] [-o property=value] ... -V   destroy [-fnpRrv]  destroy [-dnpRrv] @[%][,...] destroy # snapshot|snap [-r] [-o property=value] ... @ .. . rollback [-rRf]  clone [-p] [-o property=value] ...   promote  rename [-f]   rename [-f] -p   rename -r   bookmark   list [-Hp] [-r|-d max] [-o property[,...]] [-s property]... [-S property]... [-t type[,...]] [filesystem|volume|snapshot] ... set   ... get [-rHp] [-d max] [-o "all" | field[,...]] [-t type[,...]] [-s source[,...]]  [filesystem|volume|snapshot] ... inherit [-rS]   ... upgrade [-v] upgrade [-r] [-V version]  userspace [-Hinp] [-o field[,...]] [-s field] ... [-S field] ... [-t type[,...]]  groupspace [-Hinp] [-o field[,...]] [-s field] ... [-S field] ... [-t type[,...]]  mount mount [-vO] [-o opts]  unmount [-f]  share  unshare  send [-DnPpRvLe] [-[iI] snapshot]  send [-Le] [-i snapshot|bookmark]  receive [-vnFu]  receive [-vnFu] [-d | -e]  allow  allow [-ldug] [,...] [,...]  allow [-ld] -e [,...]  allow -c [,...]  allow -s @setname [,...]  unallow [-rldug] [,...] [[,...]]  unallow [-rld] -e [[,...]]  unallow [-r] -c [[,...]]  unallow [-r] -s @setname [[,...]]  hold [-r]   ... holds [-r]  ... release [-r]   ... diff [-FHt]  [snapshot|filesystem] Each dataset is of the form: pool/[dataset/]*dataset[@name] For the property list, run: zfs set|get For the delegated permission list, run: zfs allow|unallow 

我还可以做些什么来解决这个ZFS安装问题?

有一个类似的问题从12.04升级到16.04。 最后让它工作,但不记得我做了什么(第2步不明显)。

  1. 删除旧的zfs包,包括PPA,请参阅使用ubuntu-zfs从ubuntu服务器14.04 LTS升级到16.04 LTS
  2. 删除: spl-dkms和(我认为) spl
  3. 重新安装zfs

以下系列的root命令为我解决了这个问题。

 apt clean apt update apt purge zfs* apt remove spl dkms spl-dkms apt autoremove add-apt-repository --remove ppa:zfs-native/stable apt install zfsutils-linux apt install spl-dkms reboot -n