Alt linux восстановление системы

Восстановление загрузочной записи

Загрузчик ОС может находиться как в Master Boot Record (MBR), так и в boot record раздела. Если загрузчик находится в BR раздела, этот раздел должен быть помечен как активный, а в MBR должен находиться стандартный загрузчик, который находит активный раздел и запускает следующий загрузчик оттуда.

GPT

надо описать отличия от DOS PT и, возможно, упомянуть отличия BIOS от UEFI, где команда fixmbr неприменима

Рекомендуемые средства

Действия, описанные в разделе «Восстановление загрузки при повреждении MBR», можно сделать из любой ОС любыми имеющимися там средствами. Для действий, описанных в разделе «Подготовка к восстановлению основного загрузчика» и далее требуется любой LiveCD с Linux, соответствующий по архитектуре установленной на восстанавливаемой системе (но x86_64 может быть применён для i586). Во многих образах ALT Linux присутствует возможность загрузиться в режиме восстановления (rescue). Как правило, в этих образах присутствуют две полезные утилиты — fixmbr и mount-system . Кроме того, существует специализированный LiveCD ALT Linux Rescue.

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

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

с помощью fixmbr

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

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

с помощью lilo

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

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

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

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

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

Читайте также:  Surface windows rt linux

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

Подготовка chroot

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

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

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

В ручном режиме

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

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

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

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

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

lilo

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

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 обладает очень широкими возможностями. Вероятно, нелишним будет почитать про него предварительно.

Замечания

Если изменилась таблица разделов

Если проблемы с загрузчиком — результат перемещения/объединения разделов, то до непосредственного восстановления загрузчика потребуется скорректировать настройки загрузчика. Кроме этого, надо будет поправить /etc/fstab (для него порядок исправления неважен).

Пример для LILO (для GRUB смотреть в его описании).

Предположим, у вас был раздел sda3 с Windows, а стал раздел 1. В /etc/lilo.conf надо заменить

other="/dev/disk/by-id/ata-SAMSUNG_HM160HI_S14QJF0Q772514-part3" label="Windows1"
other="/dev/disk/by-id/ata-SAMSUNG_HM160HI_S14QJF0Q772514-part1" label="Windows1"

И соответственно убрать/поправить в /etc/fstab строчку вида

/dev/sda3 /mnt/sda3 ntfs-3g locale=ru_RU.UTF-8,dmask=0,fmask=0111 0 0

Если у Вас в конфигурации загрузчика и в fstab используются UUID, то для изменённых разделов, новые UUID можно посмотреть командой blkid . Не забудьте про параметр ядра resume, где указывается раздел swap.

Читайте также:  Linux convert dbf to csv

Если нужны изменения в initrd

Непосредственно к восстановлению загрузочной записи это не относится, но может иметь отношение к процессу загрузки при замене контроллера HDD или иных проблемах, требующих изменений в initrd. В ALT Linux, начиная с дистрибутивов, основанных на ветках p5/5.1, используется утилита make-initrd. Вам следует узнать, какое ядро установлено по умолчанию (смотреть в конфигурации загрузчика), и пересобрать соответствующий initrd до выполнения пункта «Восстановление загрузчика». В большинстве случаев будет достаточно простого запуска make-initrd с указанием версии ядра, так как состав модулей будет определён автоматически исходя из загруженных на данный момент. Если это не поможет, придётся изучить make-initrd более подробно.

# ls -1d /lib/modules/* /lib/modules/3.14.22-std-def-alt1 /lib/modules/3.14.23-std-def-alt1 /lib/modules/3.16.6-un-def-alt1 /lib/modules/3.4.96-led-ws-alt0.M70P.1

В примере видны наборы модулей для четырёх ядер. Допустим, по-умолчанию используется 3.16.6-un-def-alt1. Команда на пересборку будет выглядеть так:

# make-initrd --kernel=3.16.6-un-def-alt1

В случае Lilo надо обновить конфигурацию загрузчика (просто запустить lilo), так как Lilo обращается к информации в initrd минуя файловую систему и должен знать о расположении данных на HDD, а при пересоздании файла его расположение практически всегда меняется.

Источник

unixforum.org

Решено: Востановление загрузчика AltLinux 4 Desktop

Решено: Востановление загрузчика AltLinux 4 Desktop

Уважаемы форумчане, изучил все что тут написано про восстановление,
в частности попался вот этот пункт

Товарищи, большая просьба — все свои проблемы по загрузчику выносите в отдельные топики, вас за это никто не укусит!

по этому не судите строго.

Вообщем суть проблемы такова. Загрузчик как и полагается в наших новичковских юзаниях был успешно затерт.

Имеется следующее: диск разбит на два на одном аналогично затертый виндовс, под названием hda1, на другом Альт под названием hda2

Загрузил спасательную систему и проделал следующее
mount /dev/hda2 /mnt
chroot /mnt
lilo

Система выдала fatal: raid_setup:stat («/dev/hda»)

пожалуйста помогите решить задачу, спасибо

Re: Решено: Востановление загрузчика AltLinux 4 Desktop

Сообщение Alexei_VM » 09.02.2008 01:50

Суть, в двух словах:
в современном Линуксе одного chroot недостаточно, потому что многие файлы, нужные для работы системы, не хранятся на диске. Например, каталог /dev является виртуальным, и заполняется после старта системы, аналогично /proc и /sys. Однако, информация из /dev (и возможно /proc) нужна для работы lilo.

Поэтому восстановление загрузчика нынче делается так:

mount /dev/hdXX /mnt mount --bind /dev /mnt/dev mount --bind /proc /mnt/proc lilo -r /mnt

Re: Решено: Востановление загрузчика AltLinux 4 Desktop

Все проделал, побежали буковки
Сделал reboot
Но система не загружается. при нажатии на enter выдает invalid comressed format (err=1)

Re: Решено: Востановление загрузчика AltLinux 4 Desktop

Сообщение another2007 » 09.02.2008 10:25

Читайте также:  Кнопка super в линуксе

Тоже сталкивался с потерей загрузчика, после чего переставлял линукс всегда)) Вопрос немного другой, а как можно заранее сохранить загрузчик. И еще по посту чуть выше. «/dev/hdXX» — за место ХХ что. Особенно за место последнего Х?

Re: Решено: Востановление загрузчика AltLinux 4 Desktop

Сообщение Alexei_VM » 09.02.2008 12:33

Много раз терял загрузчик в результате различных экспериментов. НИКОГДА не переставлял Линукс. У меня система с 2001 года не переустанавливалась ни разу, за это время она была перенесена раз 5 или 6 с винта на винт, сменила 4 материнских платы. БЕЗ переустановки.

А зачем? Сохранять надо ОДИН файл с настройкой загрузчика, например /etc/lilo.conf. А закгрузчик, в случае аварийного сбоя или переноса системы на другой винт, восстанавливается за 3 минуты с помощью любого загрузочного СД и приведенных выше команд.

Почитайте документацию. Например, тут:

На всякий случай: SATA диски именуются так же, как и SCSI.

Все проделал, побежали буковки
Сделал reboot
Но система не загружается. при нажатии на enter выдает invalid comressed format (err=1)

Какие буковки побежали? И что у вас в /etc/lilo.conf

Re: Решено: Востановление загрузчика AltLinux 4 Desktop

Сейчас попробовал ни линукс ни виндовс не грузится

Система как и всегда выдает
NTLDR is missing
Press any key to restart

Помогите пожалуйста справиться с проблемой уважаемые линуксоиды!

Тоже сталкивался с потерей загрузчика, после чего переставлял линукс всегда)) Вопрос немного другой, а как можно заранее сохранить загрузчик. И еще по посту чуть выше. «/dev/hdXX» — за место ХХ что. Особенно за место последнего Х?

Ну это диски, например hda1 где hda винчестер 1 — это номер логичексого диска.

Кстати может в этом проблема, когда устанавливал Alt то загрузчик прописал на диск hda1 где стоял виндовс, в итоге виндовс не загружался, загружался только линукс.

Re: Решено: Востановление загрузчика AltLinux 4 Desktop

Сообщение Alexei_VM » 09.02.2008 13:20

Кстати может в этом проблема, когда устанавливал Alt то загрузчик прописал на диск hda1 где стоял виндовс, в итоге виндовс не загружался, загружался только линукс.

Ну зачем? Зачем ставить загрузчик в тот же раздел, где стоит Виндовз. Загрузчик надо ставить в MBR загрузочного ДИСКА, а не раздела на диске.

А теперь ступайте на форумы виндузятников, и выясняйте, как восстановить загрузчик винды (что-то там про загрузку с инсталляционного диска в консоль восстановления и выполнение команд fixmbr и еще каких-то).

Потом загружайтесь с rescue-диска с линуксом, исправляйте /etc/lilo.conf (строка boot= должна содержать имя загрузочного диска, например boot=/dev/sda). И далее восстанавливайте загрузчик уже упомянутым способом.

Для того, чтоб lilo мог загружать и виндовз, пропишите в lilo.conf секцию

other=/dev/sdb1 label=Vista table=/dev/sdb

Заменив имена дисков и разделов в соответствии с вашей системой. И после правки lilo.conf не забудьте выполнить команду lilo (и проследить, что она выполнилась без ошибок).

Источник

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