diff options
| -rw-r--r-- | meta/recipes-core/initrdscripts/files/init-install-efi.sh | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/meta/recipes-core/initrdscripts/files/init-install-efi.sh b/meta/recipes-core/initrdscripts/files/init-install-efi.sh index 8dd2749b5e..5fb4d4d05c 100644 --- a/meta/recipes-core/initrdscripts/files/init-install-efi.sh +++ b/meta/recipes-core/initrdscripts/files/init-install-efi.sh | |||
| @@ -164,8 +164,10 @@ mount -o rw,loop,noatime,nodiratime /run/media/$1/$2 /src_root | |||
| 164 | echo "Copying rootfs files..." | 164 | echo "Copying rootfs files..." |
| 165 | cp -a /src_root/* /tgt_root | 165 | cp -a /src_root/* /tgt_root |
| 166 | if [ -d /tgt_root/etc/ ] ; then | 166 | if [ -d /tgt_root/etc/ ] ; then |
| 167 | echo "$swap swap swap defaults 0 0" >> /tgt_root/etc/fstab | 167 | boot_uuid=$(blkid -o value -s UUID /dev/${device}1) |
| 168 | echo "$bootfs /boot vfat defaults 1 2" >> /tgt_root/etc/fstab | 168 | swap_part_uuid=$(blkid -o value -s PARTUUID /dev/${device}3) |
| 169 | echo "/dev/disk/by-partuuid/$swap_part_uuid swap swap defaults 0 0" >> /tgt_root/etc/fstab | ||
| 170 | echo "UUID=$boot_uuid /boot vfat defaults 1 2" >> /tgt_root/etc/fstab | ||
| 169 | # We dont want udev to mount our root device while we're booting... | 171 | # We dont want udev to mount our root device while we're booting... |
| 170 | if [ -d /tgt_root/etc/udev/ ] ; then | 172 | if [ -d /tgt_root/etc/udev/ ] ; then |
| 171 | echo "/dev/${device}" >> /tgt_root/etc/udev/mount.blacklist | 173 | echo "/dev/${device}" >> /tgt_root/etc/udev/mount.blacklist |
| @@ -184,6 +186,7 @@ mkdir -p $EFIDIR | |||
| 184 | cp /run/media/$1/EFI/BOOT/*.efi $EFIDIR | 186 | cp /run/media/$1/EFI/BOOT/*.efi $EFIDIR |
| 185 | 187 | ||
| 186 | if [ -f /run/media/$1/EFI/BOOT/grub.cfg ]; then | 188 | if [ -f /run/media/$1/EFI/BOOT/grub.cfg ]; then |
| 189 | root_part_uuid=$(blkid -o value -s PARTUUID /dev/${device}2) | ||
| 187 | GRUBCFG="$EFIDIR/grub.cfg" | 190 | GRUBCFG="$EFIDIR/grub.cfg" |
| 188 | cp /run/media/$1/EFI/BOOT/grub.cfg $GRUBCFG | 191 | cp /run/media/$1/EFI/BOOT/grub.cfg $GRUBCFG |
| 189 | # Update grub config for the installed image | 192 | # Update grub config for the installed image |
| @@ -196,7 +199,7 @@ if [ -f /run/media/$1/EFI/BOOT/grub.cfg ]; then | |||
| 196 | # Delete any root= strings | 199 | # Delete any root= strings |
| 197 | sed -i "s/ root=[^ ]*/ /" $GRUBCFG | 200 | sed -i "s/ root=[^ ]*/ /" $GRUBCFG |
| 198 | # Add the root= and other standard boot options | 201 | # Add the root= and other standard boot options |
| 199 | sed -i "s@linux /vmlinuz *@linux /vmlinuz root=$rootfs rw $rootwait quiet @" $GRUBCFG | 202 | sed -i "s@linux /vmlinuz *@linux /vmlinuz root=PARTUUID=$root_part_uuid rw $rootwait quiet @" $GRUBCFG |
| 200 | fi | 203 | fi |
| 201 | 204 | ||
| 202 | if [ -d /run/media/$1/loader ]; then | 205 | if [ -d /run/media/$1/loader ]; then |
| @@ -212,7 +215,7 @@ if [ -d /run/media/$1/loader ]; then | |||
| 212 | # delete any root= strings | 215 | # delete any root= strings |
| 213 | sed -i "s/ root=[^ ]*/ /" $GUMMIBOOT_CFGS | 216 | sed -i "s/ root=[^ ]*/ /" $GUMMIBOOT_CFGS |
| 214 | # add the root= and other standard boot options | 217 | # add the root= and other standard boot options |
| 215 | sed -i "s@options *@options root=$rootfs rw $rootwait quiet @" $GUMMIBOOT_CFGS | 218 | sed -i "s@options *@options root=PARTUUID=$rootuuid rw $rootwait quiet @" $GUMMIBOOT_CFGS |
| 216 | fi | 219 | fi |
| 217 | 220 | ||
| 218 | umount /tgt_root | 221 | umount /tgt_root |
