Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.8.0 Does not install on RHEL 8 (depmod change) #8724

Closed
jadams opened this issue May 7, 2019 · 8 comments · Fixed by #9310
Closed

0.8.0 Does not install on RHEL 8 (depmod change) #8724

jadams opened this issue May 7, 2019 · 8 comments · Fixed by #9310
Labels
Type: Building Indicates an issue related to building binaries

Comments

@jadams
Copy link

jadams commented May 7, 2019

System information

Type Version/Name
Distribution Name Red Hat Enterprise Linux
Distribution Version 8.0.0
Linux Kernel 4.18.0-80.el8
Architecture x86_64
ZFS Version 0.8.0-rc4
SPL Version 0.8.0-rc4

Describe the problem you're observing

depmod in RHEL8 has moved from /sbin/depmod to /usr/sbin/depmod

Fixed by changing /sbin/depmod to /usr/sbin/depmod in zfs/scripts/kmodtool

Describe how to reproduce the problem

Follow Custom Package instructions, fails at rpm install nothing provides /sbin/depmod needed by zfs

Include any warning/errors/backtraces from the system logs

Error:
 Problem 1: conflicting requests
  - nothing provides /sbin/depmod needed by kmod-zfs-4.18.0-80.el8.x86_64-0.8.0-rc4.el8.x86_64
 Problem 2: package zfs-0.8.0-rc4.el8.x86_64 requires zfs-kmod = 0.8.0, but none of the providers can be installed
  - conflicting requests
  - nothing provides /sbin/depmod needed by kmod-zfs-4.18.0-80.el8.x86_64-0.8.0-rc4.el8.x86_64
 Problem 3: package zfs-dracut-0.8.0-rc4.el8.x86_64 requires zfs(x86-64) = 0.8.0-rc4.el8, but none of the providers can be installed
  - package zfs-0.8.0-rc4.el8.x86_64 requires zfs-kmod = 0.8.0, but none of the providers can be installed
  - conflicting requests
  - nothing provides /sbin/depmod needed by kmod-zfs-4.18.0-80.el8.x86_64-0.8.0-rc4.el8.x86_64
 Problem 4: package zfs-test-0.8.0-rc4.el8.x86_64 requires zfs(x86-64) = 0.8.0-rc4.el8, but none of the providers can be installed
  - package zfs-0.8.0-rc4.el8.x86_64 requires zfs-kmod = 0.8.0, but none of the providers can be installed
  - conflicting requests
  - nothing provides /sbin/depmod needed by kmod-zfs-4.18.0-80.el8.x86_64-0.8.0-rc4.el8.x86_64
@behlendorf behlendorf added the Type: Building Indicates an issue related to building binaries label May 7, 2019
@Conan-Kudo
Copy link
Contributor

@behlendorf With 0.8.0, we should stop shipping our own kmodtool fork, and use the one provided by either redhat-rpm-config (RHEL) or kmodtool (Fedora/EPEL).

That should resolve the issues, I think.

@mskarbek
Copy link
Contributor

In addition to that in 0.7.13 there is a problem with missing /usr/bin/python which is nonexistent in RHEL 8 so rpmbuild complains about Python scripts during build of spl packages and fails.
I didn't want to spam with a new issue about that.

@behlendorf
Copy link
Contributor

@Conan-Kudo right, shipping our own versions shouldn't be necessary any more. It'd be great to get a PR open for this.

@Conan-Kudo
Copy link
Contributor

@behlendorf in retrospect, we probably need it for deb/ubu builds, but we can resync with the fedora version.

I don't know if I can get to this, but I think we should do this before cutting 0.8.0.

@behlendorf
Copy link
Contributor

@Conan-Kudo re-syncing with Fedora version makes good sense. This shouldn't be too tricky but it's also not going to be a trival drop in replacement. Our version still contains at least one needed feature which hasn't been accepted upstream (kmod-devel packages). There may be a few other little tweaks we need too.

While I think we should get this updated soon I don't think it needs to block 0.8.0. But it would be nice to see it in 0.8.1.

@Conan-Kudo
Copy link
Contributor

@behlendorf We shouldn't need the devel packages for 0.8.0 anymore, since SPL and ZFS are in one set of module packages.

@behlendorf
Copy link
Contributor

That's true, but the kmod devel package is still required to build Lustre against ZFS.

@ofaaland
Copy link
Contributor

ofaaland commented Sep 6, 2019

