LINUX.ORG.RU

При загрузке компьютера отсутствует окно выбора ОС после установки Linux Mint 19.3 к Windows 8.1

 ,


0

1

Здравствуйте! Впервые обращаюсь с каким-либо техническим вопросом на форуме. Я абсолютный новичок в Linux, и хотел с сегодняшнего дня начать своё знакомство с Linux Mint 19.3. Сделал всё как было написано в инструкциях и сказано в видео-гайдах на YouTube. Linux работает идеально, но он сразу запускается, не выдав окно выбора ОС. Как мне сделать этот выбор, ибо у меня очень много важных программ и материалов на Windows для работы, и если я не верну к ней доступ, то это будет ужасно. Что мне сделать, если я даже не умею здесь пользоваться терминалом?

Ответ на: комментарий от KILLERIX_FX

Хочу спросить. Если я сейчас удалю Linux Mint, то это ещё не значит, что я этим способом вернусь на Windows без переустановки?

KILLERIX_FX
() автор топика
Ответ на: комментарий от KILLERIX_FX

Не надо ничего удалять или переустанавливать. Можешь, пока с grub не решиться, в System Setup выбрать загрузку windows. Mint при этом грузиться перестанет. Не знаю может там и настроить можно загрузку разных ОС, хотя это вряд ли.

anonymous
()
Ответ на: комментарий от KILLERIX_FX

в общем я разобрался, где тебя подставил :(

сохрани этот текст, как /etc/grub.d/40_custom и обнови конфиг

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry "Windows" {
 regexp -s root '\((.+)\)' "$cmdpath"
 chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
anonymous
()
Ответ на: комментарий от KILLERIX_FX

я выложил этот файл на pastebin

тебе нужно его загрузить и «залить» в /etc/grub.d/40_custom командами

sudo bash
cat "имя загруженного файла" > /etc/grub.d/40_custom

проверить права и пользователя (в этой чехарде могло что-то изменится)

ls -l /etc/grub.d/40_custom

правильный ответ

-rwxr-xr-x 1 root root ...

троеточием я заменил неважный нам вывод, если будет что-то другое пиши что не так. если всё совпало, обновляй конфиг.

и закрой оболочку суперпользователя командой exit.

anonymous
()
Ответ на: комментарий от anonymous

Простите, наверное глупый вопрос, но не могу не много разобраться. Терминал постоянно, как бы я не записывал, пишет «Нет такого файла или каталога», когда я прописываю имя загружаемого файла

KILLERIX_FX
() автор топика
Ответ на: комментарий от KILLERIX_FX

он же в каталоге Download (Загрузки или иначе как-то), а терминал вероятно в домашней директории пользователя. Не обижайся, я всё забываю что многое тебе неочевидно…

выполни в терминале

find ./ -name "имя файла"
anonymous
()
Ответ на: комментарий от anonymous

Вроде получилось файл залить, но при выполнении следующей команды выдаёт «-rw-r–r– 1 root root», а не «-rwxr-xr-x 1 root root»

KILLERIX_FX
() автор топика
Ответ на: комментарий от KILLERIX_FX

я вот думаю «а не ошибся ли я снова?». конфиг не обновляется?

тогда

sudo chmod +x /ect/grub.d/40_custom
ls -l /ect/grub.d/40_custom
less /ect/grub.d/40_custom

первая команда вернет права на исполнение файла. вторая позволит в этом убедиться. третья покажет содержимое файла

anonymous
()
Ответ на: комментарий от anonymous

О, после второй команды вывелось то, что нам требовалось: «-rwxr-xr-x 1 root root», вошёл в оболочку суперпользователя, ещё раз убедился в том, что вывелось то, что нам надо, обновил конфиг и опять вывелись эти ошибки: «https://pastebin.com/p7Lp1dVn»

KILLERIX_FX
() автор топика
Ответ на: комментарий от anonymous

Получилось! Разыскал в интернете команду по удалению файлов, разобрался, что эти файлы «40.custom.save.1» и т.д. понасоздавал я сам, видимо через Nano, когда разбирался в его функционале. Сейчас обновил конфиг с правами суперпользователя и мне написало: «Добавление записи в загрузочное меню для конфигурации с микропрограммой EFI завершено» - Это хороший знак?

KILLERIX_FX
() автор топика
Ответ на: комментарий от KILLERIX_FX

молодец, догадался убрать не нужное.

мне написало: «Добавление записи в загрузочное меню для конфигурации с микропрограммой EFI завершено» - Это хороший знак?

думаю, да. посмотри grub.cfg

cat /boot/grub/grub.cfg|grep windows

или

less /boot/grub/grub.cfg

если добавился пункт с windows, пора проверять работоспособность этого пункта :)

Удачи!

anonymous
()
Ответ на: комментарий от anonymous

Всё проделал, но пункта с Windows так и не появилось. Боюсь вот, чтобы загрузочные файлы винды не «затёрлись»

KILLERIX_FX
() автор топика
Ответ на: комментарий от KILLERIX_FX

пункта с Windows так и не появилось

Потому, что начали не с того конца.

Первое, что нужно сделать, выяснить, БИОС у тебя или УЕФИ. Вроде выяснили, что УЕФИ. Следующий шаг, какой режим включен в УЕФИ: ЕФИ или легаси.

Главное правило, все должно быть в одном режиме: УЕФИ, загрузчики, системы.

Без этого никакая магия не поможет тебе запускать системы.

Следующий шаг. Выяснить, в каком режиме запущен линукс. В файловом менеджере идешь в каталог /boot/grub. Если видишь в нем каталог i386-pc, то установлен грубПС. Если видишь каталог x86_64-efi, то установлен грубЕФИ. Зайди в каталог /sys/firmware. Если видишь там каталог efi, и в этом каталоге тоже есть файлы, то система запущена в режиме ЕФИ. Если каталога efi нет, то система запущена в режиме легаси. После этого выяснить, в каком режиме установлена Виндовс.

andytux ★★★★★
()
Ответ на: комментарий от andytux

любезный, не в коем случае не ставлю под сомнение ваши знания и опыт, но

  • значительную часть этого треда я пытался помочь ТС добавить в меню grub пункт для загрузки Windows … и ничего не получилось. Действительно, магия какая-то :(

  • Оставим за скобками содержание этого пункта (я вполне допускаю, что там что-то может быть не верно), но вот почему он не добавляется в конфиг? Вопрос о его работоспособности не стоит на повестке дня просто потому, что он не добавляется в конфиг.

Может вы можете пояснить почему его отвергают? Я, честное слово, уже не понимаю, почему легальным образом не получается изменить конфиг загрузчика.

anonymous
()
Ответ на: комментарий от anonymous

можете пояснить почему его отвергают?

Учитывая опыт ТС, сам боюсь того момента, когда придется объяснять ему, как редактировать конфиг. Честно говоря, в голом терминале или с помошью nano я бы не рискнул это делать. Без MC как без рук.

andytux ★★★★★
()
Ответ на: комментарий от KILLERIX_FX

эти вещи не взаимосвязаны

  • пункт с Windows в меню загрузчика
  • загрузочные файлы винды

если есть и то и другое, то windows будет загружаться из меню загрузчика Mint. только и всего.

Ладно, давай действительно проверим есть ли там загрузчик Windows. Раздел /dev/sda7 должен быть примонтирован в точку /boot/efi примонтирован?

mount|grep sda7
anonymous
()
Ответ на: комментарий от andytux

ну, не знаю… человеческий фактор (в данном случае ТС) причина очевидная. мне показалось, что он быстро учиться и элементарные ошибки сам устраняет. вроде бы все исправили, а результата нет :(

я подумал, что вы свежим взглядом укажете на какой-то очевидный ляп… я вот не вижу ничего «криминального».

anonymous
()
Ответ на: комментарий от anonymous

укажете на какой-то очевидный ляп…

Иногда, при генерации конфига, udate-grub видит ошибки и даже создает конфиг, но с другим именем (не помню с каким), но действующим остается старый. Иногда ошибка может попасть в новый конфиг. В этом случае бывает так, что часть конфига до ошибки выводится на экран и работает, а часть после ошибки не выводится. Поэтому новый, непроверенный код лучще помещать в конце конфига. Есть шанс, что хотя-бы часть конфига до ошибки останется рабочей.

Сегодня попробовал, добавил твой код в 40_custom. Конфиг сгенерировался без ошибок. Проверить работу не могу, нет УЕФИ, да и винды нет. Если проанализировать, то вторая строка вроде правильная, но чтобы она сработала, в первой нужно как минимум установить правильное значение переменной root. Не очень знаком с командой regexp, не уверен, что она делает то, что нужно.

andytux ★★★★★
()
Ответ на: комментарий от anonymous

Продолжаем разговор. Решил практически посмотреть. В конфиг груба добавил код:

menuentry "Windows" {
  echo "[$root] $cmdpath"
 regexp -s root '\((.+)\)' "$cmdpath"
 echo '[$root]; sleep -v 16
 chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}

До регекспа в переменной root (hd0,msdos1). Это было-бы правильным значенем. В переменной cmdpath (hd0). После регекспа в переменной root hd0, т.е. команда вырезала скобки. Но хоть со скобками, хоть без, это значение неверно. Загрузчик не будет найден.

andytux ★★★★★
()
22 мая 2020 г.
Ответ на: комментарий от andytux

Доброго времени суток. Столкнулся с такой же проблемой как ТС. После добавление строк в файл /etc/grub.d/40_custom , появилось меню grub и пункт меню windows. При выборе windows выводится сообщение:ошибка файл /EFI/Microsoft/boot/bootmgfw.efi не найден. windows установлен не в efi. Подскажите пожалуйста в каком направлении копать.

mikejdk
()
Ответ на: комментарий от mikejdk

После добавление строк в файл /etc/grub.d/40_custom

Каких строк?

Столкнулся с такой же проблемой как ТС

Ответь на все те вопросы, что в топике, на который ты ссылаешься.

andytux ★★★★★
()
Ответ на: комментарий от andytux

он пытается запускать windows установленную в legacy boot mode через uefi-загрузчик windows, которого есстествено нет. вопрос даже не в том, возможно ли такое провернуть технически. чел реально не понимает сути происходящего что делает.

anonymous
()
Ответ на: комментарий от anonymous

Я понимаю, что он не понимает. Но чтобы хоть как-то попытаться помочь, от него требуется немного больше, чем просто «не работает».

пытается запускать windows установленную в legacy boot mode через uefi-загрузчик windows

Даже это ни есть факт. Может в его случае все проще. «файл /EFI/Microsoft/boot/bootmgfw.efi не найден», но такого файла и не должно быть, если конечно это не опечатка. Обычно файл называется /EFI/Microsoft/Boot/bootmgfw.efi.

andytux ★★★★★
()
Ответ на: комментарий от andytux

Соглашусь, ничто не факт. Я опирался на его описание проблемы. Насколько он её верно описывает на самом деле неизвестно.

Обычно файл называется /EFI/Microsoft/Boot/bootmgfw.efi.

для UEFI регистр в именах имеет значение? Сколько видел EFI-разделов все были в FAT32 и вроде бы регистр влиять не должен. Как на самом деле?

anonymous
()
Ответ на: комментарий от anonymous

Вроде бы да. И по спецификации УЕФИ вроде регистронезависимы. Но этот файл ищет груб. А для него регистр имеет значение. Впрочем не буду спорить. Я как-то хотел проверить именно эту ситуацию, но руки не дошли. А сейчас под рукой нет ничего с УЕФИ.

andytux ★★★★★
()
Ответ на: комментарий от andytux

Но этот файл ищет груб.

могу ошибаться, но я представляю себе это так

  • grub обращается к модулю-драйверу ФС с запросом найти такой-то файл
  • драйвер выполняет поиск (не сам поиск, но какие-то операции для этого поиска – может я ошибаюсь)

поскольку FAT32 не чувствительна к регистру в имени файла, то указанное имя не должно вызывать проблем. Если, конечно, сам файл имеется. Но всё это теоретически, на практике не проверял.

anonymous
()
Ответ на: комментарий от anonymous

grub обращается к модулю-драйверу ФС…

Но можно трактовать и так: ФС возвращает имя файла, как оно есть. А оно состоит из знаков в разных регистрах, даже на FAT32. А принимающая программа (груб) уже решает, рассматривать это значение как регистронезависимое или нет. Нужно просто проверить на опыте.

andytux ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.