Commit 8c362daf authored by Anton Midyukov's avatar Anton Midyukov

grub: automatically substitute uuid in kernel cmdline

The uuid of the $ROOT device is the uuid of the partition mounted by bootchain or propagator. Therefore, we can substitute it, and not specify it in advance. This will allow you to transfer, as is, the contents of the iso to the flash drive. Also, for propagator, we replace the method with disk. This should not cause any problems.
parent 9e81e3d1
...@@ -6,6 +6,9 @@ if [ -n "$GRUB_TERMINAL" ]; then ...@@ -6,6 +6,9 @@ if [ -n "$GRUB_TERMINAL" ]; then
terminal_input $GRUB_TERMINAL terminal_input $GRUB_TERMINAL
fi fi
probe -u $root --set ROOT_UUID
export ROOT_UUID
insmod echo insmod echo
insmod gzio insmod gzio
insmod minicmd insmod minicmd
......
menuentry $"Install "'@distro@' --hotkey 'i' --id 'linux' { menuentry $"Install "'@distro@' --hotkey 'i' --id 'linux' {
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR fastboot @initrd_typeargs@=@initrd_bootmethod@ @stagename@=altinst ramdisk_size=@altinst_size@ @bootargs@ lang=$lang lowmem console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR fastboot @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=altinst ramdisk_size=@altinst_size@ @bootargs@ lang=$lang lowmem console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
menuentry $"Install "'@distro@' --hotkey 'i' --id 'linux' { menuentry $"Install "'@distro@' --hotkey 'i' --id 'linux' {
savedefault savedefault
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR fastboot live @initrd_typeargs@=@initrd_bootmethod@ @stagename@=live @install2_init@ ramdisk_size=@live_size@ lowmem @bootargs@ lang=$lang console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR fastboot live @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=live @install2_init@ ramdisk_size=@live_size@ lowmem @bootargs@ lang=$lang console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
menuentry $"VNC install (edit to set server IP address)" --id 'vncconnect' { menuentry $"VNC install (edit to set server IP address)" --id 'vncconnect' {
savedefault savedefault
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR fastboot @initrd_typeargs@=@initrd_bootmethod@ @stagename@=altinst ramdisk_size=@altinst_size@ nosplash @bootargs@ lovmem headless no_alt_virt_keyboard vncconnect=IP lang=$lang console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR fastboot @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=altinst ramdisk_size=@altinst_size@ nosplash @bootargs@ lovmem headless no_alt_virt_keyboard vncconnect=IP lang=$lang console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
menuentry $"VNC install (edit to set password and connect here)" --id 'vncpasswd' { menuentry $"VNC install (edit to set password and connect here)" --id 'vncpasswd' {
savedefault savedefault
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR fastboot @initrd_typeargs@=@initrd_bootmethod@ @stagename@=altinst ramdisk_size=@altinst_size@ nosplash @bootargs@ lowmem headless no_alt_virt_keyboard vncpassword=VNCPWD lang=$lang console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR fastboot @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=altinst ramdisk_size=@altinst_size@ nosplash @bootargs@ lowmem headless no_alt_virt_keyboard vncpassword=VNCPWD lang=$lang console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
menuentry $"VNC install (edit to set server IP address)" --id 'vncconnect' { menuentry $"VNC install (edit to set server IP address)" --id 'vncconnect' {
savedefault savedefault
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR fastboot @initrd_typeargs@=@initrd_bootmethod@ @stagename@=live @install2_init@ ramdisk_size=@live_size@ nosplash lowmem @bootargs@ headless no_alt_virt_keyboard vncconnect=IP lang=$lang console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR fastboot @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=live @install2_init@ ramdisk_size=@live_size@ nosplash lowmem @bootargs@ headless no_alt_virt_keyboard vncconnect=IP lang=$lang console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
menuentry $"VNC install (edit to set password and connect here)" --id 'vncpasswd' { menuentry $"VNC install (edit to set password and connect here)" --id 'vncpasswd' {
savedefault savedefault
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR fastboot @initrd_typeargs@=@initrd_bootmethod@ @stagename@=live @install2_init@ ramdisk_size=@live_size@ nosplash lowmem @bootargs@ headless no_alt_virt_keyboard vncpassword=VNCPWD lang=$lang console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR fastboot @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=live @install2_init@ ramdisk_size=@live_size@ nosplash lowmem @bootargs@ headless no_alt_virt_keyboard vncpassword=VNCPWD lang=$lang console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
......
menuentry $"@LIVE_NAME@" --id 'live' { menuentry $"@LIVE_NAME@" --id 'live' {
savedefault savedefault
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR fastboot live @initrd_typeargs@=@initrd_bootmethod@ @stagename@=live ramdisk_size=@live_size@ lowmem @bootargs@ lang=$lang console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR fastboot live @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=live ramdisk_size=@live_size@ lowmem @bootargs@ lang=$lang console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
......
menuentry $"LiveCD with sessions support" --id 'session' { menuentry $"LiveCD with sessions support" --id 'session' {
savedefault savedefault
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR fastboot live @initrd_typeargs@=@initrd_bootmethod@ @stagename@=live ramdisk_size=@live_size@ live_rw @bootargs@ lang=$lang lowmem console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR fastboot live @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=live ramdisk_size=@live_size@ live_rw @bootargs@ lang=$lang lowmem console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
menuentry $"Rescue LiveCD" --id 'rescue' { menuentry $"Rescue LiveCD" --id 'rescue' {
savedefault savedefault
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR fastboot live @initrd_typeargs@=@initrd_bootmethod@ @stagename@=live systemd.unit=live-rescue.target ramdisk_size=@live_size@ nosplash @rescue_bootargs@ lang=$lang lowmem console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR fastboot live @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=live systemd.unit=live-rescue.target ramdisk_size=@live_size@ nosplash @rescue_bootargs@ lang=$lang lowmem console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
......
menuentry $"Rescue LiveCD with sessions support" --id 'rescue_session' { menuentry $"Rescue LiveCD with sessions support" --id 'rescue_session' {
savedefault savedefault
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR fastboot live @initrd_typeargs@=@initrd_bootmethod@ @stagename@=live systemd.unit=live-rescue.target ramdisk_size=@live_size@ live_rw nosplash @rescue_bootargs@ lang=$lang lowmem console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR fastboot live @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=live systemd.unit=live-rescue.target ramdisk_size=@live_size@ live_rw nosplash @rescue_bootargs@ lang=$lang lowmem console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
......
menuentry $"Rescue LiveCD" --id 'rescue' { menuentry $"Rescue LiveCD" --id 'rescue' {
savedefault savedefault
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR changedisk fastboot live @initrd_typeargs@=@initrd_bootmethod@ @stagename@=rescue ramdisk_size=@rescue_size@ nosplash @rescue_bootargs@ lowmem console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR changedisk fastboot live @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=rescue ramdisk_size=@rescue_size@ nosplash @rescue_bootargs@ lowmem console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
menuentry $"Rescue with sessions support" --id 'rescue_session' { menuentry $"Rescue with sessions support" --id 'rescue_session' {
savedefault savedefault
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR changedisk fastboot live @initrd_typeargs@=@initrd_bootmethod@ @stagename@=rescue ramdisk_size=@rescue_size@ nosplash @rescue_bootargs@ live_rw lowmem console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR changedisk fastboot live @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=rescue ramdisk_size=@rescue_size@ nosplash @rescue_bootargs@ live_rw lowmem console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
menuentry $"Forensic mode (leave disks alone)" --id 'rescue_forensic' { menuentry $"Forensic mode (leave disks alone)" --id 'rescue_forensic' {
savedefault savedefault
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz fastboot live @initrd_typeargs@=@initrd_bootmethod@ @stagename@=rescue ramdisk_size=@rescue_size@ nosplash @rescue_bootargs@ max_loop=16 forensic hash=@rescue_hash@ lowmem console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz fastboot live @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=rescue ramdisk_size=@rescue_size@ nosplash @rescue_bootargs@ max_loop=16 forensic hash=@rescue_hash@ lowmem console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
menuentry $"Rescue with remote SSH access (DHCP)" --id 'rescue_remote' { menuentry $"Rescue with remote SSH access (DHCP)" --id 'rescue_remote' {
savedefault savedefault
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR fastboot live @initrd_typeargs@=@initrd_bootmethod@ @stagename@=rescue ramdisk_size=@rescue_size@ nosplash @rescue_bootargs@ max_loop=16 port=22 rootpw=AUTO hash=@rescue_hash@ lowmem console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR fastboot live @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=rescue ramdisk_size=@rescue_size@ nosplash @rescue_bootargs@ max_loop=16 port=22 rootpw=AUTO hash=@rescue_hash@ lowmem console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
menuentry $"Check this media for defects" --id 'mediachk' { menuentry $"Check this media for defects" --id 'mediachk' {
echo $"Loading Linux vmlinuz$KFLAVOUR ..." echo $"Loading Linux vmlinuz$KFLAVOUR ..."
linux /boot/vmlinuz$KFLAVOUR live @initrd_typeargs@=@initrd_bootmethod@ @stagename@=mediacheck lowmem mediacheck=1 nosplash @bootargs@ console=@serial_port@,@serial_speed@n8 console=tty0 linux /boot/vmlinuz$KFLAVOUR live @initrd_typeargs@=method:disk,uuid:$ROOT_UUID @stagename@=mediacheck lowmem mediacheck=1 nosplash @bootargs@ console=@serial_port@,@serial_speed@n8 console=tty0
echo $"Loading initial ramdisk ..." echo $"Loading initial ramdisk ..."
initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@ initrd /boot/@initrd@$KFLAVOUR.@initrd_ext@
} }
...@@ -105,7 +105,6 @@ bootargs: clean ...@@ -105,7 +105,6 @@ bootargs: clean
sed -i "s,@grubtheme@,$$GRUBTHEME,g" $(DSTCFGS) sed -i "s,@grubtheme@,$$GRUBTHEME,g" $(DSTCFGS)
@sed -i "s,@initrd@,initrd," $(DSTCFGS) @sed -i "s,@initrd@,initrd," $(DSTCFGS)
@sed -i "s,@initrd_ext@,img," $(DSTCFGS) @sed -i "s,@initrd_ext@,img," $(DSTCFGS)
@sed -i "s|@initrd_bootmethod@|$(STAGE1_INITRD_BOOTMETHOD)|g" $(DSTCFGS)
@sed -i "s|@initrd_typeargs@|$(STAGE1_INITRD_TYPEARGS)|g" $(DSTCFGS) @sed -i "s|@initrd_typeargs@|$(STAGE1_INITRD_TYPEARGS)|g" $(DSTCFGS)
@sed -i "s,@stagename@,$(STAGE1_INITRD_STAGE2_OPTION),g" $(DSTCFGS) @sed -i "s,@stagename@,$(STAGE1_INITRD_STAGE2_OPTION),g" $(DSTCFGS)
@sed -i "s,@install2_init@,$(INSTALL2_INIT),g" $(DSTCFGS) @sed -i "s,@install2_init@,$(INSTALL2_INIT),g" $(DSTCFGS)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment