Быстрое восстановление загрузчика grub в ubuntu

Содержание:

Содержание

Сначала на жёсткий диск устанавливается Windows после чего на отдельный раздел производится установка Linux. При такой схеме в загрузочную область диска добавится загрузчик grub2 что позволяет выбирать в какую из систем производить запуск.

Но бывает так, что в таком состоянии компьютер работает длительное время. У Windows как известно разрастается реестр, и система начинает работать медленно. Тут вы приняли решение переустановить Винду, а заодно затёрли загрузчик Linux. Загрузочная область оказывается повреждена и при старте системы появляется сообщение на чёрном экране: grub rescue unknown filesystem.

Восстановление загрузки при повреждении MBR[править]

Если основной загрузчик располагался в BR и не был повреждён, а проблема только с MBR и/или сбиты настройки активного раздела, исправить это можно с помощью fixmbr или lilo. Если же повреждён основной загрузчик, можно переходить сразу к пункту «Восстановление основного загрузчика».

с помощью fixmbrправить

Можно попробовать воспользоваться утилитой fixmbr из rescue-режима:

без параметров. В большинстве случаев этого достаточно — программа найдёт первый раздел, содержащий загрузчик, сделает его активным и восстановит MBR.

с помощью liloправить

Можно также воспользоваться lilo. Это не только загрузчик, но и утилита для манипулирования MBR и активными разделами. Допустим, мы знаем, что у нас загрузчик (не обязательно LILO) находится на разделе 2.

Восстанавливаем стандартный загрузчик в MBR (можно выбрать mbr или ext, последний допускает загрузку с логических разделов):

lilo -M /dev/sda mbr

Убираем все метки активных разделов (если единственная метка переехала или если меток стало больше одной):

lilo -A /dev/sda 0

Делаем активным раздел 2:

lilo -A /dev/sda 2

Как восстановить загрузчик Кали Линукс? Вариант первый.

Его попробовать я не успел. И смысл метода в том, что вы вообще не покидаете пределов ремонтного терминала Кали и пытаетесь отремонтировать загрузчик “наживую”.  Приводимый пример – самый действенный для всех Линукс систем по восстановлению погибшего загрузчика.

Что понадобится для первого варианта?

прямые руки

Диски ждут очереди, а мы начинаем работу с терминалом. Прямо из терминала  grub rescue Проверьте список видимых разделов командой:

ls

Терминал выдаст всё, что обнаружил в виде списка в одной строке типа:

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

Мол, три раздела (msdosX) на одном (hd0) винчестере. Пробуем каждый из них по порядку командами:

ls (hd0,msdos3)

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

unknown filesystem

Переходим к следующему разделу, пока не увидите:

Filesystem is ext2

Как обнаружите, идём проторенной давно дорожкой: возвращаем root нашему разделу (я для примера взял первый из моих же – он им и оказался):

set root=(hd0,msdos3)

Ставим триггер описателя:

set prefix=(hd0,msdos3)/boot/grub

Вставляем в ядро модуль (ничего указывать больше не нужно – ни путь, ни файл):

insmod normal

И попробуем загрузчик сразу проявить себя:

normal

Появилось? Должно. Загрузитесь в Кали, минуя Windows, и введите команды, которые проверят и сохранят новый загрузчик:

os-prober && update-grub

Если после перезагрузки вас снова выбрасывает в ремонтный терминал, повторите описанные шаги, добавив туда команды

grub-install /dev/sda 

update-grub

 exit

Таким образом можно восстановить загрузчик Линукс не прибегая ни к каким инструментам вообще.

Search & Set

A great many boot problems are due to incorrect paths to required files. The GRUB 2 terminal, in either ‘failure’ mode, provides a robust ability to search hard drive(s) and partitions and to inspect their contents.

In order to boot successfully, the root, prefix, linux and initrd variables must be correct. The user must verify the paths and names of these items. If they are incorrect, use the commands below to find and fix them. GRUB 2 variable settings can be viewed with the set command.

In the following examples, X is a hard drive number; Y is a partition number. If a command example includes either of these replace them with the appropriate value.

How & Where to Search

In the graphic below, the text in red are commands to be entered by the user, and text in green is the output of the command on an operating system (i.e. what you would like to see if your Ubuntu installation is on sda1).

  • The first hard drive is . The first partition is 1. Thus sda1 becomes (hd0,1), sdb5 is (hd1,5).

  • Use the ls command in the follow manner

  • «Tab completion» may work — enter part of the filename and press the TAB key.

Command

Purpose

ls

Search the entire computer for devices and partitions: (hd0) (hd1) (hd0,1) (hd0,5) (hd1,1)

ls /

Search the root directory of the device designated as root (use the set command to check root).

ls (hdX,Y)

View information about a partition — format, size, UUID, etc.

ls (hdX,Y)/

View the root contents of a partition. Use this command to look for the presence of vmlinuz and initrd.img symlinks

ls (hdX,Y)/boot/

View the contents of a folder

ls (hdX,Y)/boot/

Inspect the /boot folder. It should contain the actual kernel (linux-3.2…) and initrd image (initrd.img-3.2….)

ls (hdX,Y)/boot/grub/

Inspect the /boot/grub folder. It should contain grub.cfg and many *.mod files. If looking for a specific file, include the name in the search to limit the number of returns. If available, the command set pager=1 will also limit returns to a single screen.

What to Look For

Where It Should Be (Default Installation)

Specific / General Search Example

grub.cfg

(hdX,Y)/boot/grub/ or /boot/grub/

ls (hdX,Y)/boot/grub/grub.cfg or ls /boot/grub/

vmlinuz

(hdX,Y)/ or

ls (hdX,Y)/vmlinuz or ls /vmlinuz or ls /

linux-3.2.0-14*

(hdX,Y)/boot/ or /boot/

ls (hdX,Y)/boot/vmlinuz-3.2.0-14

initrd

(hdX,Y)/ or

ls (hdX,Y)/ or ls /initrd

initrd.img-3.20-14

(hdX,Y)/ or /boot/

ls (hdX,Y)/boot/initrd.img-3.20-14 or ls (hdX,Y)/boot/

* Note: Use the full kernel name, including -generic, when searching or setting a kernel variable. Using the «TAB completion» technique may eliminate some typing and be more accurate if available.

Use the following commands to set these parameters (if incorrect). Substitute the correct value for X and Y. (Example: set root=(hdX,Y) becomes set root=(hd0,5) )

Task

Command

Notes

Set the prefix

set prefix=(hdX,Y)/boot/grub

Use the actual location of the grub folder

Set root

set root=(hdX,Y)

Set the kernel

linux /vmlinuz root=/dev/sda1 ro

Set the kernel if the symlink vmlinuz exists in /

Set the kernel

linux (hdX,Y)/boot/vmlinuz-3.0.2-14 root=/dev/sda1 ro

Set the kernel itself

Set the initrd image

initrd /initrd.img

Set the initrd image if the symlink exists in /

Set the initrd image

initrd (hdX,Y)/boot/initrd.img-3.0.2-14

Set the initrd image itself

The commands which follow assume you have determined the proper parameters for prefix, root, linux, and initrd. Review the section of this page for guidance .

Через утилиту восстановления загрузчика

Поскольку предыдущий метод может быть не всем под силу, воспользуемся той особенностью Ubuntu, что она может полноценно работать, будучи запущенной с флешки. Для этого мы применим специальную утилиту boot-repair. Что нужно сделать?

  1. Запустить Ubuntu с флешки и убедиться, что имеется активное интернет-соединение.
  2. Найти терминал и запустить в нём одну за другой такие команды:
  1. В меню приложений найти «Восстановление загрузчика» и включить утилиту.
  2. Кликнуть на кнопку «Рекомендуемый способ восстановления» и дождаться окончания процедуры.
  3. В большинстве ситуаций этих действий вполне достаточно для нормальной работоспособности загрузчика Grub Linux.

Через командную строку

Бывает, что повреждения не очень серьезные, но система не запускает все программы. В таком случае появляется следующее сообщение:  Minimal BASH like line editing is supported. В этом случае загрузить Ubuntu можно с помощью командной строки.

Обязательно нужно знать на каком винчестере находится ядро и система. Для выполнения задачи необходимо последовательно выполнить несколько пунктов:

  1. Задать команду ls. (Это необходимо для того, чтобы отсканировать диски и разделы. После этого будет выведен список жестких дисков и тип их файловой системы.)
  2. Выбрать раздел, с которым будем работать.
  3. Запустить оболочку Grub, ядро Linux, систему boot.
  4. Открыть терминал и выполнить следующие команды сразу после того как откроется Ubuntu:
sudo Grub2-install /dev/sda
sudo Grub2-mkconfig -o /boot/Grub/Grub.cfg
  1. Для исправной и регулярной работы перезапустите устройство.

Fixing reboot/shutdown freezes

If your machine freezes upon attempts to shutdown or reboot, try modifying /etc/default/grub. Open the file with gksudo gedit /etc/default/grub (graphical interface) or sudo nano /etc/default/grub (command-line). Any other plaintext editor (Vim, Emacs, Kate, Leafpad) is fine too. Find the line that starts with GRUB_CMDLINE_LINUX_DEFAULT and add reboot=bios to the end.

If done properly it should result in something like GRUB_CMDLINE_LINUX_DEFAULT="quiet splash reboot=bios"

Then save the file, run sudo update-grub and reboot in any way that’s possible for you. After that, reboots and shutdowns should start working properly.

With certain hardware (notably DELL) the kernel parameter that you add needs to be reboot=pci (instead of reboot=bios), the procedure remains the same.

Displays

GRUB 2 can do more than provide a simple black & white menu. Its menu can be customized by the user to present a more visually-appealing menu by changing font colors, backgrounds and resolutions.

For information on using splash images and changing font colors and menu resolutions, please refer to the Grub2/Displays community documentation.

Themes

GRUB 2 Theming is still under development, as is integration with gfxmenu. Theme elements will include colors, fonts, progress indicators, menus, and labels. Both of these hold great promise but are not ready for release with Ubuntu 9.10. Check the Links section at the bottom of this page for references.

Installing/Reinstalling/Moving GRUB2

Please visit the Grub2/Installing community documentation. Information concerning upgrades from GRUB 0.97 (Legacy) to GRUB 2 is now located at Grub2/Upgrading.

Booting an ISO from a Menuentry

Ubuntu ISOs, as well as many utility ISOs and some other Linux operating systems, can be booted from a hard drive via a GRUB menuentry. This eliminates the need to create a CD/DVD and allows bootable image files to be stored only on the hard drive.

For information on this Grub 2 feature, please visit the Grub2/ISOBoot community documentation page.

Восстановление в Boot Repair

Наверное самый простой способ восстановить загрузчик Grub — это использовать утилиту Boot Repair. Для её запуска вам понадобится LiveCD с Ubuntu или другим дистрибутивом. Сначала загрузитесь в Live среду, как описано в первом методе, затем добавьте PPA к системе:

После этого установите утилиту:

Для запуска выполните:

sudo boot-repair

Далее для восстановления загрузчика достаточно нажать кнопку Рекомендуемый способ восстановления:

Затем просто дождитесь завершения процесса восстановления:

После этого компьютер можно перезагружать и всё будет работать.

Настройка Grub с помощью Grub Customizer

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

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

В Fedora, Red Hat и CentOS команда будет немного отличаться:

После завершения установки вы можете запустить программу из главного меню или в терминале:

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

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

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

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

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

Кроме того, нажав кнопку дополнительные параметры, вы можете настроить значения переменных /etc/default/grub, которые мы рассмотрим подробнее ниже.

Когда настройка Grub Customizer будет завершена просто нажмите кнопку Сохранить, чтобы применить все изменения.

Видео, где показана настройка GNU Grub в Linux с помощью Grub Customizer:

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

Как восстановить загрузчик GRUB?

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

Первый из них предполагает взаимодействие с системой через терминал:

  1. Требуется загрузить Linux с того носителя, который использовался при инсталляции. Иногда необходимо войти в БИОС, чтобы включить загрузку с диска или флешки.
  2. Далее стоит открыть терминал, нажав комбинацию клавиш Ctrl + Alt + T, и вывести существующие разделы на экран посредством команды sudofdisk —i.
  3. После этого появится таблица с каталогами. Нужно найти корневой раздел и смонтировать его. Для этого следует ввести sudomount /dev/sda5/mnt. Вместо sda5 требуется прописать имя конкретного раздела. Он может отличаться.
  4. Восстановить загрузчик помогает команда sudo grub-install – root-directory=/mnt /dev/sda.
  5. В самом конце нужно ввести sudo reboot для перезагрузки.

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

  • первая – sudo add-apt-repository ppa^yannubuntu/boot-repair;
  • вторая – sudo apt-get update;
  • третья – sudo apt-get install boot-repair.

Устранение неполадок с помощью загрузочного диска Linux

  • Install CentOS 7 in Basic Graphics Mode: эта опция переустанавливает систему. Не используйте её, если не хотите устранить неполадки в ситуации, когда обычная установка не работает и вам необходим базовый графический режим. Как правило, вам никогда не нужно использовать эту опцию для устранения неисправностей при установке.
  • Rescue a CentOS System: это самая гибкая система спасения. Это должен быть первый вариант выбора при использовании аварийного диска.
  • Run a Memory Test: если вы столкнулись с ошибками памяти, это позволяет пометить плохие микросхемы памяти, чтобы ваша машина могла нормально загружаться.
  • Boot from local drive: здесь я думаю всё понятно.

ВНИМАНИЕ!
Rescue a CentOS System/mnt/sysimagechroot /mnt/sysimagechrootchroot 

6 ответов

Что делать при ошибке GRUB Rescue?

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

Вариант решения проблемы:

  1. В терминале всегда можно ввести определенные команды. Чтобы ознакомиться с ними, нужно набрать $help.
  2. Можно заметить, что в арсенале имеется команда ls, которая позволяет посмотреть список имеющихся каталогов. Ее и нужно ввести.
  3. С ее помощью также следует проверить появившиеся каталоги, чтобы понять, в каком месте располагаются файлы модулей. Пример: ls (hd0,1)/.
  4. В каком-то из разделов должна находиться папка boot. Дальше вводятся следующие команды: первая – $setroot=(hd0,1), вторая – $setprefix=(hd0,1/boot/grub).
  5. В самом конце необходимо запустить модуль normal, позволяющий осуществить загрузку. Сначала требуется ввести: $ insmod normal, а после — $ normal.

Способ 3. Ремонт с помощью Boot Repair в Ubuntu

Ошибка Grub Rescue Unknown Filesystem также исправляется с помощью этой утилиты.

Boot Repair — простой инструмент для восстановления частых проблем с загрузкой для Linux, Windows и других ОС. Он бесплатный, с открытым исходным кодом и простой в использовании (ремонт одним щелчком мыши).

Так как загрузчик не работает, следует запустить Ubuntu с Live CD или USB-карты. И далее, через терминал скачать эту утилиту для починки загрузчика.

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

Boot-Repair

The majority of this guide is devoted to working with the GRUB 2 terminal, which is used to enter commands to attempt to repair a broken bootloader. Boot-Repair is a GUI application which can automatically analyze boot problems and select the proper course of action to repair them. Its simple interface provides beginners as well as experienced Linux users an easy method of repairing the majority of GRUB 2 problems.

Additionally, Boot-Repair contains an automated method to run a boot info script which performs a series of tests and provides a file containing much valuable information regarding the status of the computer’s operating and boot systems. This file can be inspected by community helpers on forums or IRC channels to help diagnose boot problems.

Boot-Repair can be run from a LiveCD or an operating Linux system. To download the package run the following commands:

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

Visit the Boot-Repair community document for more information.

Boot-Repair is available from the Launchpad repositories and can be run from a CD or a working Linux OS.

Восстановление основного загрузчика[править]

Основной загрузчик чаще всего бывает повреждён на компьютерах с несколькими операционными системами, если он расположен в MBR. Это связано с тем, что некоторые ОС переписывают содержимое MBR при установке, что делает невозможным загрузку других ОС. Следует понимать, что возврат старого загрузчика, в свою очередь, может сделать недоступной установку той самой «другой ОС». Иной способ повредить загрузчик — передвинуть разделы. Например, lilo грузит ядро и initrd, ориентируясь на абсолютное расположение файлов на носителе, заданное посекторно при установке загрузчика.

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

Подготовка chrootправить

Загрузитесь с установочного диска ALT Linux в режиме «Rescue». После загрузки мы получаем терминал с командной оболочкой от имени суперпользователя root.

В автоматическом режимеправить

Воспользуйтесь утилитой mount-system, находящейся, как и fixmbr, в rescue-образе. Как и fixmbr, она запускается без параметров. В случае успешного выполнения достаточно будет выполнить chroot в указанную точку монтирования (для первой обнаруженной системы это может быть /mnt/system1). В противном случае потребуется сделать то же самое в ручном режиме.

chroot /mnt/system1

В ручном режимеправить

Ручная подготовка chroot состоит из следующих этапов:

  • Уточняем информацию о том, на каком устройстве находится корневой раздел. Для этого можно воспользоваться утилитой fdisk (или своей памятью, или заранее заготовленными записями). Если будет обнаружено несколько разделов c Linux, возможно, придётся проверять их подряд. Для определённости будем считать, что корневой раздел находится на /dev/sda1
  • Монтируем корневой раздел с жёсткого диска к файловой системе RescueCD:
mount /dev/sda1 /mnt

Убеждаемся, что смонтировали действительно тот раздел

ls /mnt/

Монтируем виртуальные ФС (потребуются для установки загрузчика либо иных задач по прямой работе с диском):

mount --bind /proc /mnt/proc
mount --bind /dev  /mnt/dev
mount --bind /sys  /mnt/sys

Выполняем chroot в собранную ФС:

chroot /mnt

Примечание: Дальнейшие операции будут выполняться относительно нового корня и будут требовать как минимум наличие /dev, про который было написано ранее

Если есть отдельный раздел с /boot, монтируем его в точку /boot

mount /dev/sda2 /boot

Вместо предыдущего пункта можно использовать

mount -a

это смонтирует все ФС, которые описаны в /etc/fstab, включая отдельный /boot

Восстановлениеправить

liloправить

Восстановление lilo, как правило, сводится к запуску команды lilo без параметров (иногда требуется предварительная правка файла /etc/lilo.conf):

/sbin/lilo

grubправить

После того как проведены подготовительные действия и сделан сhroot, необходимо перегенерировать конфиг grub:

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

после чего, если используется обычный BIOS-режим, следует заново установить GRUB в MBR:

grub-install /dev/sda # заменить /dev/sda на то устройство, куда хочется установить GRUB

если же используется EFI-режим, может потребоваться восстановить загрузчик в ESP-разделе (EFI System Partition), который монтируется в /boot/efi:

mount -a # достаточно смонтировать точку монтирования /boot/efi
grub-efi-autoupdate

Загрузчик grub обладает очень широкими возможностями. Вероятно, нелишним будет почитать про него предварительно.

Preventing booting via Grub command-line

The ability to manually boot using the Grub command-line constitutes the biggest security risk in Linux. Any OS can be booted in this manner from any USB or CD/DVD drive, circumventing BIOS restrictions. Placing passwords or locking menu items (in the Grub configuration files) does not prevent a user from booting manually using commands entered at the grub command-line. (Once a foreign OS is booted, of course, it can be used to access any part of an unencrypted hard drive).

There are currently no options to prevent the command-line usage of Grub. Doing so would restrict boot-loading to just the menu options and that is not considered wise

Установка загрузчика Grub в GPT для BIOS

Во-первых, мы можем ничего не менять и установить Grub так, как описано в предыдущем способе. Но тогда он будет установлен в область совместимости с MBR, а это не надежно. Поэтому рекомендуется установить grub так, как описано ниже, на отдельный раздел.

Нужный нам раздел можно создать в установщике любого дистрибутива, если вы выполняете установку в графическом интерфейсе или с помощью gparted. Нам нужен раздел размером 1 Мегабайт без файловой системы и с меткой grub_bios:

Дальше примените изменения, нажмите на разделе правой кнопкой, выберите manage flags и добавьте флаг grub_bios:

Готово. Если у вас нет под рукой доступа к графическому интерфейсу, вы можете создать такой раздел через терминал. Утилита fdisk не поддерживает работу с gpt, поэтому будем использовать gfdisk. Сначала запустите утилиту:

Чтобы создать новый раздел нажмите n и выберите номер раздела:

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

Выбираем конечный сектор раздела. По умолчанию будет использоваться максимальный. Нам нужен раздел размером 1 Мб. Размер одного сектора GPT — 512 байт, поэтому нам нужен раздел размеров 2048 секторов. Таким образом, конечный сектор будет 24000 с чем-то.

HEX Code — это тот код, который скажет системе, что этот раздел нужно использовать для Grub, нужно установить ef02:

Готово, осталось нажать w для записи изменений на диск:

Установка grub на жесткий диск дальше выполняется точно так же, как и в предыдущем способе:

Осталось создать конфигурационный файл grub:

Теперь переходим к самому сложному, как установить grub efi.

Железо

Формат видео High Density (HD) или, как его еще называют, «видео высокой четкости (разрешения)», обрел популярность сравнительно недавно. Такой формат обеспечивает более высокое качество изображения. Происходит это за счет увеличения разрешения, то есть – количества пикселей, отображаемых на экране. Как следствие возрастает количество деталей, которыек видно на экране (если экран способен передать их) и… нагрузка на железо ПК. Если для воспроизведения видеофайлов привычного нам SD-видео (Standart Definition — стандартного разрешения)  нам вполне достаточно было  старенького Pentium IV, а то и Petium III с самой простой видеокартой, то для воспроизведения HD-видео потребуется достаточно производительная система. И чем более качественное видео мы будем воспроизводить, тем выше требования к железу.

Так, в случае использования для декодирования только ресурсов CPU (это происходит, если видеокарта вашего ПК не поддерживает аппаратную обработку видео высокой четкости функции HD), при потоке от 30 Мегабит/сек даже на достаточно шустром процессоре Intel Core2 Duo E8400 с тактовой частотой в 3.0 гГц начинаются притормаживания – выпадают отдельные кадры видео.

Особенности подключения двух видеоадаптеров

Главные конкуренты, выпускающие графические чипы, представили эту технологию почти одновременно. У Nvidia на видеокартах GeForce она называется SLI, у AMD на Radeon — Crossfire. Две спаренных видеоадаптера, даже разные, можно подключить к 1 монитору или к 2 мониторам — зависит от того, как вам будет удобнее пользоваться.

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

Это позволяет наслаждаться геймингом в разрешении 4К, использовать системы виртуальной реальности или решать задачи другого плана — запускать мощные программы для 3D моделирования или рендерить видео, параллельно используя другой софт.

Подключение двух видеоадаптеров к ПК имеет определенные ограничения. Вот список условий, которые необходимо выполнить:

  • Блок питания, мощности которого достаточно, чтобы запитать оба графических ускорителя. Стокового БП на 300 Ватт явно недостаточно: лучше брать с запасом вплоть до 1000 Ватт. На БП должно быть достаточно коннекторов, чтобы запитать обе графических платы.
  • Поддержка технологии материнской платой. Без SLI или Crossfire, даже если на материнке есть 2 разъема PCI‑E, необходимых для монтажа, в связке эти детали попросту не будут работать.
  • Графический чип одного бренда — или AMD, или Nvidia. Чипы разных марок в связке работать не будут из-за различия в реализации этих технологий. Желательно использовать одинаковую модель GPU — например, пару GTX 1080 Ti. Можно брать видеокарты разных производителей, это не критично. Технология будет работать, если одна деталь стоковая, а вторая разогнана уже на заводе.
  • Поддержка SLI или Crossfire графическим адаптером и наличие моста для подключения деталей в связке.

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

Почему система не загрузилась

Теперь рассказываю, что было в моем случае. Корень системы / располагался на lvm разделе вместе с /boot разделом. В какой-то момент корневой раздел был увеличен в размере за счет расширения тома lvm еще одним диском. Все это было сделано на лету, без перезагрузки системы. Причем сделано было мной давно, и с тех пор сервер ни разу не перезагружался до настоящего времени. Я не знаю почему, но данная операция привела к тому, что grub перестал загружаться с этого lvm раздела.

UUID физического тома и логического раздела не поменялись. То есть там информация, в начале загрузки, с ошибкой загрузки диска с lvmid, верная. Уиды правильные. Я понял, что причина в изменении размера диска только по аналогичным сообщениям в интернете. Наткнулся на несколько человек, которые обращались с похожей проблемой, где перед этим они тоже изменяли корневой раздел. Похоже это какой-то системный баг, возможно даже конкретной системы.

В моем случае на диске почему-то оказался отдельный раздел на 500 мб с файловой системой ext2. На нем как раз и был загрузчик, с которого я загрузился в rescue boot. Откуда взялся этот раздел, я не знаю. По идее, если он был создан автоматически во время установки системы, на нем бы и должен быть актуальный раздел /boot. Но нет, его не было в fstab и он не использовался. Я не стал долго разбираться, почему так получилось, а просто подмонтировал этот раздел в систему, обновил на нем grub и записал обновленный grub в MBR. После этого система благополучно загрузилась с этого раздела.

Если кто-то знает, почему мой загрузчик не смог загрузиться с lvm раздела, при том, что uuid указан правильно, прошу подсказки. Самому очень интересно, так как ситуация получилась неприятная и совершенно мне не понятная. Я часто расширяю корневой lvm раздел на ходу, но первый раз сталкиваюсь с тем, что это приводит к поломке загрузчика. Grub уже давно умеет грузиться с lvm раздела и каких-то дополнительных действий для этого делать не надо.

Rescue mode

Процесс восстановления в режиме grub rescue происходит в несколько этапов.

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

Rrescue mode имеет четыре команды

  • ls;
  • set;
  • unset;
  • insmod.

Сначала включаем первую:

ls

После этого на экране появится подобное:

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

Иногда система Grub неверно определяет файловые системы на дисках. Попытайтесь угадать диски, которые видите. Это не составит труда зная их структуру.

В примере видно, что загрузчик показывает их как msdos, где два доступных диска. На первом три раздела, а на втором два.

Обычно загрузчик нумерует разделы в обратном порядке. Чтобы было понятнее используйте вид hd0,1. Если в Grub отсчет разделов идет с 1, а дисков с 0, то сразу будет понятно в какой раздел установлена операционная система. Применяем следующую команду:

set prefix-(hd0,1)boot/grub
set root-(hd 0,1)

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

ls /boot/grub

О том, что все сделано правильно подскажет появление списков и папок.

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

insmod ext2
insmod normal
normal

После этого система будет работать в полноценном режиме.

Для закрепления результата зайдите в терминал Linux и с root-правами выполните следующую команду:

grub-install / dev/sdX

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

При расположении ОС в разделе btrfs выполните другое действие:

set prefix-(hd0,1)/@/boot/grub
set root-(hd 0,1)

Затем подгрузите модули

insmod btrfs
insmod normal

И запустите Grub:

normal

Данная утилита позволяет запускать систему быстро и без проблем.

Как восстановить загрузчик Кали Линукс? Вариант 2.

Что понадобится для второго варианта?

  • прямые руки
  • загрузочный диск с Кали Линукс

Я пошёл другой проторенной тропинкой и воспользовался по старинке загрузочным liveDVD с Кали. Она сохранилась на виртуальном дисководе в числе других (флешка Кали Persistance не прокатила). Как уже отмечалось, такой способ восстановления загрузчика универсален, так как позволяет вернуть загрузчик Линукс при переустановке Windows (впоследствии я этим и воспользовался, окончательно перейдя на Windows 10 с Windows 7).

Для начала (уже из-под живой Кали) я загрузил утилиту по работе с разделами (проверил наименование разделов):

gparted

номер раздела с Кали отлично читается – искать не нужно: /dev/sda3

А теперь в терминале вот эти команды; по порядку или в строку через && :

mount /dev/sda3 /mnt
mount --bind /dev /mnt/dev
mount --bind /dev/pts /mnt/dev/pts
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot /mnt
grub-install /dev/sda
update-grub
exit
umount /mnt/dev/pts
umount /mnt/dev
umount /mnt/proc
umount /mnt/sys
umount /mnt

Посматривайте на терминал, он должен обнаружить и входную точку в Windows записью (по-русски или на английском):

Найден Windows 7 на /dev/sdaX

Перезагружаемся, LiveDVD с Кали вынимаем.

Входим в Кали через отремонтированный загрузчик обычным порядком и проверив, на месте ли Windows:

os-prober

закрепляем успех:

update-grub

Alles in ordnung.

P.S. Если вы воспользовались этой методой для возврата загрузчика при переустановке Windows, учтите, что номера разделов с точки зрения Кали также могли поменяться. И потому при попытке зайти из загрузочного меню Линукс в ОС Windows вас на секунду может задержать ошибка о том, что информация по некоторым из разделов не соответствует предыдущим записям. Подождите некоторое время, загрузчик сам справится.

Успехов.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector