Public bug reported:
When running Ubuntu 24.10 (Oracular Oriole) and switching from initramfs
to dracut (by installing dracut packages and following instructions in
/usr/share/doc/dracut-core/README.Debian), the initramfs generated by
dracut won't include the necessary files to allow an instance to boot
from iscsi. The following packages were installed:
ii dracut 103-1ubuntu2
all Initramfs generator using udev
ii dracut-core 103-1ubuntu2
amd64 dracut is an event driven initramfs infrastructure (core tools)
ii dracut-install 103-1ubuntu2
amd64 dracut is an event driven initramfs infrastructure
(dracut-install)
ii dracut-network 103-1ubuntu2
all dracut is an event driven initramfs infrastructure (network
modules)
When trying to boot from iscsi by adding the following cmdline to grub (booting
from ISCSI in an Oracle Cloud instance):
BOOT_IMAGE=/vmlinuz-6.8.0-1005-oracle
root=UUID=f692dbf6-c1a4-4a31-8585-2571fbbd2f7e ro console=tty1
console=ttyS0 nvme.shutdown_timeout=10 libiscsi.debug_libiscsi_eh=1
crash_kexec_post_notifiers rd.luks=0 rd.md=0 rd.dm=0
rd.net.timeout.carrier=5
rd.iscsi.param=node.session.timeo.replacement_timeout=6000 net.ifnames=1
ipmi_si.tryacpi=0 ipmi_si.trydmi=0 libiscsi.debug_libiscsi_eh=1
loglevel=4 rd.net.timeout.dhcp=10 ip=dhcp
netroot=iscsi:169.254.0.2:::1:iqn.2015-02.oracle.boot:uefi
The boot fails with:
[ OK ] Reached target network-online.target - Network is Online.
Starting iscsid.service - iSCSI initiator daemon (iscsid)...
[FAILED] Failed to start iscsid.service - iSCSI initiator daemon (iscsid).
See 'systemctl status iscsid.service' for details.
Starting iscsid.service - iSCSI initiator daemon (iscsid)...
[FAILED] Failed to start iscsid.service - iSCSI initiator daemon (iscsid).
See 'systemctl status iscsid.service' for details.
Starting iscsid.service - iSCSI initiator daemon (iscsid)...
[FAILED] Failed to start iscsid.service - iSCSI initiator daemon (iscsid).
See 'systemctl status iscsid.service' for details.
Starting iscsid.service - iSCSI initiator daemon (iscsid)...
[FAILED] Failed to start iscsid.service - iSCSI initiator daemon (iscsid).
See 'systemctl status iscsid.service' for details.
Starting iscsid.service - iSCSI initiator daemon (iscsid)...
[FAILED] Failed to start iscsid.service - iSCSI initiator daemon (iscsid).
See 'systemctl status iscsid.service' for details.
[FAILED] Failed to start iscsid.service - iSCSI initiator daemon (iscsid).
See 'systemctl status iscsid.service' for details.
[ 6.891677] dracut-initqueue[582]: iscsiadm: read error (-1/104), daemon
died?
[ OK ] Listening on iscsid.socket - Open-iSCSI iscsid Socket.
[FAILED] Failed to start iscsid.service - iSCSI initiator daemon (iscsid).
See 'systemctl status iscsid.service' for details.
[ 7.909211] dracut-initqueue[582]: iscsiadm: read error (-1/104), daemon
died?
[ 7.910096] dracut-initqueue[582]: iscsiadm: Cannot perform discovery.
Initiatorname required.
[ 7.911164] dracut-initqueue[582]: iscsiadm: Could not perform SendTargets
discovery: could not communicate to iscsid
[ 7.913629] dracut-initqueue[521]: Warning: Target discovery to
169.254.0.2:3260 failed
Eventually the instance will drop to an emergency shell and we can check
the error in details:
# journalctl -u iscsid --no-pager
Sep 18 19:58:40 localhost systemd[1]: Starting iscsid.service - iSCSI initiator
daemon (iscsid)...
Sep 18 19:58:40 localhost (hecks.sh)[584]: iscsid.service: Unable to locate
executable '/usr/lib/open-iscsi/startup-checks.sh': No such file or directory
Sep 18 19:58:40 localhost (hecks.sh)[584]: iscsid.service: Failed at step EXEC
spawning /usr/lib/open-iscsi/startup-checks.sh: No such file or directory
Sep 18 19:58:40 localhost systemd[1]: iscsid.service: Control process exited,
code=exited, status=203/EXEC
Sep 18 19:58:40 localhost systemd[1]: iscsid.service: Failed with result
'exit-code'.
Sep 18 19:58:40 localhost systemd[1]: Failed to start iscsid.service - iSCSI
initiator daemon (iscsid).
Extracting the initramfs generated by dracut, we can see that
/usr/lib/open-iscsi/startup-checks.sh is not included:
ubuntu@oracular-dracut:~/initrd$ ls -l usr/lib/
total 636
drwxr-xr-x 2 ubuntu ubuntu 4096 Sep 18 22:13 dracut
-rwxr-xr-x 1 ubuntu ubuntu 8177 Jul 25 03:45 dracut-crypt-lib.sh
-rwxr-xr-x 1 ubuntu ubuntu 4078 Jul 25 03:45 dracut-dev-lib.sh
-rwxr-xr-x 1 ubuntu ubuntu 29345 Jul 25 03:45 dracut-lib.sh
drwxr-xr-x 2 ubuntu ubuntu 4096 Sep 18 22:13 firmware
-rwxr-xr-x 1 ubuntu ubuntu 6552 Dec 6 2023 fs-lib.sh
-rw-r--r-- 1 ubuntu ubuntu 510 Sep 6 14:20 initrd-release
-rw-r--r-- 1 ubuntu ubuntu 14648 Jul 23 13:41 libmpathcmd.so.0
-rw-r--r-- 1 ubuntu ubuntu 39224 Jul 23 13:41 libmpathpersist.so.0
-rw-r--r-- 1 ubuntu ubuntu 47424 Jul 23 13:41 libmpathutil.so.0
-rw-r--r-- 1 ubuntu ubuntu 404112 Jul 23 13:41 libmultipath.so.0
drwxr-xr-x 2 ubuntu ubuntu 4096 Sep 18 22:13 modprobe.d
drwxr-xr-x 4 ubuntu ubuntu 4096 Sep 18 22:13 modules
drwxr-xr-x 2 ubuntu ubuntu 4096 Sep 18 22:13 modules-load.d
-rwxr-xr-x 1 ubuntu ubuntu 26819 Jul 25 03:45 net-lib.sh
-rwxr-xr-x 1 ubuntu ubuntu 5004 Jul 25 03:45 nfs-lib.sh
lrwxrwxrwx 1 ubuntu ubuntu 14 Sep 6 14:20 os-release -> initrd-release
drwxr-xr-x 2 ubuntu ubuntu 4096 Sep 18 22:13 sysctl.d
drwxr-xr-x 6 ubuntu ubuntu 4096 Sep 18 22:13 systemd
drwxr-xr-x 2 ubuntu ubuntu 4096 Sep 18 22:13 sysusers.d
drwxr-xr-x 2 ubuntu ubuntu 4096 Sep 18 22:13 tmpfiles.d
drwxr-xr-x 3 ubuntu ubuntu 4096 Sep 18 22:13 udev
drwxr-xr-x 6 ubuntu ubuntu 4096 Sep 18 22:13 x86_64-linux-gnu
ubuntu@oracular-dracut:~/initrd$ ls -l usr/lib/open*
ls: cannot access 'usr/lib/open*': No such file or directory
ProblemType: Bug
DistroRelease: Ubuntu 24.10
Package: dracut 103-1ubuntu2
ProcVersionSignature: User Name 6.8.0-1005.5-oracle 6.8.1
Uname: Linux 6.8.0-1005-oracle x86_64
ApportVersion: 2.30.0-0ubuntu2
Architecture: amd64
CasperMD5CheckResult: unknown
CloudArchitecture: x86_64
CloudBuildName: server
CloudID: oracle
CloudName: oracle
CloudPlatform: oracle
CloudSerial: 20240831
CloudSubPlatform: metadata (http://169.254.169.254/opc/v2/)
Date: Thu Sep 19 11:27:44 2024
PackageArchitecture: all
ProcEnviron:
LANG=C.UTF-8
PATH=(custom, no user)
SHELL=/bin/bash
TERM=xterm-256color
XDG_RUNTIME_DIR=<set>
RebootRequiredPkgs: Error: path contained symlinks.
SourcePackage: dracut
UpgradeStatus: No upgrade log present (probably fresh install)
** Affects: dracut (Ubuntu)
Importance: Undecided
Status: New
** Tags: amd64 apport-bug cloud-image oracular
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2081172
Title:
dracut generated initramfs doesn't contain necessary files for iscsi
boot
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/dracut/+bug/2081172/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs