Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Информация
titleДанная статья применима к:
  • ОС СН Смоленск 1.6
    • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7)
    • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
    • Astra Linux Special Edition РУСБ.10015-16 исп. 1
    • Astra Linux Common Edition
    ОС ОН Орёл
    • 2.12 (при наличии загрузочного образа
    ОС ОН Орёл
    • )


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

    .

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

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

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

    Блок кода
     - - - [ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknow-block(0,0)
    

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

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

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

    .

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

    1. Вставить  инсталляционный диск в привод;
    2. Загрузиться с инсталляционного диска;
    3. Выбрать : "Режим восстановления.":


    4. Проследовать по пунктам (нажимая Enter) до выбора корневой файловой системы, где выбрать ..../root:


    5. Затем выбрать запуск оболочки так же в /dev/16-lvm-vg/root:


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


    6. Нажать CTRL+ALT+F2 и нажать Enter, после чего должен открыться терминал на черном фоне:


    7. В терминале на темном фоне выполнить команду :

      Command
      chroot /target


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

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

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

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

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

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



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

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

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

    Command
    Titlels -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. Например, если не используется ядро hardened, то удалить все файлы, относящиеся к этому ядру:

    Command
    rm /boot/*-4.15.3-1-hardened

    Создание initrd

    .

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

    Command
    update-initramfs -t -u -k 4.15.3-2-generic

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

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

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

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

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

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

    .

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

    Command
    update-initramfs -t -u -k 4.15.3-2-generic

    При этом вместо номера 4.15.3-2 использовать номер имеющегося в системе ядра, которое предполагается загружать в дальнейшем.
    Так как после отмонтирования времнной файловой системы всё её содержимое будет утеряно, нужно сохранить новый сформированный initrd, например, скопировав его в каталог /home командой:

    Command
     cp -r /boot/initrd.img-4.15.3-2-generic  /home

    Замена initrd

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

    Command
    umount /boot

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

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

    Command
    cp -r /home/initrd.img-4.15.3-2-generic /boot/

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

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

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

    Command
    update-grub

    Выйти из режима восстановления :

    Command
    exit

    Извлечь диск из привода и перезагрузить систему командой:

    Command
    reboot

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

    Действия после успешной перезагрузки

    Дальнейший порядок действия зависит от причины, вызвавшей неисправность.

    В частности, в случае незавершённой установки обновления, следует завершить установку обновления командой:

    Command
    sudo apt -f install