Note that this occurs only when when using the "kmod" type build which results in zfs packages which require a specific kernel.
https://github.com/zfsonlinux/zfs/wiki/Custom-Packages#kmod

If the "kABI-tracking kmod" type build is used, the issue does not occur as the redhat-provided kmodtool is used, which gets the path to depmod right.
https://github.com/zfsonlinux/zfs/wiki/Custom-Packages#kabi-tracking-kmod

ofaaland added a commit to ofaaland/zfs that referenced this issue Sep 6, 2019
RHEL8 moved depmod from /sbin/depmod to /usr/sbin/depmod.  The specfile
for builds targeting RHEL8 must use the correct path for the Requires
line.

Assume that if the builder is targeting a RHEL8 derived system, they are
building on one.  Use the local path to depmod to indicate which path
should be used.

Fixes openzfs#8724

Signed-off-by: Olaf Faaland <[email protected]>
ofaaland added a commit to ofaaland/zfs that referenced this issue Sep 6, 2019
RHEL8 moved depmod from /sbin/depmod to /usr/sbin/depmod.  The specfile
for builds targeting RHEL8 must use the correct path for the Requires
line.

Assume that if the builder is targeting a RHEL8 derived system, they are
building on one.  Use the local path to depmod to indicate which path
should be used.

Fixes openzfs#8724

Signed-off-by: Olaf Faaland <[email protected]>
behlendorf pushed a commit to behlendorf/zfs that referenced this issue Sep 10, 2019
Determine the location of depmod on the system, either /sbin/depmod or
/usr/sbin/depmod.  Then use that path when generating the specfile.

Additionally, update the Requires lines to reference the package which
provides depmod rather than the binary itself.  For CentOS/RHEL 7+8
and all supported Fedora releases this is the kmod package, and for
CentOS/RHEL 6 it is the module-init-tools package.

Signed-off-by: Olaf Faaland <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Fixes openzfs#8724
behlendorf pushed a commit to behlendorf/zfs that referenced this issue Sep 10, 2019
Determine the location of depmod on the system, either /sbin/depmod or
/usr/sbin/depmod.  Then use that path when generating the specfile.

Additionally, update the Requires lines to reference the package which
provides depmod rather than the binary itself.  For CentOS/RHEL 7+8
and all supported Fedora releases this is the kmod package, and for
CentOS/RHEL 6 it is the module-init-tools package.

Signed-off-by: Olaf Faaland <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Fixes openzfs#8724
behlendorf pushed a commit to behlendorf/zfs that referenced this issue Sep 10, 2019
Determine the location of depmod on the system, either /sbin/depmod or
/usr/sbin/depmod.  Then use that path when generating the specfile.

Additionally, update the Requires lines to reference the package which
provides depmod rather than the binary itself.  For CentOS/RHEL 7+8
and all supported Fedora releases this is the kmod package, and for
CentOS/RHEL 6 it is the module-init-tools package.

Signed-off-by: Olaf Faaland <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Fixes openzfs#8724
behlendorf pushed a commit to behlendorf/zfs that referenced this issue Sep 10, 2019
Determine the location of depmod on the system, either /sbin/depmod or
/usr/sbin/depmod.  Then use that path when generating the specfile.

Additionally, update the Requires lines to reference the package which
provides depmod rather than the binary itself.  For CentOS/RHEL 7+8
and all supported Fedora releases this is the kmod package, and for
CentOS/RHEL 6 it is the module-init-tools package.

Signed-off-by: Olaf Faaland <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Fixes openzfs#8724
behlendorf pushed a commit to behlendorf/zfs that referenced this issue Sep 10, 2019
Determine the location of depmod on the system, either /sbin/depmod or
/usr/sbin/depmod.  Then use that path when generating the specfile.

Additionally, update the Requires lines to reference the package which
provides depmod rather than the binary itself.  For CentOS/RHEL 7+8
and all supported Fedora releases this is the kmod package, and for
CentOS/RHEL 6 it is the module-init-tools package.

Signed-off-by: Olaf Faaland <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Fixes openzfs#8724
@behlendorf behlendorf mentioned this issue Sep 10, 2019
12 tasks
behlendorf added a commit that referenced this issue Sep 11, 2019
Determine the location of depmod on the system, either /sbin/depmod or
/usr/sbin/depmod.  Then use that path when generating the specfile.

Additionally, update the Requires lines to reference the package which
provides depmod rather than the binary itself.  For CentOS/RHEL 7+8
and all supported Fedora releases this is the kmod package, and for
CentOS/RHEL 6 it is the module-init-tools package.

Reviewed-by: Minh Diep <[email protected]>
Signed-off-by: Olaf Faaland <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes #8724
Closes #9310
tonyhutter pushed a commit to tonyhutter/zfs that referenced this issue Sep 17, 2019
Determine the location of depmod on the system, either /sbin/depmod or
/usr/sbin/depmod.  Then use that path when generating the specfile.

Additionally, update the Requires lines to reference the package which
provides depmod rather than the binary itself.  For CentOS/RHEL 7+8
and all supported Fedora releases this is the kmod package, and for
CentOS/RHEL 6 it is the module-init-tools package.

Reviewed-by: Minh Diep <[email protected]>
Signed-off-by: Olaf Faaland <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes openzfs#8724
Closes openzfs#9310
tonyhutter pushed a commit to tonyhutter/zfs that referenced this issue Sep 18, 2019
Determine the location of depmod on the system, either /sbin/depmod or
/usr/sbin/depmod.  Then use that path when generating the specfile.

Additionally, update the Requires lines to reference the package which
provides depmod rather than the binary itself.  For CentOS/RHEL 7+8
and all supported Fedora releases this is the kmod package, and for
CentOS/RHEL 6 it is the module-init-tools package.

Reviewed-by: Minh Diep <[email protected]>
Signed-off-by: Olaf Faaland <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes openzfs#8724
Closes openzfs#9310
tonyhutter pushed a commit to tonyhutter/zfs that referenced this issue Sep 18, 2019
Determine the location of depmod on the system, either /sbin/depmod or
/usr/sbin/depmod.  Then use that path when generating the specfile.

Additionally, update the Requires lines to reference the package which
provides depmod rather than the binary itself.  For CentOS/RHEL 7+8
and all supported Fedora releases this is the kmod package, and for
CentOS/RHEL 6 it is the module-init-tools package.

Reviewed-by: Minh Diep <[email protected]>
Signed-off-by: Olaf Faaland <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes openzfs#8724
Closes openzfs#9310
tonyhutter pushed a commit to tonyhutter/zfs that referenced this issue Sep 18, 2019
Determine the location of depmod on the system, either /sbin/depmod or
/usr/sbin/depmod.  Then use that path when generating the specfile.

Additionally, update the Requires lines to reference the package which
provides depmod rather than the binary itself.  For CentOS/RHEL 7+8
and all supported Fedora releases this is the kmod package, and for
CentOS/RHEL 6 it is the module-init-tools package.

Reviewed-by: Minh Diep <[email protected]>
Signed-off-by: Olaf Faaland <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes openzfs#8724
Closes openzfs#9310
tonyhutter pushed a commit to tonyhutter/zfs that referenced this issue Sep 19, 2019
Determine the location of depmod on the system, either /sbin/depmod or
/usr/sbin/depmod.  Then use that path when generating the specfile.

Additionally, update the Requires lines to reference the package which
provides depmod rather than the binary itself.  For CentOS/RHEL 7+8
and all supported Fedora releases this is the kmod package, and for
CentOS/RHEL 6 it is the module-init-tools package.

Reviewed-by: Minh Diep <[email protected]>
Signed-off-by: Olaf Faaland <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes openzfs#8724
Closes openzfs#9310
tonyhutter pushed a commit to tonyhutter/zfs that referenced this issue Sep 23, 2019
Determine the location of depmod on the system, either /sbin/depmod or
/usr/sbin/depmod.  Then use that path when generating the specfile.

Additionally, update the Requires lines to reference the package which
provides depmod rather than the binary itself.  For CentOS/RHEL 7+8
and all supported Fedora releases this is the kmod package, and for
CentOS/RHEL 6 it is the module-init-tools package.

Reviewed-by: Minh Diep <[email protected]>
Signed-off-by: Olaf Faaland <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes openzfs#8724
Closes openzfs#9310
tonyhutter pushed a commit that referenced this issue Sep 26, 2019
Determine the location of depmod on the system, either /sbin/depmod or
/usr/sbin/depmod.  Then use that path when generating the specfile.

Additionally, update the Requires lines to reference the package which
provides depmod rather than the binary itself.  For CentOS/RHEL 7+8
and all supported Fedora releases this is the kmod package, and for
CentOS/RHEL 6 it is the module-init-tools package.

Reviewed-by: Minh Diep <[email protected]>
Signed-off-by: Olaf Faaland <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes #8724
Closes #9310
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Building Indicates an issue related to building binaries
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants