-
Bug
-
Resolution: Unresolved
-
Minor
-
None
-
rhel-8.10
With systemd, it's possible to specify a mount point in /etc/fstab which doesn't currently exist. In such case, systemd will create it and mount the file system on it.
This is an issue when upgrading, because mount -a doesn't proceed similarly, causing failure of the upgrade in reboot phase.
Reproducer
- Add a line in /etc/fstab to bind mount /boot on some non-existing directory /run/non-existing/boot
# echo "/boot /run/non-existing/boot none bind,defaults 0 0" >> /etc/fstab - Execute leapp upgrade
- Reboot
Result
leapp fails early while executing mount -a:
[ 17.848932] upgrade[801]: mount: /run/non-existing/boot: mount point does not exist. [ 33.536692] upgrade[810]: ==> Processing phase `InitRamStart` [ 33.537195] upgrade[810]: ====> * remove_upgrade_efi_entry [ 33.537551] upgrade[810]: Remove UEFI entry for LEAPP upgrade (see AddArmBootloaderWorkaround). [ 33.603854] upgrade[810]: ====> * remove_upgrade_boot_entry [ 33.604285] upgrade[810]: Remove boot entry for Leapp provided initramfs. [ 33.797963] xfs filesystem being mounted at /boot supports timestamps until 2038 (0x7fffffff) [ 33.970634] upgrade[1308]: Process Process-210: [ 33.971138] upgrade[1308]: Traceback (most recent call last): [ 33.971671] upgrade[1308]: File "/usr/lib64/python3.6/multiprocessing/process.py", line 258, in _bootstrap [ 33.972355] upgrade[1308]: self.run() [ 33.972665] upgrade[1308]: File "/usr/lib64/python3.6/multiprocessing/process.py", line 93, in run [ 33.973247] upgrade[1308]: self._target(*self._args, **self._kwargs) [ 33.973695] upgrade[1308]: File "/usr/lib/python3.6/site-packages/leapp/repository/actor_definition.py", line 75, in _do_run [ 33.974376] upgrade[1308]: actor_instance.run(*args, **kwargs) [ 33.974785] upgrade[1308]: File "/usr/lib/python3.6/site-packages/leapp/actors/__init__.py", line 319, in run [ 33.975467] upgrade[1308]: self.process(*args) [ 33.975832] upgrade[1308]: File "/etc/leapp/repos.d/system_upgrade/common/actors/removeupgradebootentry/actor.py", line 20, in process [ 33.976600] upgrade[1308]: remove_boot_entry() [ 33.976976] upgrade[1308]: File "/etc/leapp/repos.d/system_upgrade/common/actors/removeupgradebootentry/libraries/removeupgradebootentry.py", line 49, in remove_boot_entry [ 33.977920] upgrade[1308]: '/bin/mount', '-a' [ 33.978252] upgrade[1308]: File "/usr/lib/python3.6/site-packages/leapp/libraries/stdlib/__init__.py", line 192, in run [ 33.978906] upgrade[1308]: result=result [ 33.979247] upgrade[1308]: leapp.libraries.stdlib.CalledProcessError: Command ['/bin/mount', '-a'] failed with exit code 32. [ 34.014564] upgrade[810]: 2025-06-26 07:55:07.84 ERROR PID: 3 leapp.workflow.InitRamStart: Actor remove_upgrade_boot_entry has crashed: Traceback (most recent call last): [ 34.015666] upgrade[810]: File "/usr/lib/python3.6/site-packages/leapp/repository/actor_definition.py", line 75, in _do_run [ 34.016502] upgrade[810]: actor_instance.run(*args, **kwargs) [ 34.016964] upgrade[810]: File "/usr/lib/python3.6/site-packages/leapp/actors/__init__.py", line 319, in run [ 34.017677] upgrade[810]: self.process(*args) [ 34.018076] upgrade[810]: File "/etc/leapp/repos.d/system_upgrade/common/actors/removeupgradebootentry/actor.py", line 20, in process [ 34.018918] upgrade[810]: remove_boot_entry() [ 34.019306] upgrade[810]: File "/etc/leapp/repos.d/system_upgrade/common/actors/removeupgradebootentry/libraries/removeupgradebootentry.py", line 49, in remove_boot_entry [ 34.020351] upgrade[810]: '/bin/mount', '-a' [ 34.020709] upgrade[810]: File "/usr/lib/python3.6/site-packages/leapp/libraries/stdlib/__init__.py", line 192, in run [ 34.021473] upgrade[810]: result=result [ 34.021789] upgrade[810]: leapp.libraries.stdlib.CalledProcessError: Command ['/bin/mount', '-a'] failed with exit code 32.