[Цитировать]

    xnik
  • 19473
  • Стаж: 6 лет
  • Сообщений: 486
  • Репутация:11

    [+] [-]
  • Откуда: СССР
mauzer, попробовал, чего то не работает

[Цитировать]

    mauzer
  • 211
  • Стаж: 9 лет 9 месяцев
  • Сообщений: 95
  • Репутация:5

    [+] [-]
99997чего то не работает
Выполняется пункт меню и ничего не происходит? 1.efi - это что-то конкретное?

[Цитировать]

    xnik
  • 19473
  • Стаж: 6 лет
  • Сообщений: 486
  • Репутация:11

    [+] [-]
  • Откуда: СССР
1.efi это просто мемтест плюс 6.1, взял для испытаний
Grub2 выводит сообщение файл не найден, хотя он лежит в корневой директории 1 раздела HDD диска
Можно конечно сделать несколько пунктов (hd1,1) (hd1,2) (hd1,3)
Но хотелось бы посмотреть как работает "search"

[Цитировать]

    mauzer
  • 211
  • Стаж: 9 лет 9 месяцев
  • Сообщений: 95
  • Репутация:5

    [+] [-]
1000001.efi это просто мемтест плюс 6.1, взял для испытаний
Где взяли? Попробуйте другой файл (memtest86, bootx64 оn microsoft)
100000Grub2 выводит сообщение файл не найден
Так и пишет "файл не найден"? А диск этот Grub2 видит?

[Цитировать]

    волчара
  • 253
  • Стаж: 9 лет 9 месяцев
  • Сообщений: 595
  • Репутация:44

    [+] [-]
  • Откуда: Омск
mauzer,
Скачайте для GRUB2,

вам нужен только memtest, лежит тут \EFI\BOOT
menuentry "Start Memtest86+, использовать встроенную поддержку USB-клавиатур" {
   search --set -f   linux /test/memtest
linux /test/memtest keyboard=both
}
menuentry "Start Memtest86+, использовать устаревшую эмуляцию BIOS для USB-клавиатур" {
search --set -f   linux /test/memtest
linux /test/memtest keyboard=legacy
}
menuentry "Start Memtest86+, Отключить SMP и идентификацию памяти" {
  search --set -f   linux /test/memtest
linux /test/memtest nosmp nosm nobench
}
Пути указываем свои

[Цитировать]

    mauzer
  • 211
  • Стаж: 9 лет 9 месяцев
  • Сообщений: 95
  • Репутация:5

    [+] [-]
100002вам нужен только memtest
Спасибо, конечно, только memtest в данном случае не является файлом efi.

[Цитировать]

    волчара
  • 253
  • Стаж: 9 лет 9 месяцев
  • Сообщений: 595
  • Репутация:44

    [+] [-]
  • Откуда: Омск
mauzer,Спрашивали про запуск мемтест+ я предоставил скрипт, для запуска мемтест+ файл bootx64.efi не нужен!
Добавлено через 14 минут 15 секунд:
100000Но хотелось бы посмотреть как работает "search"
Если у вас запускающий файл находится на другом разделе hdd, то set root=(hd0,1) обязателен
menuentry "search" {
set root=(hd0,1)
search --set -f /1.efi
chainloader /1.efi
}
1- это номер раздела
А если все на одном разделе
то так достаточно
menuentry "search" {
search --set -f /1.efi
chainloader /1.efi
}

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 9 месяцев
  • Сообщений: 3810
  • Репутация:127

    [+] [-]
В GRUB2 команда search откровенно глючит. Нет смысла обсуждать "работает/не работает".
В папке могут лежать два файла, один будет найден, другой - нет. В чём закономерность - мне лично не известно.

[Цитировать]

    MBTY
  • 1499
  • Стаж: 9 лет 2 месяца
  • Сообщений: 86
  • Репутация:9

    [+] [-]
Здравствуйте все. Пилю меню для grub2(efi). Есть пункты загрузки всякого для х64, а так же есть пункты для x86. Хочется, чтобы автоматически показывались только те пункты, которые способны загрузиться.
Чтото типа "Если ахитектура х64 > Строим меню Ентри." Не нашел в гугле переменной, которая или показывала бы разрядность текущего загруженного груба или имя файла текущего загруженного груба. Это вообще возможно?

[Цитировать]

    xnik
  • 19473
  • Стаж: 6 лет
  • Сообщений: 486
  • Репутация:11

    [+] [-]
  • Откуда: СССР
Чтото типа "Если ахитектура х64 > Строим меню Ентри." Не нашел в гугле переменной, которая или показывала бы разрядность текущего загруженного груба или имя файла текущего загруженного груба. Это вообще возможно?
где то я видел такое, сейчас не помню
надо изучать язык Grub2
легче компелировать загрузчик под раздельный конфиг

[Цитировать]

    MBTY
  • 1499
  • Стаж: 9 лет 2 месяца
  • Сообщений: 86
  • Репутация:9

    [+] [-]
https://unix.stackexchange.com/questions/62505/can-...ions-accordingly
Вот тут ответ, но это не совсем ответ... Потому что был у меня планшет, у которого процессор был вполне себе с поддержкой x64, а UEFI на нем была какого-то лешего х86. Но ставилась при этом на него тогда ещё Windows 8.1 x64
Нужна именно текущая используемая UEFI разрядность

[Цитировать]

    волчара
  • 253
  • Стаж: 9 лет 9 месяцев
  • Сообщений: 595
  • Репутация:44

    [+] [-]
  • Откуда: Омск
aa
103090Не нашел в гугле переменной, которая или показывала бы разрядность текущего загруженного груба или имя файла текущего загруженного груба. Это вообще возможно?
if [ "${grub_platform}" = "pc" ]; then
  Ваши менюшки 1
  elif [ "$grub_cpu" = "i386" ]; then
    Ваши менюшки  2
  fi
Поясню: Если загрузка легаси то появится Ваши менюшки 1, а если efi32 то Ваши менюшки 2
if [ "$grub_cpu" = "x86_64" ]; then
  Ваши менюшки 3
fi
Если загрузка efi64, то Ваши менюшки 3

[Цитировать]

    vovan1982
  • 214
  • Стаж: 9 лет 9 месяцев
  • Сообщений: 1129
  • Репутация:76

    [+] [-]
  • Откуда: Ростов-на-Дону
MBTY, aa Можно сразу несколько условий задавать
if [ ${grub_cpu} = "x86_64" -a ${grub_platform} = "efi" ]; then

[Цитировать]

    волчара
  • 253
  • Стаж: 9 лет 9 месяцев
  • Сообщений: 595
  • Репутация:44

    [+] [-]
  • Откуда: Омск
vovan1982, aa
Можно такой вариант применить
menuentry "Название меню" {
  if [ "${grub_platform}" = "efi" ]; then
    if [ "${grub_cpu}" = "x86_64" ]; then
      chainloader /bootx64.efi
    else
      chainloader /bootia32.efi
    fi
  else
    ntldr /bootmgr
  fi
}

[Цитировать]

    xnik
  • 19473
  • Стаж: 6 лет
  • Сообщений: 486
  • Репутация:11

    [+] [-]
  • Откуда: СССР
волчара,
а для ARM64 так будет?
if [ "$grub_cpu" = "arm64" ]; then
  Ваши менюшки 4
fi

Страница 4 из 5


Показать сообщения:    

Текущее время: 21-Ноя 14:06

Часовой пояс: UTC + 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы можете скачивать файлы