Двойная загрузка Ubuntu с Windows [dубликат]

Я установил Windows 7, который съел загрузочный файл Ubuntu. При запуске компьютера он теперь переходит прямо в Windows, не предоставляя мне возможность загрузки Ubuntu.

Как вернуть Ubuntu?

313
задан 28 October 2014 в 09:04

19 ответов

При установке Windows Windows предполагает, что это единственная операционная система (ОС) на компьютере или, по крайней мере, она не учитывает Linux. Таким образом, он заменяет GRUB собственным загрузчиком. Что вам нужно сделать, это заменить загрузчик Windows GRUB. Я видел различные инструкции по замене GRUB с помощью команд GRUB или некоторых таких, но для меня самый простой способ - просто chroot установить и запустить update-grub. chroot отлично, потому что он позволяет вам работать с вашей фактической установкой, а не пытаться перенаправить что-то здесь и там. Это действительно чисто.

Вот как:

Загрузитесь с живого компакт-диска или живого USB в режиме «Попробуйте Ubuntu». Определите номер раздела вашего основного раздела. sudo fdisk -l, sudo blkid или GParted (которые уже должны быть установлены по умолчанию в реальном сеансе) могут помочь вам здесь. В этом ответе я предполагаю, что это /dev/sda2, но убедитесь, что вы используете правильный номер раздела для своей системы! Если ваш основной раздел находится в LVM, вместо этого устройство будет расположено в /dev/mapper/, скорее всего, /dev/mapper/{volume}--{os}-root, где {volume} - это имя тома LVM, а {os} - операционная система. Выполните ls /dev/mapper для точного имени. Смонтируйте свой раздел: sudo mount /dev/sda2 /mnt #Replace sda2 with the partition from step 2 Если у вас есть отдельные секции /boot, /var или /usr, повторите шаги 2 и 3, чтобы установить эти разделы на /mnt/boot, /mnt/var и /mnt/usr соответственно. Например, sudo mount /dev/sdXW /mnt/boot sudo mount /dev/sdXY /mnt/var sudo mount /dev/sdXZ /mnt/usr заменяет sdXW, sdXY и sdXZ соответствующими номерами разделов. Привяжите некоторые другие необходимые вещи: for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done Если Ubuntu установлен в режиме EFI (см. Этот ответ, если вы не уверены), используйте sudo fdisk -l | grep -i efi или GParted, чтобы найти раздел EFI. Он будет иметь метку EFI. Подмонтируйте этот раздел, заменив sdXY на фактический номер раздела вашей системы: sudo mount /dev/sdXY /mnt/boot/efi chroot в вашу установку Ubuntu: sudo chroot /mnt . На этом этапе вы находитесь в своей установке, а не в реальном времени, и работаете как корень. Обновить grub: update-grub Если вы получаете ошибки или если переход к шагу 7 не устранил вашу проблему, перейдите к шагу 8. (В противном случае это необязательно.) В зависимости от вашей ситуации вам может потребоваться переустановить grub: grub-install /dev/sda update-grub # In order to find and add windows to grub menu. Если Ubuntu установлен в режиме EFI, а UUID раздела EFI изменен, вам может потребоваться обновить его в /etc/fstab. Сравните это: blkid | grep -i efi grep -i efi /etc/fstab Если текущий UUID раздела EFI (от blkid) отличается от значения, указанного в /etc/fstab, обновите /etc/fstab с текущим UUID. Если все работает без ошибок, тогда вы все настроены: exit sudo reboot На этом этапе вы должны нормально загрузиться.

Если вы не можете нормально загрузиться и не сделали шаг 8, потому что не было сообщений об ошибках, повторите попытку с шага 8.

Иногда, когда GRUB2 правильная настройка для ваших разделов, недостаточно, и вы должны фактически установить его (или переустановить) в главную загрузочную запись, которую делает шаг 8. Опыт, помогающий пользователям в чате показать, что шаг 8 иногда необходим, даже если сообщения об ошибках не отображаются.
309
ответ дан 17 July 2018 в 22:03

При установке Windows Windows предполагает, что это единственная операционная система (ОС) на компьютере или, по крайней мере, она не учитывает Linux. Таким образом, он заменяет GRUB собственным загрузчиком. Что вам нужно сделать, это заменить загрузчик Windows GRUB. Я видел различные инструкции по замене GRUB с помощью команд GRUB или некоторых таких, но для меня самый простой способ - просто chroot установить и запустить update-grub. chroot отлично, потому что он позволяет вам работать с вашей фактической установкой, а не пытаться перенаправить что-то здесь и там. Это действительно чисто.

Вот как:

Загрузитесь с живого компакт-диска или живого USB в режиме «Попробуйте Ubuntu». Определите номер раздела вашего основного раздела. sudo fdisk -l, sudo blkid или GParted (которые уже должны быть установлены по умолчанию в реальном сеансе) могут помочь вам здесь. В этом ответе я предполагаю, что это /dev/sda2, но убедитесь, что вы используете правильный номер раздела для своей системы! Если ваш основной раздел находится в LVM, вместо этого устройство будет расположено в /dev/mapper/, скорее всего, /dev/mapper/{volume}--{os}-root, где {volume} - это имя тома LVM, а {os} - операционная система. Выполните ls /dev/mapper для точного имени. Смонтируйте свой раздел: sudo mount /dev/sda2 /mnt #Replace sda2 with the partition from step 2 Если у вас есть отдельные секции /boot, /var или /usr, повторите шаги 2 и 3, чтобы установить эти разделы на /mnt/boot, /mnt/var и /mnt/usr соответственно. Например, sudo mount /dev/sdXW /mnt/boot sudo mount /dev/sdXY /mnt/var sudo mount /dev/sdXZ /mnt/usr заменяет sdXW, sdXY и sdXZ соответствующими номерами разделов. Привяжите некоторые другие необходимые вещи: for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done Если Ubuntu установлен в режиме EFI (см. Этот ответ, если вы не уверены), используйте sudo fdisk -l | grep -i efi или GParted, чтобы найти раздел EFI. Он будет иметь метку EFI. Подмонтируйте этот раздел, заменив sdXY на фактический номер раздела вашей системы: sudo mount /dev/sdXY /mnt/boot/efi chroot в вашу установку Ubuntu: sudo chroot /mnt . На этом этапе вы находитесь в своей установке, а не в реальном времени, и работаете как корень. Обновить grub: update-grub Если вы получаете ошибки или если переход к шагу 7 не устранил вашу проблему, перейдите к шагу 8. (В противном случае это необязательно.) В зависимости от вашей ситуации вам может потребоваться переустановить grub: grub-install /dev/sda update-grub # In order to find and add windows to grub menu. Если Ubuntu установлен в режиме EFI, а UUID раздела EFI изменен, вам может потребоваться обновить его в /etc/fstab. Сравните это: blkid | grep -i efi grep -i efi /etc/fstab Если текущий UUID раздела EFI (от blkid) отличается от значения, указанного в /etc/fstab, обновите /etc/fstab с текущим UUID. Если все работает без ошибок, тогда вы все настроены: exit sudo reboot На этом этапе вы должны нормально загрузиться.

Если вы не можете нормально загрузиться и не сделали шаг 8, потому что не было сообщений об ошибках, повторите попытку с шага 8.

Иногда, когда GRUB2 правильная настройка для ваших разделов, недостаточно, и вы должны фактически установить его (или переустановить) в главную загрузочную запись, которую делает шаг 8. Опыт, помогающий пользователям в чате показать, что шаг 8 иногда необходим, даже если сообщения об ошибках не отображаются.
309
ответ дан 23 July 2018 в 22:40

Когда GRUB нарушен, пользователь обычно не имеет доступа к системам, поэтому ремонт должен выполняться из живого сеанса (live-CD или live-USB).

Существует много возможных причин к разрыву GRUB: запись в Windows на MBR, DRM, предотвращающая правильность установки GRUB, ошибка установщика, изменение аппаратного обеспечения ... Обновление GRUB, предложенное первоначально Скоттом, как правило, недостаточно, переустановка GRUB, предложенная Marco, более эффективна, но все же существуют различные ситуации, требующие других настроек (добавление параметров в ядро, отображение меню GRUB, изменение параметров GRUB, выбор правильной архитектуры хоста ...). Другие трудности при ремонте GRUB - использование chroot и выбор правильных разделов /disks.

Все это было сделано легко в небольшом графическом инструменте: Boot-Repair. Он должен быть интегрирован в компакт-диск Ubuntu 12.04 для более удобного использования, но для людей, которым это нужно сейчас, уже есть некоторые дистрибутивы, интегрирующие его: Ubuntu-Secured-Remix (компакт-диск Ubuntu, интегрирующий Boot-Repair), Boot-Repair-Disk (с запуском компакт-диска -Repair при запуске), ...

Надеюсь, это поможет.

1
ответ дан 17 July 2018 в 22:03

Boot-Repair работал для меня. Это очень простое в использовании графическое приложение, вам не нужно использовать командную строку, вам нужно только нажать кнопку:)

Все доступные параметры ремонта описаны в документации Ubuntu, и есть отдельную страницу, объясняющую, как запустить Boot-Repair (создав загрузочный диск или установив его на существующий живой диск Ubuntu) и как его использовать.

Просто загрузите Live CD Ubuntu, установите Boot-Repair и запустите его.

2
ответ дан 17 July 2018 в 22:03

Установщик Windows не заботится о других ОС в системе. Таким образом, он записывает собственный код поверх главной загрузочной записи. К счастью, решение тоже легко.

Вам необходимо восстановить MBR. Сделайте следующее

Загрузите с помощью live usb / cd ubuntu. Используйте boot-repair, чтобы устранить проблему.

После загрузки с помощью live usb / cd выполните следующую команду в терминале:

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

Используйте Recomended Repair.

Дополнительная информация - https://help.ubuntu.com/community/Boot-Repair

89
ответ дан 17 July 2018 в 22:03

В системах на базе EFI (таких как большинство систем, поставляемых с Windows 8 или новее) Windows иногда обновляет свой загрузчик или перезагружает его как загрузчик по умолчанию. Это особенно характерно при повторной установке ОС или выполнении основного системного обновления (например, обновление до последней версии Windows). Обратите внимание: Windows вряд ли удалит файлы GRUB на компьютере с EFI. Все необходимое для загрузки Ubuntu все еще на месте; это просто обойти. В этих случаях полная переустановка GRUB является излишней, и на самом деле она несет (небольшую) вероятность того, что она создаст новые проблемы.

Таким образом, вместо повторной установки GRUB в этих случаях, Я рекомендую сбросить GRUB (или какой-либо загрузчик или менеджер загрузок, которые вы предпочитаете) по умолчанию. Существует несколько способов сделать это, в том числе:

EasyUEFI. Самый простой способ настроить порядок загрузки, если система загружается прямо в Windows, заключается в использовании EasyUEFI, который является бесплатным (для базовая версия) стороннего инструмента GUI для управления порядком загрузки EFI. Это довольно понятно: найдите запись ubuntu в списке параметров загрузки и переместите ее в начало списка. В следующий раз, когда вы перезагрузитесь, GRUB должен подняться. (Если вы используете что-то другое, кроме GRUB, вам нужно найти его запись.) [F2] - Средство Windows bcdedit можно использовать для установки GRUB в порядок загрузки по умолчанию. Команда bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi, введенная в окне командной строки администратора, сделает это; однако, если ваш компьютер загружается с активной загрузкой, то вместо этого потребуется bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efi. Фактически, последняя команда будет работать, даже если Secure Boot не используется, поэтому я сначала использую эту команду. Обратите внимание, что есть более продвинутый инструмент оболочки Windows, который требует немного другого синтаксиса, чем я представил, но я не помню деталей. Одноразовая загрузка в Ubuntu. Большинство EFI предоставляют встроенный менеджер загрузки, доступ к которому осуществляется путем нажатия функционального ключа Esc или Enter в начале процесса запуска системы. Скорее всего, запись ubuntu для загрузки Ubuntu появится в этом меню менеджера загрузки, позволяя вам загрузиться в Ubuntu. Кроме того, вы можете загрузиться в среду чрезвычайной ситуации Ubuntu, например, установщик загрузился в режиме «попробуйте до установки». В любом случае, вы можете использовать efibootmgr для настройки порядка загрузки: Введите sudo efibootmgr, чтобы просмотреть записи загрузки. Обратите внимание на текущую строку BootOrder. Найдите запись для ubuntu и отметьте номер Boot####. Введите sudo efibootmgr -o xxxx[,yyyy,zzzz,....], чтобы изменить порядок загрузки, сделав xxxx номер для Ubuntu. Что происходит после этого, скорее всего, не очень важно, хотя я заметил, что Windows, похоже, скорее всего вернется к началу заказа на загрузку, если его нет в списке. Таким образом, вы, вероятно, должны убедиться, что Windows находится в списке, и может быть безопаснее переупорядочить список, чтобы все исходные записи были там, только с записью ubuntu, перемещенной в начало списка. Утилита настройки прошивки. Некоторые утилиты настройки EFI позволяют вам настроить порядок загрузки. Детали сильно отличаются от одной EFI к другой, поэтому я не буду вдаваться в подробности, но вы можете найти такой вариант в своей утилите настройки.

Существуют другие варианты этих процедур, такие как использование bcfg в оболочке EFI, используя bless в macOS, используя мой rEFInd для одноразовой загрузки и т. д. Я бы начал с EasyUEFI; это, скорее всего, самое простое решение. Иногда Windows настаивает на том, чтобы каждый раз при запуске устанавливать значение по умолчанию, а отчеты показывают, что bcdedit может лучше справляться с этой проблемой.

Обратите внимание, что ни одно из предыдущих не относится к BIOS -модельные установки; однако, поскольку большинство компьютеров, которые поставляются с загрузкой Windows 8 или более поздней версии в режиме EFI, установки в режиме BIOS становятся все более редкими, поэтому во многих случаях лучше решать проблему на пути EFI, а не слепо переустанавливать GRUB.

1
ответ дан 17 July 2018 в 22:03

Теперь есть более простое решение:

Перезагрузитесь и введите параметры BIOS вашего компьютера (F2, а иногда и F11). Перейдите в меню «Загрузка» и выберите «Приоритет загрузочного устройства». Проверьте, находится ли диспетчер загрузки Windows над основным загрузочным диском (обычно это жесткий диск SATA ... или IDE HDD ...). Если это так, переместите приоритет загрузочного диска выше, чем в Windows Boot Manager. Сохраните параметры BIOS и выйдите (обычно F10).

Это было протестировано на ноутбуке Samsung Series 7 Chronos с двойной загрузкой Windows 8 и Ubuntu 13.10, отключена защищенная загрузка, UEFI и устаревшая загрузка.

5
ответ дан 17 July 2018 в 22:03

Загрузитесь с живого Ubuntu USB pendrive или CD и установите Boot-Repair на ubuntu, выполнив следующие шаги

Откройте терминал и запустите следующие команды

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

. После завершения вы можете запустить его из меню System-> Administration-> Boot-Repair, если вы используете Gnome или выполните поиск «boot-repair» в тире, если вы используете Unity. Затем выполните следующие снимки экрана:

Установите Boot-Repair на ubuntu, выполнив следующие шаги

Нажмите на расширенные параметры

Нажмите на дополнительные опции

Initial screen [!d13]

Нажмите расширенные опции

Нажмите Apply и перезагрузите систему

Нажмите Apply и перезагрузите систему

Нажмите на дополнительные параметры

Документация:

18
ответ дан 17 July 2018 в 22:03

Windows не видит разделы, отформатированные в Linux. Вам нужно использовать gparted из liveCD и создать основной NTFS с файлом NTFS с загрузочным флагом.

У некоторых возникли проблемы, если новый основной раздел после расширенного раздела, поскольку Windows не всегда правильно перезаписывает таблицу разделов , Лучше иметь хорошие резервные копии и отдельную резервную копию таблицы разделов.

Резервное копирование таблицы разделов в текстовый файл и amp; сохранить на внешнее устройство.

sudo sfdisk -d /dev/sda > PTsda.txt

Это только для систем MBR (msdos). Если ваша установка Ubuntu находится на диске разделов GPT, вы можете установить Windows только в режиме UEFI или преобразовать диск обратно в MBR (msdos).

0
ответ дан 17 July 2018 в 22:03

Просто установите easyBCD в Windows 7 и сделайте

Добавить новую запись> Linux / BSD> (выберите) Grub2> (push) Добавить запись

Затем вы можете выбрать Добавить новую запись> Linux / BSD> (выберите) Grub2> (push) Добавить запись в загрузчик Windows 7, чтобы перейти к Grub2 (предыдущий загрузчик).

10
ответ дан 17 July 2018 в 22:03

Когда GRUB нарушен, пользователь обычно не имеет доступа к системам, поэтому ремонт должен выполняться из живого сеанса (live-CD или live-USB).

Существует много возможных причин к разрыву GRUB: запись в Windows на MBR, DRM, предотвращающая правильность установки GRUB, ошибка установщика, изменение аппаратного обеспечения ... Обновление GRUB, предложенное первоначально Скоттом, как правило, недостаточно, переустановка GRUB, предложенная Marco, более эффективна, но все же существуют различные ситуации, требующие других настроек (добавление параметров в ядро, отображение меню GRUB, изменение параметров GRUB, выбор правильной архитектуры хоста ...). Другие трудности при ремонте GRUB - использование chroot и выбор правильных разделов /disks.

Все это было сделано легко в небольшом графическом инструменте: Boot-Repair. Он должен быть интегрирован в компакт-диск Ubuntu 12.04 для более удобного использования, но для людей, которым это нужно сейчас, уже есть некоторые дистрибутивы, интегрирующие его: Ubuntu-Secured-Remix (компакт-диск Ubuntu, интегрирующий Boot-Repair), Boot-Repair-Disk (с запуском компакт-диска -Repair при запуске), ...

Надеюсь, это поможет.

1
ответ дан 23 July 2018 в 22:40

Boot-Repair работал для меня. Это очень простое в использовании графическое приложение, вам не нужно использовать командную строку, вам нужно только нажать кнопку:)

Все доступные параметры ремонта описаны в документации Ubuntu, и есть отдельную страницу, объясняющую, как запустить Boot-Repair (создав загрузочный диск или установив его на существующий живой диск Ubuntu) и как его использовать.

Просто загрузите Live CD Ubuntu, установите Boot-Repair и запустите его.

2
ответ дан 23 July 2018 в 22:40
  • 1
    Было бы неплохо, если бы был более простой способ получить Boot Repair. Быстрее просто настроить ремонт chroot, чем Google, для другого инструмента для установки. – Scott Severance 18 December 2011 в 07:51

Установщик Windows не заботится о других ОС в системе. Таким образом, он записывает собственный код поверх главной загрузочной записи. К счастью, решение тоже легко.

Вам необходимо восстановить MBR. Сделайте следующее

Загрузите с помощью live usb / cd ubuntu. Используйте boot-repair, чтобы устранить проблему.

После загрузки с помощью live usb / cd выполните следующую команду в терминале:

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

Используйте Recomended Repair.

Дополнительная информация - https://help.ubuntu.com/community/Boot-Repair

89
ответ дан 23 July 2018 в 22:40
  • 1
    вы хотите сказать, что он преднамерен людьми Microsoft? Также двойная загрузка работала с окнами 7, поэтому не противоречит вашей первой строке, и «установщик Windows не заботится о других ОС в системе». – Shagun Sodhani 1 September 2012 в 12:04
  • 2
    Windows ломает Grub все время, это действительно общая проблема, и один ive должен был разобраться с собой. Ответ по-прежнему хорош и должен решить проблему. – damien 1 September 2012 в 12:18
  • 3
    вы сначала установили Windows 7, затем Linux. Таким образом, Linux распознает Windows, а не Windows. Переустановив Windows 7, вы увидите, что я имел в виду. – Web-E 1 September 2012 в 12:26
  • 4
    Не делайте этого, когда у вас есть зашифрованные разделы (luks), он испортил его. Он также переустанавливает GRUB с apt-get - нет идеи, почему он это делает. – Meng Tian 5 January 2014 в 22:14
  • 5
    boot repair поддерживает устаревший режим очень хорошо, возможно, вам нужно загрузить live cd / usb в устаревшем режиме, а также @fuzzyanalysis :) – Web-E 1 January 2015 в 18:08

В системах на базе EFI (таких как большинство систем, поставляемых с Windows 8 или новее) Windows иногда обновляет свой загрузчик или перезагружает его как загрузчик по умолчанию. Это особенно характерно при повторной установке ОС или выполнении основного системного обновления (например, обновление до последней версии Windows). Обратите внимание: Windows вряд ли удалит файлы GRUB на компьютере с EFI. Все необходимое для загрузки Ubuntu все еще на месте; это просто обойти. В этих случаях полная переустановка GRUB является излишней, и на самом деле она несет (небольшую) вероятность того, что она создаст новые проблемы.

Таким образом, вместо повторной установки GRUB в этих случаях, Я рекомендую сбросить GRUB (или какой-либо загрузчик или менеджер загрузок, которые вы предпочитаете) по умолчанию. Существует несколько способов сделать это, в том числе:

EasyUEFI. Самый простой способ настроить порядок загрузки, если система загружается прямо в Windows, заключается в использовании EasyUEFI, который является бесплатным (для базовая версия) стороннего инструмента GUI для управления порядком загрузки EFI. Это довольно понятно: найдите запись ubuntu в списке параметров загрузки и переместите ее в начало списка. В следующий раз, когда вы перезагрузитесь, GRUB должен подняться. (Если вы используете что-то другое, кроме GRUB, вам нужно найти его запись.) [F2] - Средство Windows bcdedit можно использовать для установки GRUB в порядок загрузки по умолчанию. Команда bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi, введенная в окне командной строки администратора, сделает это; однако, если ваш компьютер загружается с активной загрузкой, то вместо этого потребуется bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efi. Фактически, последняя команда будет работать, даже если Secure Boot не используется, поэтому я сначала использую эту команду. Обратите внимание, что есть более продвинутый инструмент оболочки Windows, который требует немного другого синтаксиса, чем я представил, но я не помню деталей. Одноразовая загрузка в Ubuntu. Большинство EFI предоставляют встроенный менеджер загрузки, доступ к которому осуществляется путем нажатия функционального ключа Esc или Enter в начале процесса запуска системы. Скорее всего, запись ubuntu для загрузки Ubuntu появится в этом меню менеджера загрузки, позволяя вам загрузиться в Ubuntu. Кроме того, вы можете загрузиться в среду чрезвычайной ситуации Ubuntu, например, установщик загрузился в режиме «попробуйте до установки». В любом случае, вы можете использовать efibootmgr для настройки порядка загрузки: Введите sudo efibootmgr, чтобы просмотреть записи загрузки. Обратите внимание на текущую строку BootOrder. Найдите запись для ubuntu и отметьте номер Boot####. Введите sudo efibootmgr -o xxxx[,yyyy,zzzz,....], чтобы изменить порядок загрузки, сделав xxxx номер для Ubuntu. Что происходит после этого, скорее всего, не очень важно, хотя я заметил, что Windows, похоже, скорее всего вернется к началу заказа на загрузку, если его нет в списке. Таким образом, вы, вероятно, должны убедиться, что Windows находится в списке, и может быть безопаснее переупорядочить список, чтобы все исходные записи были там, только с записью ubuntu, перемещенной в начало списка. Утилита настройки прошивки. Некоторые утилиты настройки EFI позволяют вам настроить порядок загрузки. Детали сильно отличаются от одной EFI к другой, поэтому я не буду вдаваться в подробности, но вы можете найти такой вариант в своей утилите настройки.

Существуют другие варианты этих процедур, такие как использование bcfg в оболочке EFI, используя bless в macOS, используя мой rEFInd для одноразовой загрузки и т. д. Я бы начал с EasyUEFI; это, скорее всего, самое простое решение. Иногда Windows настаивает на том, чтобы каждый раз при запуске устанавливать значение по умолчанию, а отчеты показывают, что bcdedit может лучше справляться с этой проблемой.

Обратите внимание, что ни одно из предыдущих не относится к BIOS -модельные установки; однако, поскольку большинство компьютеров, которые поставляются с загрузкой Windows 8 или более поздней версии в режиме EFI, установки в режиме BIOS становятся все более редкими, поэтому во многих случаях лучше решать проблему на пути EFI, а не слепо переустанавливать GRUB.

1
ответ дан 23 July 2018 в 22:40

Теперь есть более простое решение:

Перезагрузитесь и введите параметры BIOS вашего компьютера (F2, а иногда и F11). Перейдите в меню «Загрузка» и выберите «Приоритет загрузочного устройства». Проверьте, находится ли диспетчер загрузки Windows над основным загрузочным диском (обычно это жесткий диск SATA ... или IDE HDD ...). Если это так, переместите приоритет загрузочного диска выше, чем в Windows Boot Manager. Сохраните параметры BIOS и выйдите (обычно F10).

Это было протестировано на ноутбуке Samsung Series 7 Chronos с двойной загрузкой Windows 8 и Ubuntu 13.10, отключена защищенная загрузка, UEFI и устаревшая загрузка.

5
ответ дан 23 July 2018 в 22:40
  • 1
    Это оказалось самым чистым вариантом для меня. Это еще несколько ключевых штрихов, но эй, это работает. У меня есть сочетание загруженных устройств Legacy и UEFI. Если пользователи загружают одну ОС гораздо больше, чем ассортимент других, это может быть быстрее (и безопаснее) в долгосрочной перспективе. – Fuzzy Analysis 30 December 2014 в 16:21
  • 2
    Это тоже сработало для меня, после того, как Windows 10 автоматически обновила себя. – luis_js 19 March 2018 в 10:31
  • 3
    Это решение сработало для меня, когда я удалил Ubuntu из окон 10. – Vikas Gupta 31 March 2018 в 20:31

Загрузитесь с живого Ubuntu USB pendrive или CD и установите Boot-Repair на ubuntu, выполнив следующие шаги

Откройте терминал и запустите следующие команды

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

. После завершения вы можете запустить его из меню System-> Administration-> Boot-Repair, если вы используете Gnome или выполните поиск «boot-repair» в тире, если вы используете Unity. Затем выполните следующие снимки экрана:

Установите Boot-Repair на ubuntu, выполнив следующие шаги

Нажмите на расширенные параметры

Нажмите на дополнительные опции

Initial screen [!d13]

Нажмите расширенные опции

Нажмите Apply и перезагрузите систему

Нажмите Apply и перезагрузите систему

Нажмите на дополнительные параметры

Документация:

18
ответ дан 23 July 2018 в 22:40
  • 1
    Web-E уже дал этот ответ . Может быть, лучше это сделать? Я оставил комментарий о том, почему это не сработало. – Dan Dascalescu 2 February 2016 в 20:59
  • 2
    Этот метод работал для меня после особо неприятного случая обновления Windows 10, перезаписывающего GRUB, а затем разбив его собственный загрузчик. После этой процедуры были восстановлены как Windows, так и Linux. В моем случае это был Linux Mint 18.1, а меню восстановления загрузки выглядело несколько иначе, но все это работало нормально. Благодаря! – TheBigH 29 May 2017 в 01:53

Windows не видит разделы, отформатированные в Linux. Вам нужно использовать gparted из liveCD и создать основной NTFS с файлом NTFS с загрузочным флагом.

У некоторых возникли проблемы, если новый основной раздел после расширенного раздела, поскольку Windows не всегда правильно перезаписывает таблицу разделов , Лучше иметь хорошие резервные копии и отдельную резервную копию таблицы разделов.

Резервное копирование таблицы разделов в текстовый файл и amp; сохранить на внешнее устройство.

sudo sfdisk -d /dev/sda > PTsda.txt

Это только для систем MBR (msdos). Если ваша установка Ubuntu находится на диске разделов GPT, вы можете установить Windows только в режиме UEFI или преобразовать диск обратно в MBR (msdos).

0
ответ дан 23 July 2018 в 22:40
  • 1
    Просто обратите внимание на то, что нет необходимости беспокоиться о размонтировании, потому что перезагрузка позаботится об этом автоматически. Отправка команд umount тратит время. – Scott Severance 1 October 2012 в 13:44
  • 2
    sudo umount -a также должен заботиться о них. Это не плохая практика, если у вас есть несколько моментов. По крайней мере, напоминает вам о том, что происходит, и в некоторых (угловых / маргинальных) случаях он может остановить перезагрузку, чтобы предупредить вас или ждать ввода. – belacqua 4 November 2012 в 02:25
  • 3
    +1 для предупреждения в разделенном / загрузочном разделе. – qed 19 March 2013 в 21:27
  • 4
    Я делал это несколько раз в разных системах и соглашаюсь с тем, что результаты говорят сами за себя (хотя я тоже пропускаю umount). – Elder Geek 25 February 2015 в 18:32
  • 5
    Новые версии sfdisk & amp; fdisk, работающий с секционированными дисками gpt в 16.04 или новее, также будет создавать резервные копии разделенных дисков gpt с помощью команды выше. oldfred не помнит, что он ел на ужин прошлой ночью, поэтому не уверен, что он отправил обратно в 2013 году. :) – oldfred 7 April 2017 в 16:40
  • 6
    Привет, Фред, когда я готовлю забыть ужин прошлой ночью, это благословение. Мы удалили наши предыдущие комментарии. – WinEunuuchs2Unix 7 April 2017 в 17:49

Просто установите easyBCD в Windows 7 и сделайте

Добавить новую запись> Linux / BSD> (выберите) Grub2> (push) Добавить запись

Затем вы можете выбрать Добавить новую запись> Linux / BSD> (выберите) Grub2> (push) Добавить запись в загрузчик Windows 7, чтобы перейти к Grub2 (предыдущий загрузчик).

10
ответ дан 23 July 2018 в 22:40
  • 1
    Только эти инструкции не восстанавливают загрузчик Grub - когда я их пробовал, они добавили дополнительную загрузку в Windows, которая при выборе, перезапустила мою машину, а затем отвела меня к grub & gt; незамедлительный. Поэтому нужно будет предпринять дополнительные шаги в отношении того, что делать дальше. – therobyouknow 16 June 2014 в 01:46
  • 2
    easyBCD позволил мне добавлять и удалять параметры загрузки, которые я мог видеть как в Windows Boot Loader, так и в BIOS, но они никогда не работали, потому что easyBCD полагается на какую-то автоматическую магию для поиска разделов Linux ... это не сработало, когда мой раздел Linux был на отдельном жестком диске. – Fuzzy Analysis 30 December 2014 в 16:14

Ответы Скотта и Веб-E достаточно хороши и помогли много раз. Но много раз, инструмент восстановления загрузки не может восстановить grub из-за проблем, связанных с платформой i386 и amd64, или где grub не может найти каталог efi. То, что разрешило мою проблему, как более 10 раз, - это вручную очистить старые утилиты grub и установить новую.

Итак, сначала выполните первые 6 шагов из ответа Скотта [], где вы может пропустить 5-й шаг, если он дает ошибку:

  1. Загрузитесь с живого компакт-диска или с живого USB в режиме «Попробуйте Ubuntu».
  2. Определите номер раздела вашего основного раздела. sudo fdisk -l, sudo blkid или GParted (которые уже должны быть установлены по умолчанию в реальном времени) могут помочь вам здесь. В этом ответе я предполагаю, что это /dev/sda2, но убедитесь, что вы используете правильный номер раздела для своей системы! Если ваш основной раздел находится в LVM, устройство вместо этого будет расположено в /dev/mapper/, скорее всего, /dev/mapper/{volume}--{os}-root, где {volume} - это имя тома LVM, а {os} - операционная система. Выполните ls /dev/mapper для точного имени.
  3. Установите раздел:
    sudo mount /dev/sda2 /mnt  #Replace sda2 with the partition from step 2
    
    Если у вас есть отдельные секции /boot, /var или /usr, повторите шаги 2 и 3, чтобы установить эти разделы к /mnt/boot, /mnt/var и /mnt/usr соответственно. Например,
    sudo mount /dev/sdXW /mnt/boot
    sudo mount /dev/sdXY /mnt/var
    sudo mount /dev/sdXZ /mnt/usr
    
    заменяет sdXW, sdXY и sdXZ на соответствующие номера разделов.
  4. Привяжите некоторые другие необходимые вещи:
    for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done
    
  5. Если Ubuntu установлен в режиме EFI (см. Этот ответ, если вы не уверены) [efi]), используйте sudo fdisk -l | grep -i efi или GParted, чтобы найти раздел EFI. Он будет иметь метку EFI. Подключите этот раздел, заменив sdXY на фактический номер раздела вашей системы:
    sudo mount /dev/sdXY /mnt/boot/efi
    
  6. chroot в вашу установку Ubuntu:
    sudo chroot /mnt
    

Затем выполните следующие действия:

  1. Настройте все ожидающие пакеты. sudo dpkg --configure -a
  2. Исправить сломанные пакеты. sudo apt install -fy
  3. Снимите текущую гильзу. sudo apt purge -y grub*-common grub-common:i386 shim-signed Это может дать вам предупреждение о том, что на вашем устройстве не будет загрузчика и может быть невозможно загрузить в следующий раз. Идем дальше и принимаем его.
  4. sudo apt install -y grub-pc После запуска этой команды он попросит вас указать текущий sdXY для установки загрузчика. Найдите, где установлена ​​ваша текущая ОС с помощью команды sudo fdisk -l. Он будет помечен как Linux. Перейдите в это окно с помощью клавиши Tab и выберите опцию с помощью клавиши Space.
  5. Если все пойдет правильно, grub будет установлен правильно. Вы также можете сделать sudo grub-update для двойной проверки.

Если проблема по-прежнему сохраняется, вы можете прочитать вики Arch's , чтобы на самом деле понять о grub для решения многих других многообразия проблем. (Да, также помогает Ubuntu!).

0
ответ дан 7 October 2018 в 19:29

Другие вопросы по тегам:

Похожие вопросы: