Если вы хотите попробовать загрузить Windows еще раз...
Это работает, только если ваш раздел EFI не поврежден.
Запустите lsblk -no UUID /dev/sda3
и запишите UUID.
Отредактируйте /etc/grub.d/40_custom
и измените 67E3-17ED
на свой UUID:
menuentry "Windows 10" {
insmod part_gpt
insmod fat
set root='hd0,gpt1'
search --fs-uuid --no-floppy --set=root 67E3-17ED
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
Обновлениеgrub.cfg
Пожалуйста, проверьте, какой файл существует, т.е. ls /boot/grub2/grub.cfg
или ls /boot/efi/EFI/fedora/grub.cfg
. Это, наверное, первый.
Если вы загружались со старой версии BIOS, это должно быть
grub2-mkconfig -o /boot/grub2/grub.cfg
и из UEFI
grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
Перезагрузка и проверка
Много способов:
Передать переменную в качестве входных данных для perl one liner:
perl -le 'print "\$x is $ARGV[0]"' "$x"
Экспортируйте переменную, а затем используйте хэш Perl %ENV
для ее печати:
export x="$1"
perl -le 'print "\$x is $ENV{x}"'
Используйте двойные кавычки для Perl-скрипта:
perl -le "print \"\\\$x is $x\""
Вот как они будут выглядеть в сценарии оболочки:
#!/bin/bash
export x=$1
echo "Approach #1"
perl -le 'print "\$x is $ARGV[0]"' "$x"
echo "Approach #2"
perl -le 'print "\$x is $ENV{x}"'
echo "Approach #3"
perl -le "print \"\\\$x is $x\""
Если я сохраню приведенный выше скрипт как foo.sh
и запущу его с "foo" в качестве аргумента, я получу:
$ foo.sh foo
Approach #1
$x is foo
Approach #2
$x is foo
Approach #3
$x is foo