Содержание

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Данная статья применима к:

  • ОС СН Смоленск 1.6
  • ОС ОН Орёл 2.12 (при наличии загрузочного образа)


Общие сведения.

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

  • загрузка с инсталляционного диска с последующим переходом в "режим восстановления";
  • необязательное резервное копирование содержимого каталога /boot;
  • подключение к каталогу /boot временной файловой системы, имеющей свободное место;
  • перегенерация файла initrd;
  • замена старог файла на новый;

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

 - - - [ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknow-block(0,0)

Возможны и другие ошибки.

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

Загрузка в режиме восстановления.

Для загрузки в режиме восстановления требуется инсталляционный диск (USB-накопитель) ОС СН Astra Linux SE 1.6.
Порядок действий:

  1. Вставить  инсталляционный диск в привод;
  2. Загрузиться с инсталляционного диска;
  3. Выбрать: Режим восстановления.
  4. Проследовать по пунктам (нажимая Enter) до выбора корневой файловой системы, где выбрать ..../root:
  5. Затем выбрать запуск оболочки так же в /dev/16-lvm-vg/root:

    После выполнения указанных действий должен загрузиться терминал с синим фоном:
  6. Нажать CTRL+ALT+F2 и нажать Enter, после чего должен открыться терминал на черном фоне:
  7. В терминале на темном фоне выполнить команду :

    chroot /target

На этом загрузка в режиме восстановления завершена. Более подробно о загрузке в режиме восcтановления см.: Режим восстановления

Резервное копирование каталога /boot

Резервное копирование каталога /boot не обязательно.

Копирование выполняется в каталог /home, в папку boot-backup, в случае успешного восстановления загрузки системы не забудьте его удалить.

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

cp -r /boot/ /home/boot-backup

Дождитесь завершение работы команды.

Освобождение места в каталоге /boot

Проверить содержимое каталога /boot:

ls -la /boot

итого 226516
drwxr-xr-x 3 root root 4096 апр 10 21:40 .
drwxr-xr-x 25 root root 4096 апр 13 17:27 ..
-rw-r--r-- 1 root root 1492731 июн 20 2018 abi-4.15.3-1-generic
-rw-r--r-- 1 root root 1467894 июн 20 2018 abi-4.15.3-1-hardened
-rw-r--r-- 1 root root 215263 июн 20 2018 config-4.15.3-1-generic
-rw-r--r-- 1 root root 215941 мар 4 16:10 config-4.15.3-2-generic
drwxr-xr-x 5 root root 4096 апр 10 21:40 grub
-rw-r--r-- 1 root root 46731042 апр 10 21:40 initrd.img-4.15.3-1-generic
-rw-r--r-- 1 root root 45810528 апр 10 21:39 initrd.img-4.15.3-1-hardened
-rw-r--r-- 1 root root 46182771 апр 10 21:40 initrd.img-4.15.3-2-generic
-rw-r--r-- 1 root root 44873873 апр 10 21:40 initrd.img-4.15.3-2-hardened
-rw------- 1 root root 8038256 июн 20 2018 old-vmlinuz-4.15.3-1-generic
-rw------- 1 root root 7214960 июн 20 2018 old-vmlinuz-4.15.3-1-hardened
-rw-r--r-- 1 root root 0 июн 20 2018 retpoline-4.15.3-1-generic
-rw-r--r-- 1 root root 0 июн 20 2018 retpoline-4.15.3-1-hardened
-rw------- 1 root root 3969624 июн 20 2018 System.map-4.15.3-1-generic
-rw------- 1 root root 3186040 июн 20 2018 System.map-4.15.3-1-hardened
-rw------- 1 root root 3995440 мар 4 16:10 System.map-4.15.3-2-generic
-rw------- 1 root root 3174738 мар 4 16:10 System.map-4.15.3-2-hardened
-rw------- 1 root root 8144672 мар 4 16:10 vmlinuz-4.15.3-2-generic
-rw------- 1 root root 7190304 мар 4 16:10 vmlinuz-4.15.3-2-hardened


В примере выше видно, что в каталоге /boot хранятся две версии ядра - 4.15.3-1 и 4.15.3-2, и каждая версия представлена в двух вариантах - generic и hardened. Удалить ненужные файлы можно командой rm. Например, удалить initrd для  неиспользуемого ядра 4.15.3-1-hardened:
rm /boot/initrd.img-4.15.3-1-hardened
Либо использовать MC (для примера удаляются два файла):

Далее выйти из MC, нажав клавишу F10

Создание initrd.

Новый initrd создать командой:

update-initramfs -t -u -k 4.15.3-2-generic
При этом вместо номера 4.15.3-2 использовать номер имеющегося в системе ядра, которое предполагается использовать.

Необязательное создание гарантированно свободного места

Монтирование tmpfs в каталог /boot

Для того, чтобы смонтировать в каталог /boot чистую файловую систему, имеющую свободное место, выполните команду:

mount -t tmpfs none /boot
После выполнения монтирования старое содержимое каталога /boot станет недоступно, и каталог будет представляться пустым.

Создание и перемещение initrd.

Новый initrd в примонтированной файловой системе создать такой же командой:

update-initramfs -t -u -k 4.15.3-2-generic
При этом вместо номера 4.15.3-2 использовать номер имеющегося в системе ядра, которое предполагается загружать в дальнейшем.
После чего сохранить новый сформированный initrd, например, в каталог /home командой:
  cp -r /boot/initrd.img-4.15.3-2-generic  /home
Либо использовать MC и переместить файл (клавиша F6) в каталог /home.


Замена initrd

Отмонтировать tmpfs от каталога /boot командой:

umount /boot
После отмонтирования tmpfs старое содержимое каталога /boot станет вновь доступно.

Заменить старый файл initrd.img-4.15.3-2-generic на новый командой:

cp -r /home/initrd.img-4.15.3-2-generic /boot/
Либо переместить новый файл в /boot используя MC:

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

Перезагрузка системы

После замены файла initrd обязательно выполнить команду:

update-grub
Затем выйти из режима восстановления :
exit
После выполнения указанных выше операций извлечь диск из привода и перезагрузить систему командой:
reboot
После выполнения указанных операция система должна загрузиться штатно.






  • No labels