LINUX.ORG.RU

Запускается recovery environment вместо windows 10

 ,


0

1

Стоит arch и windows 10. В меню grub изначально не отобразился пункт windows 10, но есть windows recovery environment на разделе загрузчика винды. Выбирая этот пункт загружалась винда и все нормально. Но внезапно вместо винды таки начала загружаться среда восстановления. Это вообще глюк grub или банально винда полетела?

Настраивал grub так: sudo os-prober и sudo grub-mkconfig -o /boot/grub/grub.cfg больше ничего не делал.

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

[waitmar@revenge ~]$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 465,8G 0 disk ├─sda2 8:2 0 1K 0 part ├─sda5 8:5 0 92,8G 0 part └─sda6 8:6 0 220,6G 0 part /run/media/waitmar/DATA sdb 8:16 0 111,8G 0 disk ├─sdb1 8:17 0 68,4G 0 part / ├─sdb2 8:18 0 3,9G 0 part [SWAP] ├─sdb3 8:19 0 579M 0 part └─sdb4 8:20 0 39G 0 part sdc 8:32 0 596,2G 0 disk └─sdc1 8:33 0 596,2G 0 part /run/media/waitmar/78A4C8D32A1653CF

Да как его выровнять вертикально, черт побери?!

На чистый sdb SSD поставил arch, затем поставил винду. После этого сделал восстановление grub, т.к. винда его снесла. Сделал это командой sudo grub-install –root-directory=/mnt/ /dev/sdb, предварительно смонтировав системный раздел. Затем загрузившись со своего линукса выполнил команды выше для настройки grub. Вроде все

waitmar ()
Последнее исправление: waitmar (всего исправлений: 4)
Ответ на: комментарий от waitmar

Когда пишешь сообщение прямо под полем ввода есть ссылки на два типа разметки (какой у тебя включен я не знаю) markdown и lorcode Читать вокруг - полезно. Это не рекламные блоки висят.

А винда где стояла? И какой у тебя «биос», классический, или uefi? Если uefi, то в винду ты должен иметь возможность попасть и в обход груба, при включении компа Fкакаянить или Escape и должно показать опции загрузки. Если же ты на классике, то давай разбираться.

На каком диске стояла винда? На каком её загрузчик? На каком раздел восстановления? И где конкретно стоит линукс? в том что ты привёл нет форматов разделов.

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

Ну я в биосе включил legacy mode, по этому похоже uefi выключен

Обе системы находится на одном физическом SSD диске. Получается так:

  1. ext4 корневой раздел с линуксом
  2. swap
  3. ntfs windows Зарезервировано системой 580MB
  4. ntfs windows system

Не знаю важно ли это, но gparted показывает отсутствие любых флагов на 3 и 4 разделах.

Остальные два винта не имеют операционных систем

Пункт windows recovery environvent в grub указывает на раздел номер 3.

waitmar ()
Последнее исправление: waitmar (всего исправлений: 3)
Ответ на: комментарий от waitmar

биосе включил legacy mode

Пока что все говорит в пользу этого. Будем считать, что системы устанавливались в режиме легаси. Для прояснения текущей ситуации, линукс запускается?

Покажи содержимое grub.cfg. Посмотри на разделе sdb4, есть-ли файл /bootmgr.

andytux ()

Но внезапно вместо винды таки начала загружаться среда восстановления.

и какие варианты предлагает среда восстановления?

пробовал вариант восстановление при загрузке?

Deleted ()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от andytux

Линукс запускается. В корне sdb4 файла bootmgr нету. Но есть на sdb3. Я честно пытался сделать спойлер, я хз почему он не работает))

DO NOT EDIT THIS FILE

It is automatically generated by grub-mkconfig using templates

from /etc/grub.d and settings from /etc/default/grub

BEGIN /etc/grub.d/00_header

insmod part_gpt insmod part_msdos if [ -s $prefix/grubenv ]; then load_env fi if [ «${next_entry}» ] ; then set default=«${next_entry}» set next_entry= save_env next_entry set boot_once=true else set default=«0» fi

if [ x"${feature_menuentry_id}" = xy ]; then menuentry_id_option=«–id» else menuentry_id_option="" fi

export menuentry_id_option

if [ «${prev_saved_entry}» ]; then set saved_entry=«${prev_saved_entry}» save_env saved_entry set prev_saved_entry= save_env prev_saved_entry set boot_once=true fi

function savedefault { if [ -z «${boot_once}» ]; then saved_entry=«${chosen}» save_env saved_entry fi }

function load_video { if [ x$feature_all_video_module = xy ]; then insmod all_video else insmod efi_gop insmod efi_uga insmod ieee1275_fb insmod vbe insmod vga insmod video_bochs insmod video_cirrus fi }

if [ x$feature_default_font_path = xy ] ; then font=unicode else insmod part_msdos insmod ext2 set root=‘hd1,msdos1’ if [ x$feature_platform_search_hint = xy ]; then search –no-floppy –fs-uuid –set=root –hint-ieee1275=‘ieee1275//disk@0,msdos1’ –hint-bios=hd1,msdos1 –hint-efi=hd1,msdos1 –hint-baremetal=ahci1,msdos1 7ee236e1-87e8-435a-b50f-c5fd9868a60e else search –no-floppy –fs-uuid –set=root 7ee236e1-87e8-435a-b50f-c5fd9868a60e fi font=«/usr/share/grub/unicode.pf2» fi

if loadfont $font ; then set gfxmode=auto load_video insmod gfxterm set locale_dir=$prefix/locale set lang=ru_RU insmod gettext fi terminal_input console terminal_output gfxterm if [ x$feature_timeout_style = xy ] ; then set timeout_style=menu set timeout=1

Fallback normal timeout code in case the timeout_style feature is

unavailable.

else set timeout=1 fi

END /etc/grub.d/00_header

BEGIN /etc/grub.d/10_linux

menuentry ‘Arch Linux’ –class arch –class gnu-linux –class gnu –class os $menuentry_id_option ‘gnulinux-simple-7ee236e1-87e8-435a-b50f-c5fd9868a60e’ { load_video set gfxpayload=keep insmod gzio insmod part_msdos insmod ext2 set root=‘hd1,msdos1’ if [ x$feature_platform_search_hint = xy ]; then search –no-floppy –fs-uuid –set=root –hint-ieee1275=‘ieee1275//disk@0,msdos1’ –hint-bios=hd1,msdos1 –hint-efi=hd1,msdos1 –hint-baremetal=ahci1,msdos1 7ee236e1-87e8-435a-b50f-c5fd9868a60e else search –no-floppy –fs-uuid –set=root 7ee236e1-87e8-435a-b50f-c5fd9868a60e fi echo ‘Loading Linux linux …’ linux /boot/vmlinuz-linux root=UUID=7ee236e1-87e8-435a-b50f-c5fd9868a60e rw loglevel=3 echo ‘Loading initial ramdisk …’ initrd /boot/intel-ucode.img /boot/initramfs-linux.img } submenu ‘Advanced options for Arch Linux’ $menuentry_id_option ‘gnulinux-advanced-7ee236e1-87e8-435a-b50f-c5fd9868a60e’ { menuentry ‘Arch Linux, with Linux linux’ –class arch –class gnu-linux –class gnu –class os $menuentry_id_option ‘gnulinux-linux-advanced-7ee236e1-87e8-435a-b50f-c5fd9868a60e’ { load_video set gfxpayload=keep insmod gzio insmod part_msdos insmod ext2 set root=‘hd1,msdos1’ if [ x$feature_platform_search_hint = xy ]; then search –no-floppy –fs-uuid –set=root –hint-ieee1275=‘ieee1275//disk@0,msdos1’ –hint-bios=hd1,msdos1 –hint-efi=hd1,msdos1 –hint-baremetal=ahci1,msdos1 7ee236e1-87e8-435a-b50f-c5fd9868a60e else search –no-floppy –fs-uuid –set=root 7ee236e1-87e8-435a-b50f-c5fd9868a60e fi echo ‘Loading Linux linux …’ linux /boot/vmlinuz-linux root=UUID=7ee236e1-87e8-435a-b50f-c5fd9868a60e rw loglevel=3 echo ‘Loading initial ramdisk …’ initrd /boot/intel-ucode.img /boot/initramfs-linux.img } menuentry ‘Arch Linux, with Linux linux (fallback initramfs)’ –class arch –class gnu-linux –class gnu –class os $menuentry_id_option ‘gnulinux-linux-fallback-7ee236e1-87e8-435a-b50f-c5fd9868a60e’ { load_video set gfxpayload=keep insmod gzio insmod part_msdos insmod ext2 set root=‘hd1,msdos1’ if [ x$feature_platform_search_hint = xy ]; then search –no-floppy –fs-uuid –set=root –hint-ieee1275=‘ieee1275//disk@0,msdos1’ –hint-bios=hd1,msdos1 –hint-efi=hd1,msdos1 –hint-baremetal=ahci1,msdos1 7ee236e1-87e8-435a-b50f-c5fd9868a60e else search –no-floppy –fs-uuid –set=root 7ee236e1-87e8-435a-b50f-c5fd9868a60e fi echo ‘Loading Linux linux …’ linux /boot/vmlinuz-linux root=UUID=7ee236e1-87e8-435a-b50f-c5fd9868a60e rw loglevel=3 echo ‘Loading initial ramdisk …’ initrd /boot/initramfs-linux-fallback.img } }

END /etc/grub.d/10_linux

BEGIN /etc/grub.d/20_linux_xen

END /etc/grub.d/20_linux_xen

BEGIN /etc/grub.d/30_os-prober

menuentry ‘Windows Recovery Environment (on /dev/sdb3)’ –class windows –class os $menuentry_id_option ‘osprober-chain-5E9E33349E330455’ { insmod part_msdos insmod ntfs set root=‘hd1,msdos3’ if [ x$feature_platform_search_hint = xy ]; then search –no-floppy –fs-uuid –set=root –hint-ieee1275=‘ieee1275//disk@0,msdos3’ –hint-bios=hd1,msdos3 –hint-efi=hd1,msdos3 –hint-baremetal=ahci1,msdos3 5E9E33349E330455 else search –no-floppy –fs-uuid –set=root 5E9E33349E330455 fi parttool ${root} hidden- drivemap -s (hd0) ${root} chainloader +1 }

END /etc/grub.d/30_os-prober

BEGIN /etc/grub.d/40_custom

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.

END /etc/grub.d/40_custom

BEGIN /etc/grub.d/41_custom

if [ -f ${config_directory}/custom.cfg ]; then source ${config_directory}/custom.cfg elif [ -z «${config_directory}» -a -f $prefix/custom.cfg ]; then source $prefix/custom.cfg; fi

END /etc/grub.d/41_custom

waitmar ()
Последнее исправление: waitmar (всего исправлений: 1)
Ответ на: комментарий от Deleted

Весь стандартный набор, пока еще не пробовал восстанавливать. К слову безопасный режим не запускает, выдает не гуглящуюся ошибку с одним не существующим символом,выглядит как dD0D0D0f при чем вторая D отзеркалена

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

В корне sdb4 файла bootmgr нету

Загрузчика виндовс нет, никакая магия не поможет тебе запустить виндовс. Нужно начинать с восстановления загрузки виндовс. После этого, естесственно, придется восстанавливать груб. Насколько смог разобрать конфиг груба, средства восстановления, грубо говоря, запускаются столь запутанно, что хрен разберешь. По опыту, зачастую они оказываются бесполезны, все равно требуют установочный диск, только занимают место и вносят дополнительную путаницу.

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

Не знаю важно ли это, но gparted показывает отсутствие любых флагов на 3 и 4 разделах ntfs

Для загрузки винды из grub это не важно. А вот если будешь применять активатор, то виндовый раздел должен быть активным, иначе он не сработает. А также желательно ставить винду на активный раздел. Да и линукс тоже желательно ставить, если есть где-нибудь активный раздел: я как-то накололся, установщик Магеи сделал раздел активным, зачем-то из-за этого попросил перезагрузку, в добавок не до конца отформатировал раздел для установки (только создал), в результате в убунту там вылез призрак прошлой ФС. В общем, умора. Активность желательна. Кстати, винда при установке все номера разделов перенумеровывает по порядку (если они таковыми не были).

xomon47 ()
Последнее исправление: xomon47 (всего исправлений: 1)
Ответ на: комментарий от waitmar

включи обратно uefi и посмотри что там. Если винда была настроена грузиться ТОЛЬКО с uefi раздела (я так понял .то твой sdb3), то груб в режиме биоса её просто не видит. А восстановочный раздел всегда должен работать и оттуда и отсюда.

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

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

Блин. я глаза сломал пока разглядывал. Оберни в тэг code

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

винда стояла в первом разделе и остался только уефишный загрузчик

Конечно всякое бывает, но ЕФИ-шной виндой там даже не пахнет.

Во первых, нет ESP-раздела. Во вторых, в ЕФИ-режиме винда требует GPT-разметку, это ее бзик. В этом случае в конфиге груб было-бы «hd1,gpt3», а у него «hd1,msdos3». В третьих, в ЕФИ-режиме не запускается через «chainloader +1».

andytux ()
Последнее исправление: andytux (всего исправлений: 2)
Ответ на: комментарий от ChekPuk

В режиме UEFI, не запускается вообще ничего, выбрасывает в настройки биоса
Так оно ж раньше работало. Да, писало Recovery environment вместо Windows 10, но десятка грузилась исправно по этому пункту меню. Вроде ничего не трогал ни в биосе ни в grub, само сломалось. Наверное все таки проблема в винде, как говорит товарищ выше - отсутствует загрузчик

waitmar ()
Последнее исправление: waitmar (всего исправлений: 2)
Ответ на: комментарий от andytux

А может и напутал. Такую кашу читать... Тогда ему в конфиге груба надо создать блок с подходящим блоком в разделе который создал os-prober. Что-то типа такого: https://www.gnu.org/software/grub/manual/grub/html_node/Chain_002dloading.html Только set root=(hd1,4)

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

ему в конфиге груба надо создать блок с подходящим блоком в разделе который создал os-prober

Бесполезно. Нужен bootmgr и соответствующая ему обвязка, которая обычно находится в каталоге /boot. А в какой части конфига груба будет код вообще до фонаря.

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

написано предупреждение, что нельзя редактировать конфиг файл

Можно. Иногда даже нужно. Например временные изменеия, на попробовать, вношу непосредственно в конфиг. Если после этого запустить обновление конфига, то он вернется к состоянию до редактирования.

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

Был бы этот комп под рукой - посмотрел бы что там. А так, он и сам не знает где у него что было и куда поставил. а так, гадать, что он куда...

Пусть дитя играется, винду переустанавливает. А линукс ставить рядом с виндой, на таком маленьком диске - тут хоть что-то понимать надо.

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

Что в твоём понимании «системный раздел»? Вот и наразделял. А тебя не смущает, что ты отвёл под винду даже меньше чем под линукс? Как там обновление на винде, работает? Грозились отключить на дисках, где нет 30 гигов свободного места. А линуксу - да, раздолье на таком диске.

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

Самое простое, во что можно «поиграть». Скопировать bootmgr с раздела sdb3 на sdb4. Или из исо-образа виндовс. Если остальная обвязка исправна, то возможно сработает. Код, для конфига груб можно взять здесь. Выглядит монструозно, но годится для запуска «любой виндовс». Поиск осуществляет по имени файла. Но, например, на разделе восстановления и у самой виндовс имя файла одинаковое, какой первый попадется, тот и запустит. Я поступаю так. На раздел sdb4 копирую загрузчик под именем bootmgr4. В конфиге груб, в переменной указываю это имя файла: «src=/bootmgr4».

andytux ()