После установки linux пропал windows 10

  • Печать

Страницы: [1]   Вниз

Тема: После установки Ubuntu 20.04 пропал Windows 10 из grub2 [Решено]  (Прочитано 10096 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн
mrchals

Здравствуйте. Установил Ubuntu 20.04 рядом в Windows 10, однако grub2 не видит Windows 10.
Изначально пытался решить проблему с помощью boot-repair — он находит Windows 10 (на sda2), однако не может восстановить и пишет

«LegacyWindows detected. Please enable BIOS-compatibility/CSM/Legacy mode in your UEFI firmware, and use this software from a live-CD (or live-USB).».

Я отключил «fast boot» и установил «UEFI and LEGACY» в настройках BIOS, однако это не помогло.

Я подозреваю, что это может возникнуть вследствие того, что Windows 10 находится в состоянии «Hibernation». Отключить этого состояние возможно в настройках Windows, только теперь у меня нет возможности запустить Windows, т.к. его не предлагает grub2. Получается что я застрял?

Я пытался убрать состояние «Hibernation» с помощью:

sudo ntfsfix /dev/sda2Но это не помогло.

Подскажите, можно ли что либо сделать в такой ситуации?


ТС не появлялся на Форуме более трех месяцев по состоянию на 19/03/2021 (последняя явка: 07/11/2020). Модератором раздела принято решение закрыть тему.
—zg_nico

« Последнее редактирование: 19 Марта 2021, 14:30:14 от zg_nico »


Оффлайн
andytux

это может возникнуть вследствие того, что Windows 10 находится в состоянии «Hibernation

Эта беда скажется в другом месте. В данном случае она пока не мешает. Ты нарушил другое правило.

LegacyWindows detected

Вроде как говорит, что Виндовс в режиме легаси.
Все должно быть в одном режиме. Поищи по форуму.
На скорую руку, вот и вот..


Оффлайн
zg_nico

только теперь у меня нет возможности запустить Windows

Документацию к материнской плате посмотрите. Есть такая штука, называется bootmenu. Если у Вас UEFI поддерживает запуск одновременно с EFI-систем и Legacy-систем, не требуя при этом переключений режима загрузки, то при загрузке вызвав это bootmenu (типовые варианты, которые попадались мне: Esc, F5, F8, F12, — одна из этих клавиш при загрузке; свою клавишу смотрите в документации к материнской плате или документации к ноутбуку, если у Вас таковой) Вы можете выбрать с какого источника пойдет загрузка. И windows (если Вы ее разметкой не убили) должна в том перечне присутствовать.

Подскажите, можно ли что либо сделать в такой ситуации?

Как совершенно верно заметил ранее andytux, привести обе системы к одному режиму. Для этого либо переустановить Ubuntu/Windows, либо должным образом настроить Ubuntu/Windows. Смотря что выберете. Переустановка мне видится уж больно радикальным вариантом. Я бы ее отложил на крайний случай, а рассмотрел один из алгоритмов на Вашем месте:
1) Если настраивать Ubuntu. Предполагая, что Windows в режиме legacy, и не желая этого менять, можно установить иной загрузчик на ubuntu и заморочиться с миграцией Ubuntu на legacy. Успех предприятия не гарантирован, т.к. чёткого мануала от и до по сети мне для данного алгоритма не попадалось. Тем не менее, теоретически допускаю что этот вариант возможен, хоть я бы и не рекомендовал по нему идти.
2) Если настраивать windows10. Выходит за рамки данного форума. Можете обратиться на форум, посвященный windows, или создать отдельный топик в разделе «Разговоры обо всем» нашего форума, ибо сказано

Тем не менее, установленные в Legacy режиме системы линейки windows 7 [x64], windows 10 [x32/x64] можно перевести из режима legacy в режим uefi практически не заморачиваясь. Вот пример подобной миграции для win7. Действия, в сущности, аналогичные должны предприниматься для всех ОС из перечня выше. Следует понимать, что при экспериментах можно похоронить имеющуюся систему, так что до экспериментов следует обзавестись резервной копией разделов с windows, дабы экспериментировать можно было, не опасаясь.

Thunderobot G150-D2: Intel SkyLake Core i7-6700HQ 2.60GHz, 8Gb DDR4 2133 MHz, Intel HD530, NVidia GeForce GTX 960M 2Gb.  Ubuntu 16.04 64x [Unity], KUbuntu 18.04 64x.


Оффлайн
Дюшик

mrchals,
Загрузитесь в Ubuntu и покажите вывод

sudo parted -l
Вывод можно просто скопировать и вставить в сообщение.


Оффлайн
mrchals

Дюшик,

Вывод после выполнения команды sudo parted -l следующий:

Model: ATA WDC WD10EZEX-00W (scsi)
Disk /dev/sda: 1000GB
Sector size (logical/physical): 512B/4096B
Partition Table: msdos
Disk Flags:

Number  Start   End     Size   Type     File system  Flags
 1      1049kB  525MB   524MB  primary  ntfs         boot
 2      525MB   370GB   370GB  primary  ntfs
 3      370GB   371GB   907MB  primary  ntfs         msftres
 4      371GB   1000GB  629GB  primary  ntfs

Model: ATA WDC WD30EFRX-68E (scsi)
Disk /dev/sdb: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system     Name                          Flags
 1      17,4kB  134MB   134MB                   Microsoft reserved partition  msftres
 2      135MB   1515GB  1515GB  ntfs            Basic data partition          msftdata
 3      1515GB  1515GB  1049kB
 4      1515GB  1515GB  538MB   fat32           EFI System Partition          boot, esp
 6      1515GB  2992GB  1477GB  ext4
 5      2992GB  3001GB  8543MB  linux-swap(v1)                                swap

« Последнее редактирование: 13 Июля 2020, 22:52:57 от Aleksandru »


Оффлайн
vladimirzhuravlev

 На диске /dev/sdb: 3001GB всё нормально для двух систем в параллели, что на /dev/sda: 1000GB делает загрузочный раздел ? Отключи временно этот диск. Или у тебя винда есть на sda установленная в легаси, а linux на sdb установлен в режиме UEFI плюс и на этом диске винда установленная в UEFI и  ? Но выше ведь написано, что так не правильно. Зайти в винду отключить гибернацию можно попробовать загрузившись с ремонтной виндовой флешки, обычно там в опциях присутствует поиск винды и её загрузка.
 И на будущее, имхо, две системы заиметь на одном диске проще для новичка, чем разбрасывать их по разным. И не делай установку linux в автомате, применяй свою разметку.


Оффлайн
mrchals

vladimirzhuravlev,

Или у тебя винда есть на sda установленная в легаси, а linux на sdb установлен в режиме UEFI плюс и на этом диске винда установленная в UEFI и  ?

Да, я думаю у меня все таким образом и установленно, как вы выше и описали. Вообще изначально у меня рядом с windows 10 стояла ubuntu 16.04, но затем я решил поставить ubuntu 20.04, только установил ее не рядом с другими ОС, а вместо ubuntu 16.04 (при установке предлагался такой пункт с удалением ubuntu 16.04)

Я проделывал подобную операцию на другом компьютере (ноутбуке) — там в grub2 выбор windows 10 сохранился. Однако, когда попробовал на основном ПК — возникли вышеописанные проблемы.

Постараюсь решить проблему — отключением гибернации с помощью ремонтной флешки (hiren’s bootcd) и отпишусь о результах, хотя маловероятно, что проблема в гибернации, как уже писали выше.


Оффлайн
vladimirzhuravlev

Лично для меня не всё понятно… рядом это на одном компе или на одном диске ? На каких дисках что ранее установлено было и на каких дисках что установлено сейчас, в каких режимах ?

« Последнее редактирование: 14 Июля 2020, 01:09:22 от vladimirzhuravlev »


Оффлайн
Дюшик

Если Винды нет в GRUB, то она должна быть в BIOS (строка Windows Boot Manager). Можно в BIOS назначить загрузку с   Windows Boot Manager, а лучше через Boot Menu (F12 или другая клавиша) выбрать Windows Boot Manager, должна будет загрузиться Винда.

На /dev/sda есть установленная Винда? Если есть, то крайний случай можно в её, добавить загрузку Винды с /dev/sdb.

Во время установки Ubuntu, Вы раздел EFI случайно не отформатировали? Возможно Виндового загрузчика вообще нет, поэтому его не видят GRUB и boot-repair.

« Последнее редактирование: 14 Июля 2020, 14:31:18 от Дюшик »


Оффлайн
mrchals

Дюшик,

К сожалению при выборе boot device нет windows boot manager предложены варианты:

Please select boot device:
- ubuntu
- WDC WD10EZEX-00WN4A0
- WDC WD30EFRX-68EUZN0
- UEFI: Built-in EFI Shell
- Enter Setup

При выборе из этого меню дисков WDC… переходит на консоль:

error: no such device: 545ddbd-baea-...-...4745.
Entering rescue mode...
grub rescure> _


Оффлайн
Дюшик

mrchals,
Если Windows Boot Manager нет, то вариантов только два.

Не понятно так же, почему при выборе в Boot menu диска WDC WD10EZEX-00WN4A0 появляется консоль GRUB. Откуда там взяться GRUB’у.
Я бы предложил такой вариант.

Перезагрузиться, в Boot menu выбрать диск WDC WD10EZEX-00WN4A0 должна будет загрузиться Windows c /dev/sda2. В BIOS должен быть выбран режим загрузки UEFI and LEGACY.

Подключить второй жесткий диск и временно загружать системы через Boot menu. Отписаться о результатах.


Оффлайн
mrchals

Всем спасибо за помощь. Я все таки смог восстановить Windows 10. Теперь я могу загрузить и ubuntu и Windows 10 :coolsmiley:

Изначально я пытался из установленной ubuntu запустить boot-repair
Однако получал сообщение:

«LegacyWindows detected. Please enable BIOS-compatibility/CSM/Legacy mode in your UEFI firmware, and use this software from a live-CD (or live-USB).».

Вчитавшись в сообщение, я понял, что от меня требуется запустить boot-repair из под live-CD (or live-USB).

Я вставил установочную флешку с образом ubuntu и выбрал «Try ubuntu». И уже там я смог запустить boot-repair, который восстановил мне MBR для Windows 10 на жестком диске. Конечно, теперь мне приходится при загрузке выбирать жесткий диск, а не использовать grub, но думаю, если заморочиться, то можно более грамотно настроить grub.

Мне немного помогла эта статья https://askubuntu.com/questions/1088681/how-to-help-grub-find-windows-10-boot-manager


Оффлайн
andytux

я понял, что от меня требуется запустить boot-repair из под live-CD

Неправильно понял. В сообщении говорится, что обнвружена Виндовс в режиме легаси и тебе предлагают включить в УЕФИ этот режим.

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

Нет. Никакие заморочки тебе не помогут.
Повторяю еще раз, все должно быть в одном режиме: УЕФИ, загрузчики, системы.
Только в этом случае ты сможеть без ковыряния в УЕФИ загружать загрузчиком обе системы.
Если уж ориентироваться на Виндовс, она у тебя в режиме легаси.
Нужно загрузить boot-reair в режиме легаси и установить грубПС. Перед этим хорошенько подумать, куда его устанавливать.
Второй вариант может оказаться проще. Переустановить *бунту в режиме легаси. Но обязательно обратить внимание, что она запущена в режиме легаси. При этом уже на этапе разметки она должна увидеть Виндовс. Если не видит, то не в том режиме.


Оффлайн
Дюшик

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

В зависимости от разрядности Windows есть варианты:
Общий вариант (не зависящий от разрядности Винды), это в GRUB прописать «обманку». Вот эдесь нажать второй способ.
Если Винда х64, то есть нщё вариант, но о нём говорить пока рано (нужно узнать разрядность Винды).

« Последнее редактирование: 25 Июля 2020, 10:27:36 от Дюшик »


  • Печать

Страницы: [1]   Вверх

Многие новички и опытные пользователи Linux держат также установленной на своем компьютере операционную систему Windows, например, последней, десятой версии. Новичкам это нужно чтобы иметь запасную операционную систему, к которой они смогут вернуться, если их Linux сломается. А для опытных пользователей важно программное обеспечение, которое не поддерживается ни в Linux, ни даже с помощью эмулятора Wine, а таких программ достаточно много.

Но временами случается такая ситуация, что загрузчик Grub не распознает установленную Windows и не отображает ее в списке систем для загрузки. В этой статье мы рассмотрим почему возникает ошибка grub не видит Windows 10 и как ее решить.

Причин такой ошибки может быть несколько, начиная от того, что система установлена на другом жестком диске, и заканчивая неизвестными глюками пакета os-prober, который и занимается определением операционных систем в Linux. Также, если у вас есть несколько версий Windows на компьютере, то программа может видеть только одну из них.

Сначала можно попытаться сделать наш с Windows раздел более видимым для программы. Для этого примонтируйте его в какую-либо папку. Например, в /mnt/:

sudo mount -t ntfs-3g -o ro /dev/sda1

Я предполагаю, что система Windows установлена на разделе, который определяется в Linux, как /dev/sda1. Дальше запустите утилиту os-prober:

sudo os-prober

Если программа обнаружит Windows, то вам останется обновить конфигурацию загрузчика Grub:

sudo update-grub

Или:

sudo grub2-mkconfig -o /boot/grub/grub.cfg

Если же этот способ не сработает, а он, скорее всего, не сработает, то вам останется только вручную добавить пункт меню для Windows. Это не самое простое, но зато эффективное решение. Сначала нам нужно узнать UUID раздела диска, на который установлена Windows, например, /dev/sda1:

blkid /dev/sda1

Затем откройте файл /etc/grub.d/40_custom и добавьте туда такой код:

menuentry "Windows 10" {
insmod ntfs
set root='(hd0,1)'
search --no-floppy --fs-uuid --set B4A6AEB7A6AE7A0E
chainloader +1
}

Если кратко, то здесь мы устанавливаем в качестве корня первый раздел первого диска, а затем указываем загрузчику, что нужно найти раздел с нужным нам UUID. Затем передаем управление загрузчику на этом разделе с помощью chainloader. Дальше осталось обновить конфигурацию Grub:

sudo update-grub

Мы использовали такой метод потому что теперь настройка не собьется после обновления ядра или другого процесса, инициализирующего обновление конфигурации. Потому что если бы мы добавили эти строки в /boot/grub/grub.cfg, то они были бы перезаписаны если не при первом, то при одном из следующих обновлений системы.

Когда конфигурация обновлена вы можете перезагрузить компьютер и загружать Windows с помощью нового пункта. Таким образом, можно добавить несколько пунктов, только для разных разделов нужно указывать их UUID.

Выводы

В этой небольшой статье мы разобрали что делать когда у вас возникнет ошибка grub не видит windows 10 и какими способами ее можно исправить. На самом деле решение очень простое, если вы не используете систему с UEFI. В варианте с EFI загрузка Windows управляется не Grub, а загрузчиком UEFI, но при использовании Linux рекомендуется отключить эту технологию.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Об авторе

Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux, интересуюсь всем, что связано с информационными технологиями и современной наукой.

by Milan Stanojevic

Milan has been enthusiastic about technology ever since his childhood days, and this led him to take interest in all PC-related technologies. He’s a PC enthusiast and he… read more


Updated on

can't access windows 10 after installing ubuntu

Both Windows 10 and Ubuntu have their cons and pros. This is why many users decide to get both operating systems on their computers.

However, people encountered several issues when trying to get them on the same machine. Users reported that they lost access to Windows 10 after installing Ubuntu.

This is a major problem for many users and today we will show you how to solve this issue.

What to do if you can’t access Windows 10 after installing Ubuntu?

1. Make some changes in the GRUB loader

  1. Insert the installation disk to boot with Windows.
  2. Select Recovery, and then select Command Prompt.
  3. Type the following commands:
  • bootrec /FixMbr
  • bootrec /FixBoot
  • bootrec /ScanOs
  • bootrec /RebuildBcd

4. Reboot the operating system.


Encountering dual boot problems in Windows 10 and Linux? We prepared this guide for you!


2. Set up partitions

If the method above didn’t work, try to set up your partitions. Open again the Command Prompt.

Enter the commands below. These command lines will select the first disk along with a list of all the partitions from this disk.

  • diskpart
  • sel disk 0
  • list vol
  1. Search the volume item with the Fs column FAT32 (you should format the EFI partition under FAT32).
  2. Type the command “sel vol x”, where “x” is the volume number of your EFI partition.
  3. Choose a letter for this partition. It is worth mentioning that this letter must be different from those already chosen for other partitions.
  4. Type this command to assign the letter: “assign letter=z:”
  5. After the success message appears, type “exit” to quit DiskPart.
  6. Type this command in Command Prompt: “cd /d z:EFIMicrosoftBoot”, where “z” is the letter for your new partition.
  7. Type the following command to repair the volume: “bootrec /fixboot”.
  8. Backup the old BCD with this command: “ren BCD BCD.backup”.
  9. Create a new BCD with the following command: “bcdboot c:\Windows /l en-us /s z: /f ALL”. Here, Windows is on “c:”. Replace if necessary.
  10. Reboot.

Conclusion

As you can see, this is a serious issue that requires some technical operations.

Nevertheless, if you follow our step-by-step instructions, you will solve the problem in no time and you will recover your Windows 10.

Also, it is worth adding that this issue appears if you don’t include the Windows 10 entry in the GRUB loader when you installed Linux.

Did our solutions work for you? Do let us know in the comments section below!

RELATED ARTICLES YOU NEED TO CHECK OUT:

  • How to fix Legacy Boot issues on Windows 10
  • How to Properly Dual-Boot Windows 10 With Another OS
  • Windows 10 Ubuntu dual boot not working [QUICK SOLUTIONS]

newsletter icon

Способ 1 (Правильный)
Если не затерли загрузочный раздел с Windows, можете попробовать из Ubuntu (терминал):

sudo add-apt-repository ppa:yannubuntu/boot-repair  
sudo apt update  
sudo apt install -y boot-repair && boot-repair

После запуска Boot Repair найдите и выберите Дополнительные параметры—>Другие параметры—>Восстановить загрузочные файлы Windows. Флаг загрузки должен быть размещен на том же разделе, на котором установлена ​​Ubuntu. Раздел, на котором установлена ​​Ubuntu, можно определить из приложения Disks, встроенного в Ubuntu.

Способ 2 (Неправильный), но для экстренного восстановления пойдет.
Также из терминала Ubuntu:
sudo nano /boot/grub/grub.cfg
Находим почти в конце файла chainloader +1 и на следующей строке добавляем ntldr /bootmgr

...
drivemap -s (hd0) ${root}
chainloader +1
ntldr /bootmgr
}
...

В статье описывается приём, с помощью которого можно вернуть запись об операционной системе Windows, когда после появления загрузчика Grub вы вдруг обнаруживаете, что пропала Windows из списка установленных систем. Всем привет, короткое эссе на тему как вернуть пропавшую запись об установленной Windows в Grub-загрузчик Кали Линукс. Такая беда подстерегла меня после очередного обновления Кали, и после перезагрузки на экране в меню загрузчика я заметил, что в нём чего-то не хватает:

пропала windows из grub

а где же windows?…

Речь, конечно же, не идёт о потере Windows и файлов, в ней содержащихся. Просто как и загрузчик Windows, Grub-загрузчик тоже может «потерять память». Тем более, что мы имеем дело с такой недружелюбной сборкой Debian как Кали. Но ладно, специальных инструментов нам никаких не понадобится, просто загружаемся в Кали привычным порядком…

Пропала Windows: возвращаем запись о Windows в Grub-загрузчик

Откроем окно терминала и вводим команду (если вы не root-пользователь, не забудьте вводит все команды через sudo):

os-prober

Линукс прошерстит  конфигурацию загрузчика, и, если вы не столкнулись с куда более серьёзными проблемами, он обязательно обнаружит запись о Windows:

os-prober

Теперь закрепляем обнаруженную запись в загрузчике командой:

update-grub

update-grub

Перезагружаемся. У меня всё стало на свои места:

изменить порядок загрузки в grub

Ничего не получается…

Пакет os-prober установлен, терминал ошибок не возвращает, однако запись о Windows всё не появляется. Давайте внесём запись о Windows в загрузчик вручную.

  • Через терминал откроем документ текстовым редактором типа leafpad:
cd /etc/grub.d/
 leafpad 40_custom
  • Куда внесём строчки типа (вводим через Enter):

menuentry «Windows X» {

        set root='(hd0,X)’

        chainloader +1

}

где Windows X — имя системы так, как вы хотите её видеть (в принципе, можете написать что угодно, в том числе по-русски); hd0,X — диск и номер раздела, на которых Windows находится. 0 — единственный жёсткий диск (1 — второй, 2 — третий и т.д), Х — номер нужного раздела sda с Windows. Если вы не уверены в номере раздела, это легко установить, запустив, к примеру, gparted из терминала. Оттуда всё хорошо видно, где лежит Windows.

  • сохраните файл и затем запустите команду:
grub-mkconfig -o /boot/grub/grub.cfg
  • Смотрим на ответ терминала. Должно быть примерно так:

windows пропала из grub

  • Перезагрузитесь.

Успехов.

Другие наши интересноые статьи:

  • После установки windows getting ready
  • После установки linux перестал загружаться windows 10
  • После установки windows 10 не видит диск d после установки windows
  • После установки linux нет выбора windows
  • После установки windows 10 нет изображения

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии