Linux: grub

Процесс загрузки

Когда вы включаете компьютер, процессору необходимо знать, какую последовательность действий ему следует выполнять. На материнской плате хранится список устройств, с которых компьютер может загрузиться. Этот список задает порядок загрузки (жесткие диски, флеш-карты, usb-устройства), то есть, в какой очередности следует выполнять запрос на загрузку с них. Процессор пробует загрузиться с устройства, указанного первым в этом списке. Он переходит в самое начало устройства в поисках дополнительной информации. Любое из этих устройств разбито на маленькие области, называемые секторами, и процессор ищет на устройстве хранения его первый сектор, который называется Главная Загрузочная Запись (Master Boot Record или сокращенно — MBR). Помимо секторов, устройство может быть разбито на большие части, называемые разделами, при этом разделы состоят из определенного количества секторов. Первый сектор любого раздела также является загрузочным и называет аналогично — загрузочный сектор (). Сектор является минимальной единицей деления жесткого диска на части, поэтому в одном секторе (в том числе — и загрузочном) информации может храниться совсем немного. Ровно столько, чтобы указать процессору, где он может найти программный код, с помощью которого можно выполнить процесс загрузки. Таким образом, процессор может выполнять загрузку все системы в целом.

Программа загрузки, используемая операционной системой PCLinuxOS, называется Grub (GRand Unified Bootloader). Код этой программы разбит на две части. Одна часть хранится в главной загрузочной записи (MBR) и называется . Вторая часть загружается в оперативную память компьютера (ОЗУ) после выполнения первой части и называется .

запускает ядро () операционной системы и создает в оперативной памяти компьютера временную файловую систему, в которую загружает различные программные коды, такие как модули и драйверы устройств. Эти коды необходимы ядру для успешного выполнения загрузки системы. Для создания временной файловой системы в ОЗУ используется заранее созданный образ файловой системы, называемый или сокращенно .

К сожалению, здесь у нас есть проблема. Заключается она в следующем. С одной стороны, мы имеем файл , который знает, где располагается ядро () и образ () файловой системы, но файл ничего не знает о существовании каких-либо файловых систем. Рассмотрим пример файла . Существует несколько видов данного файла, имя каждого из которых отображает тип файловой системы, для которой он предназначен, например, или . Код в этих файлах является связующим мостом, но он должен быть найден файлом . К счастью, благодаря способу расположения разделов на жестком диске, после первого зарезервированного сектора каждого раздела всегда имеется несколько свободных секторов, в которых и размещается дополнительный код. Файл «знает» о том, что всегда необходимо «заглянуть» во второй сектор корневого раздела и после выполнения кода, помещенного там, загрузчик Grub может найти необходимые данные в файловой системе.

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

Примерно так обстоят дела с загрузкой в системе PCLinuxOS. Однако то, о чем было вкратце описано выше, является неполной картиной всех процессов, происходящих в системе Grub. Более того, этот способ далеко не единственный, применяемый для загрузки операционных систем.

Что такое GRUB?

GRUB — это очень мощный менеджер загрузки, который может загружать множество
операционных систем, таких как Windows, DOS, Linux, GNU Hurd, *BSD и т.д.

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

GRUB — синоним слова гибкость. Его последний релиз, 0.5.96.1, поддерживает ext2 (
файловую систему, используемую Линукс), FAT16 и FAT32 (используемые Win9x и ME),
FFS (Fast File System (Быстрая файловая система) используемую *BSD UNIX), ReiserFS
(новую журналируемую файловую систему, разработанную для Линукс и интегрированную
в ядро Линукс 2.4.1), и minix (старую файловую систему, разработанную для ОС MINIX,
также используемую ранними версиями Линукс). С GRUB, вы можете «заглянуть» внутрь
этих файловых систем, даже не загружая операционной системы. Например, если вы хотите
увидеть дату и время, сохранённые в текстовом файле, и у вас нет времени на загрузку всей
операционной системы, вы можете использовать командную оболочку GRUB (строка с подсказкой «grub>»)
,введите:

grub> cat (номер раздела)/home/god/filename.txt.  

Лучшее свойство GRUB — то, что вы можете загрузить любое ядро на любом разделе,
прямо в ходе начальной загрузки. Например, если вы забыли добавить только что скомпилированное ядро
в список, вам скорее всего потребуется загрузиться, добавить его в список и затем
перезагрузиться, чтобы использовать его.
Но с GRUB, вы можете просто использовать командную оболочку и загрузить при помощи её
желаемое изображение ядра.

Теперь я опишу три основных шага, которые необходимо выполнить, чтобы начать использовать GRUB: компиляция,
установка и конфигурирование.

Добавление нового пункта в меню Grub

Я собираюсь добавить в файл новую stanza (пункт меню) в самое начало, то есть между строками, первой из которых является , а вторая начинается как :

title kde4
kernel (hd0,0)/boot/mykernel root=LABEL=kde4
initrd (hd0,0)/boot/myinitrd

При добавлении нового пункта меню (stanza) необходимо оставлять перед строфой и после нее одну пустую строку, так как иначе загрузчик Grub не будет знать, где заканчивается одна запись и начинается другая.

После того, как все данные будут введены, нажимаем сочетание клавиш Ctrl+X, при этом редактор nano спросит, сохранить ли изменения в файле. Подтверждаем сохранение и выходим.

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

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

Сборка файла конфигурации

Для формирования меню Grub2 использует файл конфигурации .
В Debian данный файл формируется автоматически скриптом сборки update-grub2 из правил-скриптов, расположенных в каталоге .
При выполнении скрипта считываются файлы из каталога , файл и создаётся новый файл конфигурации .
Правила сборки например предусматривают автоматический поиск установленных ядер linux-систем, других операционных сред и добавление их в пункты меню.

  Замечание
  Существуют и графические утилиты управления меню загрузки Grub2, например Startupmanager.
  Startupmanager также позволяет осуществить и сборку файла конфигурации, и установку некоторых параметров загрузки.

Параметры файла

  GRUB_DEFAULT=0                        - пункт меню по умолчанию, если указано saved то Grub2 будет сохранять выбранную позицию
  GRUB_TIMEOUT=5                        - указание времени задержки до старта пункта по умолчанию в сек
  GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
  GRUB_CMDLINE_LINUX_DEFAULT="quiet"
  GRUB_CMDLINE_LINUX=""                 - параметры загрузки ядра
  #GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"      - разрешение фильтрации плохой памяти,
                                          параметр работает с любым ядром получающем информацию о памяти от Grub
  #GRUB_TERMINAL=console                - запрет графического терминала 
  #GRUB_GFXMODE=640x480                 - разрешение графического терминала, допустимые режимы могут быть получены командой vbeinfo
  #GRUB_DISABLE_LINUX_UUID=true         - запрет передаче ядру Linux параметра корневой системы в виде "root=UUID=xxx"
  #GRUB_DISABLE_RECOVERY="true"         - запрет создания в меню Grub2 пункта с режимом восстановления
  #GRUB_INIT_TUNE="480 440 1"           - указание параметров звукового сигнала при старте Grub2
  #WALLPAPER="/boot/grub/splash.png"    - указание фоновой картинки, поддерживаются только png, jpeg (jpg), tga
  COLOR_NORMAL="black/black"            - указание цвета меню для не выделенного пункта меню
  COLOR_HIGHLIGHT="magenta/black"       - указание цвета меню для выделенного пункта меню

Назначение правил-скриптов сборки /etc/grub.d/

  00_header                             - скрипт считывания установки GRUB из /etc/default/grub
  05_debian_theme                       - скрипт темы GRUB, определяет фон, цвета и прочее
  10_linux                              - скрипт определения конфигурации меню для установленного дистрибутива
  20_memtest86+                         - скрипт добавления пункта меню для утилиты тестирования памяти memtest86, если она установлена
  30_os-prober                          - скрипт поиска на жестких дисках других операционных систем и добавления их в меню
  40_custom                             - шаблон, для создания дополнительных пользовательских пунктов меню
  Замечание
  Запуск скриптов, а соответственно и появление пунктов в меню GRUB, происходит в порядки их нумерации.

Ссылки

Восстановление MBR с использованием LiveCD Ubuntu

Вам понадобиться всего лишь LiveCD с Ubuntu (обычный диск Ubuntu Desktop, в принципе, любой версии до 9.04 включительно). Загрузите компьютер с него, в появившемся при загрузке меню выберите пункт Загрузить Ubuntu без установки на компьютер, дождитесь окончания загрузки.

Теперь откройте терминал, он находится в меню Приложения→Стандартные→Терминал в русской версии или в меню Applications→Accessories→Terminal в английской версии.

В открывшемся терминале наберите:

sudo grub

Вы увидите нечто похожее на:

       [ Minimal BASH-like line editing is supported.   For
         the   first   word,  TAB  lists  possible  command
         completions.  Anywhere else TAB lists the possible
         completions of a device/filename. ]
grub>

Это значит, что вы попали в программу управления grub. Теперь нам надо выяснить, где на вашем компьютере храниться основная часть загрузчика GRUB, для этого наберите:

find /boot/grub/stage1

Если вы по каким-то причинам при установке Ubuntu сделали /boot отдельным разделом, то команда будет выглядеть так:

find /grub/stage1

Кроме того, если у вас стоит несколько ОС Linux с загрузчиками GRUB Legacy, то возможно вы получите несколько результатов — выбирайте нужный вам.

В результате выполнения этой команды вы увидите нечто типа:

grub> find /boot/grub/stage1
find /boot/grub/stage1
 (hd0,0)

Нас интересует строчка «(hd0,0)». Это раздел, на котором программа нашла установленный GRUB Legacy. Первая цифра (после hd) — номер винчестера, вторая — номер раздела на нём. Теперь для восстановления GRUB Legacy выполняем следующие команды, подставив вместо «(hdX,Y)» и «(hdX)» полученные ранее вами значения (в моём случае это были «(hd0,0)» и «(hd0)»):

root (hdX,Y)
setup (hdX)
quit

Будьте внимательны, рядом с «setup» надо писать в скобках только часть, относящуюся к винчестеру, т.е. «(hdX)». Если вы напишите так же, как и в «root» — «(hdX,Y)», то во-первых не добьётесь нужного результата, а во-вторых вполне можете повредить ФС на разделе «(hdX,Y)».

Всё, теперь можно перезагрузиться, при загрузке вы снова сможете попасть в свою Ubuntu. Правда, если вы устанавливали Windows, то он не появится волшебным образом в меню загрузки, см. ниже пункт про добавление в меню опций загрузки Windows и других ОС.

Мультисистемная загрузка на персональном компьютере

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

В каждом разделе диска может храниться собственный вторичный загрузчик, однако главная загрузочная запись только одна. Поэтому необходимо решить, какой из загруз­чиков будет “главным”. Как правило, выбор диктуется особенностями имеющихся опе­рационных систем. Если одной из них является Linux, то лучше всего в качестве глав­ного загрузчика выбрать LILO или GRUB. Заметим, что в данной конкретной ситуации загрузчик GRUB проявляет себя лучше, чем LILO.

Мультисистемное конфигурирование GRUB

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

Записанные в файле параметры конфигурации для загрузки ОС Windows, отличаются от параметров для загрузки UNIX или Linux:

Параметр загружает утилиту начальной загрузки из указанного места (в данном случае из сектора 1 первого раздела первого IDE-диска). Параметр предотвращает попытки загрузчика GRUB выполнить монтирование указанного раздела. Он избавляет загрузчик GRUB от необходимости проверять непонятные для него разделы, такие как разделы NTFS или размещенные вне области, в которой GRUB может выполнять чтение.

Ниже приведен полный текст файла для случая, когда Windows 10 загру­жается из первого раздела, Linux — из второго, а Fedora — из третьего:

Мультисистемное конфигурирование LILO

Если LILO является главным загрузчиком (например, на компьютере установлены Linux и Windows 10), начните со стандартного процесса конфигурирования LILO, опи­санного выше. Затем по мере необходимости можно добавлять записи для других опера­ционных систем в файл .

Вот как будет выглядеть запись, предназначенная для загрузки Windows из первого раздела первого IDE-диска:

Ниже приведен полный текст файла для случая, когда Windows загружа­ется из первого раздела, Linux — из второго, а FreeBSD — из третьего:

После модификации файла нужно повторно ввести команду . Не за­будьте предварительно выполнить ее в тестовом режиме с флагом . 

Поставщики (или добровольцы) часто распространяют пакеты исправления ошибок дистрибутивов Linux. Это же относится и к ядру. Устранение брешей в системе безо­пасности, исправление ошибок и добавление функций происходит регулярно. Однако, в отличие от других программных пакетов, пакеты исправления ошибок ядра не об­новляются, а устанавливаются наряду с существующим ядром. Этот подход позволяет администраторам отменять обновление, если пакет устранения ошибок ядра приводит к разрушению системы. Поэтому постепенно меню начальной загрузки LILO и GRUB заполняются различными версиями ядра. Как правило, можно выполнять загрузку той операционной системы, которая выбрана по умолчанию, но помните о существовании этого простого способа разрешения проблемы в случае невозможности загрузки после установки пакета исправлений.

Вас заинтересует / Intresting for you:

Linux: как инсталлировать прог…

377 просмотров

Дэйзи ак-Макарова

Sun, 11 Nov 2018, 11:54:59

Команда man Linux: чтение стра…

426 просмотров

Дэйзи ак-Макарова

Sun, 11 Nov 2018, 09:36:51

Файловая система /proc в Linux

358 просмотров

Fortan

Fri, 22 Feb 2019, 06:05:18

Основа операционной системы Li…

696 просмотров

Андрей Волков

Wed, 09 Jan 2019, 05:36:45

Author: Андрей Волков

Другие статьи автора:

Загрузка нескольких операционных систем

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

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

Теперь у нас будет два файла с именем , один из которых располагается в директории раздела, на который установлена операционная система, и второй — оригинальный файл. В своем примере я использую раздел , который загрузчик Grub воспринимает как раздел . На этот раздел у меня установлена операционная система ZenMini. В оригинальный файл я добавляю следующие строки:

title zen-mini
root (hd0,4)
configfile /boot/grub/menu.lst

Теперь, при перезагрузке компьютера, если я выберу этот пункт в меню Grub, то будет осуществлено перенаправление в новое меню, в котором будут пункты, относящиеся к вновь установленной операционной системе ZenMini. В результате у меня имеется файл на разделе с установленной операционной системой, который полностью идентичен оригинальному файлу , с одним единственным различием — раздел заменен на раздел , что позволяет управлять операционными системами более легко. Строфа в файле системы ZenMini выглядит следующим образом:

title zen
kernel (hd0,4)/boot/mykernel root=LABEL=kde4
initrd (hd0,4)/boot/myinitrd

А здесь представлена часть оригинального файла :

title lxde
root (hd0,5)
configfile /boot/grub/menu.lst
title e17
root (hd0,6)
configfile /boot/grub/menu.lst
title Phoenix
root (hd0,7)
configfile /boot/grub/menu.lst

Такое построение загрузки нескольких операционных систем мне кажется наиболее простым и легким для дальнейшей ее поддержки.

Быстрое исправление

Если исполнение команды grub2-install не приводит к каким-либо положительным изменениям и вы не можете загрузить дистрибутив Linux, вам придется полностью переустановить и перенастроить системный загрузчик. Для выполнения этой задачи можно воспользоваться полезной утилитой chroot, которая позволяет временно заменить корневую директорию live-окружения на корневую директорию установленной системы Linux, работоспособность которой необходимо восстановить. Вы можете использовать для этой цели Live CD любого дистрибутива Linux, на котором присутствует утилита chroot. Однако, вам следует убедиться в том, что вы используете Live CD для той же архитектуры центрального процессора, что и установленный на жестком диске дистрибутив. Таким образом, если вы желаете использовать утилиту chroot для восстановления работоспособности 64-битной установленной системы, вам понадобится Live CD для 64-битных систем.

После загрузки Live-окружения в первую очередь следует проверить разделы жесткого диска машины. Используйте команду fdisk -l для вывода списка всех разделов жесткого диска и выясните номер раздела, на котором установлен системный загрузчик GRUB 2, работоспособность которого вы желаете восстановить.

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

sudo mount /dev/sda5 /mnt

Теперь вам придется смонтировать директории, которые должны быть доступны системному загрузчику GRUB 2 для корректного выявления других установленных на компьютере операционных систем:

$ sudo mount --bind /dev /mnt/dev
$ sudo mount --bind /dev/pts /mnt/dev/pts
$ sudo mount --bind /proc /mnt/proc
$ sudo mount --bind /sys /mnt/sys

Теперь вы можете покинуть live-окружение и перейти в окружение установленного на разделе, представленном файлом устройства /dev/sda5, дистрибутива с помощью утилиты chroot:

$ sudo chroot /mnt /bin/bash

Все готово для установки, проверки и обновления системного загрузчика GRUB 2. Как и ранее, для переустановки системного загрузчика следует использовать команду:

sudo grub2-install /dev/sda

Ввиду того, что команда grub2-install не затрагивает файл конфигурации grub.cfg, вам придется создать его вручную с помощью следующей команды:

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

Эта последовательность команд должна помочь исправить проблемы системного загрузчика. Теперь на вашей машине будет установлена новая копия системного загрузчика GRUB 2 со списком всех установленных на ней операционных систем и дистрибутивов. Перед тем, как перезагрузить компьютер, следует покинуть окружение chroot и отмонтировать все использованные файловые системы в следующем порядке:

$ exit
$ sudo umount /mnt/sys 
$ sudo umount /mnt/proc
$ sudo umount /mnt/dev/pts
$ sudo umount /mnt/dev 
$ sudo umount /mnt

После этого вы можете безопасно перезагрузить машину, которая должна вновь вернуться под контроль системного загрузчика GRUB 2, находящегося под вашим полным контролем!

9 ответов

12

Просто введите команду «exit» (без кавычек, конечно). Он должен перейти в другое меню, которое позволяет выбрать загрузчик Windows.

Работает на Lenovo Y50

5

Для загрузки в Windows, если Windows установлена ​​на первом диске /разделе, введите в командной строке :

см. для более подробной информации.

3

У вас есть UEFI-устройство, загрузчик по-прежнему установлен. Вы можете выбрать его в меню настройки UEFI под загрузкой, где у вас будет два варианта (GRUB и старый по умолчанию как второй), удалить первый или переключить порядок.

3

Следующее работало для меня с секционированным диском GPT.

Обратите внимание, что вы можете ввести командную строку из меню загрузки grub и просто ввести команды, как указано выше, для проверки различных комбинаций. Вам нужно ввести идентификатор загрузочного раздела EFI (а не раздела Windows) для команды

Вам нужно ввести идентификатор загрузочного раздела EFI (а не раздела Windows) для команды .

В командной строке grub mode будут перечислены разделы жесткого диска, перечисляет доступные команды.

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

Загрузка с DVD win 10

Откройте командную строку и введите:

check

Например, — это DVD

if существуют следующие команды:

или

example

Перезагрузка

Недавно я столкнулся с той же проблемой. (т. е. изначально иметь отдельный раздел с установленным Ubuntu, с двойной загрузкой из меню grub. Затем я удалил этот раздел Ubuntu из управления дисками Windows, а когда я перезагрузился, просто меню команды grub).

Что я сделал, чтобы вернуться к моей Windows 10:

  1. Сделайте + + для перезагрузки. Во время перезагрузки нажмите и удерживайте кнопку .
  2. Мой компьютер затем дает мне возможность нажимать для загрузки. Я нажал , и он возвращает мне меню с менеджером загрузки Windows на нем.
  3. Я выбрал диспетчер загрузки Windows и нажмите «Ввод». Я вернусь к Windows 10.

Недавно я столкнулся с той же проблемой. (т. е. изначально иметь отдельный раздел с установленным Ubuntu, с двойной загрузкой из меню grub. Затем я удалил этот раздел Ubuntu из управления дисками Windows, а когда я перезагрузился, просто меню команды grub).

Что я сделал, чтобы вернуться к моей Windows 10:

Сделайте перезагрузку Ctrl + Alt + Удалить . Во время перезагрузки нажмите и удерживайте кнопку смены.
Мой компьютер затем даст мне возможность нажать F12 для загрузки. Я нажал F12 , и он возвращает мне меню с диспетчером загрузки Windows.
Я выбрал диспетчер загрузки Windows и нажмите enter . Я вернусь к Windows 10.

Скопировано из https://askubuntu.com/questions/429610/uninstall-grub и-потребительные окна-загрузчик

-1

Попробуйте следующее:

Решено: нет GRUB в Windows 10 с двойной загрузкой Ubuntu

  1. Восстановление из Windows — Командная строка
  2. Отключить быструю загрузку
  3. Используйте инструмент Boot Repair
  4. Windows 10 и Ubuntu устанавливаются в другом режиме

Решение 1. Восстановление из Windows — командная строка

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

  1. В Windows перейдите в меню и найдите Командная строка .
  2. Нажмите правой кнопкой мыши на командной строке и выберите параметр Запуск от имени администратора .
  3. Скопируйте и вставьте команду путь bcdedit/set {bootmgr} EFIubuntugrubx64.efi
  4. Перезагрузите компьютер

— СВЯЗАННЫЕ: ИСПРАВЛЕНИЕ: не могу загрузить Windows 10 после установки Ubuntu

Решение 2. Отключите быструю загрузку

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

  1. Откройте Панель управления .
  2. Найдите термин power в строке поиска в правом верхнем углу.
  3. Нажмите Изменить действия кнопок питания .
  4. Нажмите на Изменить настройки, которые в настоящее время недоступны .
  5. Снимите флажок . Включите быстрый запуск (рекомендуется) .
  6. нажмите Сохранить изменения , чтобы сохранить настройки

Решение 3: Используйте Boot Repair Tool

Boot Repair Tool — это небольшое программное обеспечение, которое может решить большинство проблем, связанных с загрузкой. Для того, чтобы установить и использовать его:

  1. Загрузитесь в вашу операционную систему
  2. Введите следующие команды: sudo add-apt-repository -y ppa: yannubuntu/boot-repair sudo apt-get update sudo apt-get install -y boot-repair && boot-repair
  3. После завершения установки вы можете запустить инструмент Boot Repair из меню приложений
  4. Это сделает некоторое сканирование, поэтому позвольте ему закончить свою работу
  5. Затем появится экран с сообщением о рекомендованном ремонте на основе сканирования.
  6. После выбора рекомендуемых обновлений начнется ремонт.
  7. Откройте терминал, скопируйте и вставьте выделенную команду в терминал одну за другой.
  8. Выберите да с помощью клавиш со стрелками или вкладок и нажмите Enter, чтобы выбрать
  9. в Boot Repair Tool экран попал вперед
  10. Скопируйте указанную там команду и вставьте ее в терминал, нажмите Enter и дайте ей выполнить работу.
  11. Если будет предложено несколько параметров для настройки, где установить GRUB, выберите «Да» и нажмите «Ввод».
  12. Используйте пробел, чтобы выбрать опцию и клавишу TAB для навигации по опциям
  13. После того, как вы закончите установку GRUB, вы можете закрыть Терминал
  14. выберите опцию пересылки на экране Boot Repair Tool
  15. Выберите Да для каждого варианта подтверждения
  16. сообщение об успешном подтверждении появится на экране
  17. перезагрузите компьютер

— СВЯЗАННО: Загрузите и установите ОС Tails на ПК с Windows 10

Решение 4: Windows и Ubuntu устанавливаются в разных режимах

Невозможно выполнить двойную загрузку двух операционных систем, если они установлены в разных режимах — одна в режиме UEFI, а другая в режиме BIOS Legacy.Поэтому, чтобы решить проблему и восстановить двойную загрузку, вы должны преобразовать установку Ubuntu в тот же режим, в котором установлена ​​Windows.

Чтобы решить эту проблему, вы можете использовать утилиту Boot Repair Utility, и вам понадобится загрузочный DVD-диск с установленной операционной системой. После этого вы можете выполнить один из следующих шагов, в зависимости от вашей ситуации.

  1. Чтобы преобразовать Ubuntu в режим UEFI, вам нужно запустить Boot Repair и активировать панель с помощью Расширенные настройки , затем выбрать вкладку Положение GRUB и поставить галочку на отдельной Раздел/boot/efi и нажмите Применить .
  2. Чтобы преобразовать Ubuntu в режим BIOS Legacy, запустите Boot Repair и активируйте панель с помощью Расширенные настройки , затем выберите вкладку Положение GRUB и снимите флажок с отдельной Раздела/загрузки/efi и нажмите Применить .

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

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

Использование встроенных команд Grub во время загрузки

Если процесс загрузки компьютера окончился неудачей по какой-либо причине, то все еще существует возможность войти в систему, используя для этого собственную командную оболочку загрузчика Grub. Если у вас Grub настроен на использование графического меню, то нажмите клавишу «Esc» на клавиатуре, чтобы перейти в текстовый режим после подтверждения своего намерения в соответствующем окне.

Причиной ошибки при загрузке компьютера может быть опечатка, допущенная вами в конфигурационном файле Grub при его правке, или ошибка самого текстового редактора, который разбил одну длинную строку на две короткие и Grub не может понять, как ее читать. Прямо из командной оболочки Grub можно отредактировать эту строку. Для этого выберите в меню загрузчика тот пункт с операционной системой, которая «не хочет» загружаться, с помощью клавиш-стрелок на клавиатуре и затем последовательно нажмите клавиши «E» и «Enter». Если после этого снова нажать клавишу «E», то выбранная строка поместиться в командную оболочку Grub, где ее можно отредактировать. При первоначальном открытии для редактирования курсор будет находиться в самом конце строки, но его можно переместить с помощью клавиш-стрелок или же клавиш «Home» и «End». После внесения изменений в строку нажмите клавишу «Enter», чтобы сохранить их или же клавишу «Esc» для выхода из режима редактирования без сохранения изменений. Если редактор испортил изменяемую строку, то можно удалить ее полностью, нажав клавишу «D».

Затем нажмите клавишу «B» для загрузки видоизмененной строки. Изменения остаются только в оперативной памяти ОЗУ компьютера и не затрагивают файл . Таким образом, строку можно изменять до тех пор, пока не будет достигнута успешная загрузка операционной системы.

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

grub> find /boot/grub/stage2

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

grub> root (hd0,0)

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

Введем команду:

grub> kernel /boot/vm

… и нажмем клавишу «Tab». Этим мы скажем Grub, чтобы он дозаполнил введенную команду теми возможными способами, которые ему доступны на данный момент. Иными словами, мы ввели начало имени файла . Grub сам просмотрит директорию в поисках ядра (так как это мы указали ему командой ) и выведет ниже в отдельную строку все варианты, которые ему кажутся приемлемыми для завершения команды — в данном случае это имена файлов и :

grub> kernel /boot/vmlinuz
Possible files are: vmlinuz vmlinuz-2.6.32.11-pclos2

Мы уже знаем, что файл является ссылкой, в то время как другой файл представляет из себя физическое ядро операционной системы. Которое мы можем использовать в дальнейшем, так как ссылка на него может быть поврежденной. Для того, чтобы добавить это имя в командную строку, нет необходимости вводить его полностью. Просто добавляем дефис и снова нажимаем клавишу «Tab», чтобы Grub сам дополнил все остальное. Такой способ позволяет избежать ошибок при вводе имени файла.

grub> kernel /boot/vmlinuz-
grub> kernel /boot/vmlinuz-2.6.32.11-pclos2

Кажется, все работает, поэтому переходим дальше и выполняем те же действия для файла :

grub> /boot/init
grub> /boot/initrd
Possible files are: initrd-2.6.32.11-pclos2.img initrd.img
grub> /boot/initrd-
grub> initrd /boot/initrd-2.6.32.11-pclos2.img

Видим, что Grub имеет всю необходимую ему информацию, поэтому мы можем попытаться загрузить операционную систему:

grub> boot

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

В заключение нужно сказать следующее. Все приведенные выше примеры работы с загрузчиком Grub безопаснее всего производить (в качестве тренировки) на операционной системе, установленной под виртуальной машиной VirtualBox. Установка и настройка такой машины проста и существует прекрасная статья, описывающая данный процесс, в октябрьском выпуске за 2008 год журнала PCLinuxOS. Статья написана редактором этого журнала parnote. В ней рассматривается установка операционной системы Windows под VirtualBox, но принцип остается одинаковым и полностью применим к инсталляции PCLinuxOS.

Ссылка на основную публикацию