-
Notifications
You must be signed in to change notification settings - Fork 255
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
Bind mount proc sys dev run at one place issue2045 #2047
Bind mount proc sys dev run at one place issue2045 #2047
Conversation
…(i.e. after 110_bind_mount_proc_sys_dev_run.sh)
@gozora I think your EFISTUB_run_efibootmgr.sh should not use a 1nn number
i.e. the numbers 100-199 are meant for creating devices on TARGET Is there a special reason why EFISTUB_run_efibootmgr.sh must |
@jsmeix I've totally forgotten about usr/share/rear/finalize/readme :-(
Excerpt from 100_EFISTUB_run_efibootmgr.sh
So you can update its name to 609_EFISTUB_run_efibootmgr.sh without breaking anything. V. |
Hello @jsmeix This patch have uncovered problem. More precisely following condition:
will evaluate true when $file=<symlink_pointing_to_proc> or more specifically in my case:
So in current ReaR master code (without this patch merged) condition will evaluate true (because /proc is not mounted) and happily stops current loop iteration and continues with next one. However since your patch will correctly mount /proc, condition will evaluate as false, and remaining code in loop iteration will execute which fails with:
For completeness, current ReaR master code behaves like this:
Some time ago /etc/mtab changed from regular file to symlink pointing /proc/mtab resp /proc/self/mtab and since this change we should not anyhow touch this file and poking aroud /proc with Your patch is fully OK, but if it will be merged other things might stop working because your patch actually fixed something :-) (what an irony)! V. |
@gozora Regarding NNN_EFISTUB_run_efibootmgr.sh |
Anytime!
I guess we can use 609_EFISTUB_run_efibootmgr.sh after all. Because files from Linux-i386, Linux-ppc64, Linux-arm, Linux-ia64 or Linux-ppc64le directories will never execute simultaneously. V. |
…ze/Linux-ppc64/660_install_grub2.sh that oints to ../Linux-ppc64le/680_install_PPC_bootlist.sh to keep the scripts ordering in finalize/Linux-ppc64 as it was before
@gozora I don't know how to trigger that 280_migrate_uuid_tags.sh gets actually run. |
Only FYI
|
@schabrolles |
@rmetrich |
Hello @jsmeix Works fine for me! Log from running
V. |
@gozora |
@schabrolles @rmetrich |
In finalize/Linux-ppc64le/660_install_grub2.sh remove the "mount --bind <proc|sys|dev> at TARGET_FS_ROOT" section because that is done in finalize/default/110_bind_mount_proc_sys_dev_run.sh since #2045 where finalize/Linux-ppc64le/..._install_grub2.sh was accidentally forgotten in #2047 therein see in particular dd9977f and therein see the change for finalize/Linux-i386/..._install_grub2.sh which we supplement now also for finalize/Linux-ppc64le/..._install_grub2.sh
In finalize/Linux-ppc64le/660_install_grub2.sh remove the "mount --bind <proc|sys|dev> at TARGET_FS_ROOT" section because that is done in finalize/default/110_bind_mount_proc_sys_dev_run.sh since rear#2045 where finalize/Linux-ppc64le/..._install_grub2.sh was accidentally forgotten in rear#2047 therein see in particular rear@dd9977f and therein see the change for finalize/Linux-i386/..._install_grub2.sh which we supplement now also for finalize/Linux-ppc64le/..._install_grub2.sh
Type: Bug Fix / Enhancement / Cleanup
Impact: High
There might be regressions when installing old bootloaders
like GRUB1, LILO, and ELILO (none was tested, see below).
#2045
#2035
perhaps also
#2044
Works for me on SLES15 and SLES12 - both use GRUB2.
Other bootloaders (like GRUB, LILO, and ELILO) not tested.
Now /proc /sys /dev and /run are bind-mounted
at the beginning of the finalize stage via one single new
finalize/default/110_bind_mount_proc_sys_dev_run.sh
All existing mount and umount commands in finalize scripts
for /proc /sys /dev and things like that were removed and
as needed such scripts were further adapted, in particular
finalize/GNU/Linux/430_create_multipath_config.sh
and finalize/Linux-i386/610_install_lilo.sh
and in finalize/Linux-i386/620_install_elilo.sh
a not yet fixed bug is marked as FIXME and left to be fixed
by someone who knows better than I about ELILO...
The old finalize/default/100_populate_dev.sh was removed
because what it intended to do is now done by the new
finalize/default/110_bind_mount_proc_sys_dev_run.sh
Because finalize/default/110_bind_mount_proc_sys_dev_run.sh
calls
mountpoint
that program is added toREQUIRED_PROGS in default.conf, cf.
#2035 (comment)