Ubuntu grub нет windows

В меню grub 2 не отображается/отсутствует пункт windows 7

Примерное решение нахожу как удалить ubuntu и восстановить загрузчик windows с диска, но вопрос в том, что может стоять за этой проблемой? Может ли описанный способ не работать и к каким тогда методам прибегать? Основная цель — добиться загрузки windows.

Последовательность действий была следующая: 1. Ноут с нелицензионой win7. 2. Установил ubuntu 12.10 с флэшки. 3. При включении ноута происходит загрузка убунты. 4. Использовал boot-repair чтобы появлялась менюшка grub 2 (в надежде загрузить win7). 5. Win7 в меню grub 2 нету.

Заранее спасибо за любые советы, но основная цель — добиться загрузки windows.

если бубунта не нужна то просто и диска или флешки установочной зайти в восстановление и запустить командную строку,затем

ну или самому из-под рута в /boot/grub/grub.cfg вписать

Спасибо! 1ый способ как-то пробовал — grub не выдал список загрузок(что конкретно произошло не знаю), восстанавливал опять с помощью boot-repair. 2ой над будет попробовать. А по 3му вот, открывал тоже как-то этот конфиг, при попытке что-либо вписать и сохранить говорит что файл только для чтения. Открывал какими-то редакторами из терминала — тоже не редактирует, хоть и пароль от рута запрашивал.

1 способ просто убивает груб и восстанавливает винду
2 попробуй
3 в терминале

ну или самому из-под рута в /boot/grub/grub.cfg вписать

так и не смог понять, что имелось ввиду

Пытался поправить/дополнить предыдущего оратора.
Имелось ввиду, что запись/перезапись файла с атрибутами
-r—r—r—
не представляется возможным

На всех экранах настройки оставь все параметры, как есть.
Потом он будет искать операционки и создавать grub.cfg. Внимательно смотри, есть ли Windows в списке найденных. Отпишись, как пройдет. Одно дело, если он находится (тогда, может, и проблема автоматически решится), другое — если нет.

Кстати, при установке Убунты ты мог нечаянно снести Windows. Ты уверен, что этого не произошло?

Update. А, выше посоветовали запускать напрямую grub-mkconfig. Это примерно то же самое.

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

Впрочем, ты сначала убедись, что у тебя еще есть Винда.

А ты уверен, что ты не снёс W7, при установке Ubuntu?

Спасибо, при установке выбирал пункт установить рядом с win7, да и размер раздела где находилась win7 вроде не изменился, так же все папки вроде присутствуют.

Спасибо, как только смогу.

GRUB так и не понял, зачем нужен. LILO проще и эффективнее.

Плюсую. А еще лучше syslinux.

найден образ linux

найден образ initrd

При выполнении команды на следующей строке пишется знак похожий на «>», при энтере повторяет символ на следующей строке

Что то ты совсем неправильно делаешь, такое происходит когда случайно нажал «’»

Это команды показывает таблицу разделов, должно быть примерно так

Это команда просто чтобы удостоверится что винда осталась. Можешь тогда на крайняк загрузится с live-cd. Там в ФМ будут показаны все разделы диска.

такая же проблема

Установил ubuntu 12.04 рядом с win 7, grub не показывает возможности загрузиться на винде.

$ sudo fdisk -l пишет:

Читайте также:  Windows dns сервера условной пересылки

ВНИМАНИЕ: На ‘/dev/sda’ обнаружена GPT (GUID Partition Table)! Утилита fdisk не поддерживаетGPT. Используйте GNU Parted.

Диск /dev/sda: 320.1 Гб, 320072933376 байт 255 головок, 63 секторов/треков, 38913 цилиндров, всего 625142448 секторов Units = секторы of 1 * 512 = 512 bytes Размер сектора (логического/физического): 512 байт / 4096 байт I/O size (minimum/optimal): 4096 bytes / 4096 bytes Идентификатор диска: 0x00000000

Устр-во Загр Начало Конец Блоки Id Система /dev/sda1 1 625142447 312571223+ ee GPT Partition 1 does not start on physical sector boundary.

И что делать? Куда бежать? Вижу только 100 гигов, что выделил при разбивке под ubuntu, остальная часть недоступна и неотображается.

Какая интресная ветка ))
Обычно отсутствие пакета os-prober приводит к полной слепоте grub к другим осям и последующей невозможности его автоматической настройки . Впрочем, это истинна для Debian, а в убунте могут быть еще и свои костыли ))

В убунту получается можешь загрузится? Это у тебя EFI.

Значит попробуй для начала так:

1. Грузись в убунту

3. Запускаещь gparted.

4. Убеждаешься что разделы на месте, вздыхаешь спокнойно.

5. sudo apt-get install os-prober

6. update-grub(В выхлопе должно быть что найдена win7)

Ubuntu запускается. Да EFI.

Консолька пишет следующее:

$ sudo apt-get installl gparted . E: Неверная операция installl

Трудно сказать, что был обрадован данной записью.

$ sudo apt-get install os-prober Чтение списков пакетов… Готово Построение дерева зависимостей Чтение информации о состоянии… Готово Уже установлена самая новая версия os-prober. обновлено 0, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.

$ sudo update-grub Generating grub.cfg . Found linux image: /boot/vmlinuz-3.5.0-34-generic Found initrd image: /boot/initrd.img-3.5.0-34-generic Found memtest86+ image: /boot/memtest86+.bin Adding boot menu entry for EFI firmware configuration done

В итоге загрузка автоматически происходит через UBUNTU, также дерево каталогов винды не доступно для просмотра. Из-под UBUNTU, вижу только партицию, выделенную специально для нее родимой.

сделай sudo gedit /etc/grub.d/40_custom

напиши после последней стрлчки
menuentry «Windows» <
insmod part_msdos
set root=(hd0,msdos1)
>

сохрани
сделай sudo update-grub
сделай sudo grub-install /dev/sda

Не загружается Linux, чиним загрузчик GRUB

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

Что такое Grub

Grub (или GRand Unified Bootloader) — загрузчик операционных систем с открытым исходным кодом. Распространяется он под лицензией GNU GPL, в полностью свободном виде. С помощью этого замечательного лоадера можно сделать много всего — основная же функция не ограничивается загрузкой лишь одной операционной системы. Вы можете иметь куда больше операционных систем на своем ПК, загружая любую из них с помощью Grub. На скриншоте выше вы можете видеть как примерно Grub выглядит. Кстати говоря, если вы захотите установить Ubuntu 18.04 рядом с Windows , вам определенно понадобится помощь Grub.

Grub используется в большинстве дистрибутивов Linux в качестве загрузчика по-умолчанию. Разумеется и с ним иногда возникают проблемы. Этим самые проблемы чреваты полным отказом операционной системы. Поэтому для починки Grub нам понадобятся дополнительные инструменты. Какие именно — узнаете далее.

Читайте также:  Windows 10 не отображаются эскизы pdf

От чего могут возникнуть проблемы

Одна из самых распространенных причин — это неправильный порядок установки двух операционных систем (Linux и Windows). Допустим, если вы захотите установить две этих операционных системы на свой ПК — вам непременно стоит знать правильную последовательность:

  • Сначала устанавливаем Windows
  • И только потом уже Linux

Если, например, сделать наоборот, то как раз-таки Grub будет поврежден; система будет грузиться напрямую в Windows, а дистрибутив Linux останется недоступным.

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

Восстановление Grub с помощью LiveCD/USB

Для этого способа нам понадобится флешка с дистрибутивом Linux на борту. Подойдет любой: от Ubuntu, Arch или даже Linux Mint. Здесь нужен только терминал, поэтому подойдет даже версия без графической оболочки.

Как создать LiveCD/USB

Само собой, нам понадобится носитель, на который мы временно (а может и нет) запишем систему. Сохраните все важные файлы, которые были на этом носителе, после чего (имеется ввиду на другом ПК, желательно под управлением Windows) запишите загруженный образ дистрибутива на носитель. В качестве примера мы будем использовать дистрибутив Ubuntu.

Идем на официальную страницу загрузки . Загружаем любую понравившуюся версию (лучше взять новейшую для десктопа), после чего записываем ее на USB/CD.

С помощью Rufus:

Последняя версия приложения доступна на официальном сайте . Сразу после загрузки и запуска/установки мы увидим такое окно:

Вставляем носитель, выбираем его в соответствующем меню. Далее выбираем нужную схему раздела и тип системного интерфейса, и после уже открываем файловый менеджер с помощью этой кнопки:

Находим загруженный образ через менеджер, после чего жмем «Старт».

С помощью Etcher:

Опять же, идем на официальный сайт , где скачиваем последнюю версию утилиты. Далее делаем все так, как показано на этой гифке:

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

Открываем таблицу разделов с помощью команды:

Примерно такая таблица будет выведена на экран:

/dev/sda1 27 7683 66999082+ 83 Linux
/dev/sda2 * 8450 13995 45430855 7 HPFS/NTFS
/dev/sda3 11885 16574 6503497 5 Extended

По этой таблице мы видим, что Linux, в нашем случае, расположен на разделе /dev/sda1.

С помощью следующей команды мы смонтируем этот раздел в /mnt:

sudo mount /dev/sda1 /mnt

Теперь, для записи grub в MBR, нужно ввести следующую команду:

sudo grub-install —root-directory=/mnt /dev/sda

Если нужно только восстановить MBR диска (после переустановки Windows, к примеру), то этих действий будет вполне достаточно.

Если же необходимо обновить и меню grub (после установки Windows), то нужно выполнить еще и эту команду:

sudo update-grub —output=/mnt/boot/grub/grub.cfg

Вот и все, восстановление закончено!

Восстановление с помощью chroot

Помимо вышеописанного способа, при восстановлении Grub с помощью LiveCD можно использовать и этот. Тут мы будем использовать утилиту chroot.

Здесь нам, опять же, понадобится таблица разделов. Вводим уже известную команду:

В выводе снова будет эта таблица. Теперь нам надо присмотреться к ней еще внимательнее.

/dev/sda1 27 7683 66999082+ 83 Linux
/dev/sda2 * 8450 13995 45430855 7 HPFS/NTFS
/dev/sda3 11885 16574 6503497 5 Extended

В этом способе нам необходимо примонтировать системный, а также нескольких других важных разделов. Для этого вводим эти команды:

sudo mount /dev/sda1 /mnt
sudo mount —bind /dev /mnt/dev
sudo mount —bind /proc /mnt/proc
sudo mount —bind /sys /mnt/sys

Читайте также:  Install virtual linux on windows

Обратите внимание , что если если разделы /boot или /var находятся отдельно, то Вам нужно будет примонтировать их в /mnt/boot и /mnt/var.

Далее мы переходим в окружающую среду chroot с помощью команды:

sudo chroot /mnt

И теперь, наконец-таки переустанавливаем Grub с помощью следующей команды:

Если вы на этом этапе получаете какие-то сообщения об ошибках, то попробуйте использовать эти команды:

grub-install —recheck /dev/sda

grub-install —recheck —no-floppy /dev/sda

Если все прошло успешно, выходим из chroot, используя команду:

Далее нужно отмонтировать все разделы. Для этого вводим в терминал:

sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt

В случае, если вы монтировали раздел /boot введите команду:

sudo umount /mnt/boot

Теперь перезагружаем систему с помощью:

Можно также обновить меню Grub, используя команду:

Восстановление Grub в rescue mode

Если по каким-то причинам у вас нет доступа к LiveCD/USB-носителю, а также к компьютеру, с помощью которого этот самый носитель можно было бы сделать, то этот способ для вас.

Само восстановление проходит таким образом: сначала мы подгружаем все модули, чтобы открыть доступ ко всей функциональной части Grub, после чего запуститься с нужного раздела. Надо понимать, что Grub состоит из двух частей:

Одна из этих частей (первая) записана в MBR диска. В ней присутствует базовый функционал и ничего больше (консоль в rescue mode).

Стало быть, нам нужно определить, в каком разделе находится вторая часть Grub (находится в каталоге /boot/grub), и после чего подгрузить все недостающие модули. А вот уже после этого мы сможем запустить загрузчик с нужного раздела. В rescue mode есть всего четыре команды:

Для начала вводим следующую команду:

В выводе будет что-то подобное:

(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1) (hd1) (hd1,msdos2) (hd1,msdos1)

В некоторых случаях Grub неправильно опеределяет файловые системы находящиеся на разделах дисков. В данном примере загрузчик показывает их как msdos. Мы должны попытаться угадать диски, которые видим. В примере доступно два диска. Диск с индексом 0 содержащий три раздела, и диск с индексом 1 содержащий два раздела. Если вы знаете структуру своих дисков, определить нужный труда не составит.

В загрузчике Grub разделы нумеруются в обратном исчислении. Не очень ясно какой именно из разделов назван, к примеру (hd0,msdos3). Чтобы было более понятно, можно использовать вид (hd0,1). Если в грабе отсчет дисков идет с 0, а разделов с 1, то можно определить, что операционная система установлена в первый раздел первого раздела — (hd0,1). Используем следующую команду:

set prefix=(hd0,1)/boot/grub
set root=(hd0,1)

С помощью этих команд мы приказываем системе использовать какой-то конкретный диск, для выполнения всех остальных операций (в нашем случае, это диск (hd0,1)). Чтобы проверить есть ли на данном диске загрузчик, введем эту команду:

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

insmod ext2
insmod normal
normal

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

Чтобы закрепить результат (и не проделывать все то же самое после перезапуска ПК), нужно зайти в терминал своего дистрибутива Linux, где с root правами выполнить следующую команду:

sdX — диск, на который должен быть установлен Grub.

Если операционная система расположена на разделе с файловой системой btrfs , то нам необходимо выполнить следующие команды:

set prefix=(hd0,1)/@/boot/grub
set root=(hd0,1)

Оцените статью