Quoting from gen_initramfs.sh: # The ZFS tools want the hostid in order to find the right pool. # Assume the initramfs we're building is for this system, so copy # our current hostid into it. printf "$(echo "${hostid}" | sed 's/\([0-9A-F]\{2\}\)/\\x\1/gI')" > ${TEMP}/initramfs-base-temp/etc/hostid ... this is very optimistic and in general wrong.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=4e46cfcd6f50560a9e8c31163663940a99875e0c commit 4e46cfcd6f50560a9e8c31163663940a99875e0c Author: Thomas Deutschmann <whissi@gentoo.org> AuthorDate: 2019-03-27 11:53:54 +0000 Commit: Thomas Deutschmann <whissi@gentoo.org> CommitDate: 2019-03-27 11:53:54 +0000 ZFS: Change hostid handling No need to deal with hostid value: We assume that /etc/hostid exists if ZFS is used. So just copy that existing file. If file is missing tell user that kernel command-line parameter "spl_hostid=<hostid>" must be used. Same is true when generated initramfs is used for multiple systems. Closes: https://bugs.gentoo.org/531192 Closes: https://bugs.gentoo.org/616738 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org> gen_initramfs.sh | 26 ++++++++++++-------------- genkernel | 23 +++++++++++++++++++---- 2 files changed, 31 insertions(+), 18 deletions(-)