[lustre-discuss] Can't load module 'osd-zfs'

Christopher J. Morrone morrone2 at llnl.gov
Fri Jun 24 13:15:37 PDT 2016

Yes, it is all a lot harder than it should be at this point.  We're
slowly getting in packaging changes that should make it a little easier
in future releases.  But fear not, it is doable.

There are other ways, but here is how I would do it with 2.8:

Skip the installation of the lustre-patched kernel.  It is only actually
only required for ldiskfs testing these days.  (If all goes well, there
will be no lustre-patched included with the Lustre 2.9 release packages)
 Remove that and just use the stock CentOS 7 kernel.

Next install zfs (and its associate spl packages).  You can find
pre-build binary or DKMS packages here:


Or you can compile them yourself using the instructions here:


We are going to compile lustre next, so you will also need to install
the following zfs development packages:

  libzfs2-devel kmod-zfs-devel kmod-spl-devel.

Next download the lustre source rpm from here:


The package name is
"lustre-2.8.0-3.10.0_327.3.1.el7_lustre.x86_64.src.rpm", which makes it
seem like you have to have that specific kernel.  But don't worry, that
was just an artifact of the old, broken packaging system.  We are hoping
to fix that before the Lustre 2.9 is released.

Next you should be able to generate binary lustre rpms with this command:

  rpmbuild --rebuild --with zfs --without ldiskfs

I am just guessing that you don't need ldiskfs since you are talking
about zfs.  You can decide if you want to compile it or not.

If you hit any problems let us know.  Maybe we'll use this discussion to
work up a new page of documentation in the wiki.


On 06/24/2016 07:48 AM, Yu Chen wrote:
> Hello, 
> I am new to lustre system. Was trying to setup a lustre on Centos 7 with
> zfs. 
> When came to the step to start lustre.service from systemctl, got the
> errors:
> ....
> -------
> osd_zfs: disagrees about version of symbol dmu_objset_space
> osd_zfs: Unknown symbol dmu_objset_space (err -22)
> ------
> LustreError: 158-c: Can't load module 'osd-zfs'
> LustreError: 48041:0:(genops.c:318:class_newdev()) OBD: unknown type:
> osd-zfs
> .....
> Here is what I have done:
>   * I installed kernel-3.10.0-327.3.1.el7_lustre.x86_64, 
>   * Then configured and installed zfs from archive.zfsonlinux.org
>     <http://archive.zfsonlinux.org>(
>   * Then downloaded and installed lustre rpms from el7.2.1511 from:
>     https://downloads.hpdd.intel.com/public/lustre/latest-feature-release/
>   * Then *zpool*create mdt01-pool /dev/sdb
>   * mkfs.lustre --reformat --fsname=lustre01 --mgs --mdt
>     --backfstype=zfs --index=0 --mgsnode= at o2ib
>     --servicenode= at o2ib mdt01-pool/mgsmdt01
>   * echo "mds1 - lustre01-MDT0000 zfs:mdt01-pool/mgsmdt01" > /etc/ldev.conf
>   * echo "options lnet networks=o2ib(ib0)" > /etc/modprobe.d/lustre.conf
>   * systemctl start lustre.service
> This is where it failed.
> Then I think it might be because of the zfs version. So downloaded
> lustre-2.8.0-3.10.0_327.3.1.el7_lustre.x86_64.src.rpm, and tried to
> rebuild from it. But after rebuilding, there were no lustre-osd-zfs and
> lustre-osd-zfs-mount rpms? 
> Would greatly appreciate any suggestions!
> Thanks in advance!
> yc
> _______________________________________________
> lustre-discuss mailing list
> lustre-discuss at lists.lustre.org
> http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org

More information about the lustre-discuss mailing list