Astra linux откат системы

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

В данной статье рассматривается способ восстановления загрузочных файлов (содержимого каталога /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 Special Edition очередное обновление 1.6.
Порядок действий:

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

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

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

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

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

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

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

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

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

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

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

Проверить содержимое каталога /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, то удалить все файлы, относящиеся к этому ядру:

Создание initrd

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

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

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

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

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

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

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

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

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

Замена initrd

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

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

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

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

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

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

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

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

Источник

Установка Astra Linux на LVM и применение LVM для отката обновлений

LVM — Менеджер логических томов (англ. logical volume manager ) — подсистема, позволяющая использовать разные области одного жёсткого диска и/или области с разных жёстких дисков как один логический том.

Термины

  • Физический том ( physical volume , pv) — устройство, представляющееся системе как один диск (жёсткий диск или его раздел, RAID-массив);
  • Группа томов ( volume group , vg) — несколько физических томов pv (группа, набор);
  • Логический том ( logical volume , lv) — логический раздел; аналог разделов hda1, sdb3 и др.; виртуальное блочное устройство.

Установка ОС Astra Linux на логических дисках LVM

Для установки ОС Astra Linux на логические диски под управлением LVM следует:

    Начать установку в обычном режиме и продолжить её до этапа выбора разметки дисков:

  1. Выбрать диск для разметки:
  2. Выбрать способ разметки диска (для примера — автоматическая разметка с размещением всех файлов в одном дисковом разделе):

Дисковый раздел для размещения каталога /boot по умолчанию создаётся с размером 254МБ, что может в дальнейшем оказаться недостаточным для установки дополнительных ядер. Для предотвращения возможных проблем с установкой обновлений рекомендуется сразу увеличить размер этого раздела по крайней мере до 512МБ.

  • После завершения разметки дисков продолжить установку в обычном порядке. Все необходимые пакеты будут установлены автоматически.
  • Проверка успешности установки LVM

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

    В примере выше сообщается о наличии группы томов astra-vg с общим размером 37.75GB, в том числе 12ГБ свободного пространства (Имя astra-vg выбирается по умолчанию при стандартной установке ОС).

    Так же проверить наличие LVM можно командой просмотра списков логических томов, например:

    sudo lvs
    LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
    lvsnap astra-vg swi-a-s— 4,00g root 79,20
    lvsnap2 astra-vg swi-a-s— 4,00g root 75,78
    root astra-vg owi-aos— 15,76g
    swap_1 astra-vg -wi-ao—- 2,00g

    В примере выше сообщается о наличии томов root и swap_1 (создаются автоматически при установке «по умолчанию»), и о наличии двух моментальных снимков логического тома root (см. параметр Origin) с именами lvsnap и lvsnap2, заполненных на 79.20% и 75.78%.

    Применение LVM для отката изменений

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

    Добавление свободного пространства

    Если при установке системы при разметки дисковых разделов не было зарезервировано свободное место, можно подключить и добавить в группу новый накопитель или дисковый раздел. Например, добавим накопитель /dev/sdb:

    pvs
    PV VG Fmt Attr PSize PFree
    /dev/sda5 astra-vg lvm2 a— 17,76g 0
    /dev/sdb astra-vg lvm2 a— 20,00g 12,00g

    В примере выше представлены два физических тома (том /dev/sda5, являющийся дисковым разделом (создан автоматически при установке системы), и том /dev/sdb, являющийся устройством, и добавленный после установки системы. При этом оба тома входят в группу томов astra-vg).

    После создания физического тома его нужно добавить в какую-либо группу томов (фактически — расширить группу томов на новый физический том), например, добавим созданный физический том в созданную при установке группу томов vg-astra:

    Создание моментального снимка

    Моментальный снимок можно создать командой:

    Моментальный снимок не является копией диска, а содержит только изменения после момента создания диска. Поэтому:

    • Снимок создаётся быстро, практически моментально;
    • Размер места, назначаемого для размещения снимка, не зависит от размеров сохраняемого носителя, а зависит только от количества вносимых изменений;
    • Место, отведённое под снимок, расходуется по мере внесения изменений;

    При установке обновлений вносится значительное количество изменений. В качестве примера: при написании этой статьи при установке Update 3 на ранее не обновлявшуюся ОС Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с минимальной конфигурацией ПО из отведённых под снимок 4ГБ было израсходовано 79%. Очевидно, при этом количество изменений зависит от набора установленного ПО (чем больше ПО — тем больше изменений), и от наличия ранее установленных обновлений (если были установлены предыдущие обновления — то изменений будет меньше).

    • -s — команда выполнения снимка состояния;
    • -n lvsnap — имя создаваемого логического тома со снимком (lvsnap);
    • /dev/astra-vg/root — имя сохраняемого тома (см. выше примеры команд, выводящих списки томов).

    Для предупреждения отказов записи из-за переполнения области снимка в настройках LVM предусмотрена возможность автоматического увеличения размеров логических томов по мере их заполнения, для чего в файле /etc/lvm/lvm.conf предусмотрены параметры:

    • snapshot_autoextend_treshold = 100 — величина в процентах, указывающая, при каком заполнении тома производить его автоматическое увеличение. По умолчанию установлена величина 100%, т.е. автоматическое увеличение отключено;
    • snapshot_autoextend_percent = 20 — величина, указывающая, на сколько процентов автоматически увеличивать том.

    При переполнении пространства, отводимого под снимок, запись на диск будет запрещена. Логический том может увеличиваться автоматически, но для этого должно иметься свободное место в содержащей этот логический том группе томов. Группа томов автоматически увеличиваться не может.

    Откат изменений

    1. Для отката изменений следует перезагрузить компьютер, например, с Live-образа Astra Linux Common Edition (или с отдельного дискового раздела, если такой раздел предусмотрен в системе).

      При работе в открытой сети:

        Если в сети не настроено автоматическое назначение параметров сетевых подключений, то вручную настроить подключение к сети (в частности, указать в настройках сетевого подключения сервер DNS, например 8.8.8.8) и перезапустить службу сети, чтобы это изменение настройки вступило в силу;

      Внимание! Загрузочный дисковый раздел /boot НЕ ДОЛЖЕН находиться на диске LVM.
      При установке ОС Astra Linux с параметрами «по умолчанию» это правило будет выполнено автоматически, при ручных настройках следует выделить для размещения загрузочных данных отдельный дисковый раздел.

      Внимание! Если предполагается в дальнейшем сохранять снимки состояния системы, то при разметке дисковых разделов рекомендуется предусмотреть свободное место для размещения этих снимков (не обязательно, так как в дальнейшем можно подключить и использовать дополнительные накопители).

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

      Источник

      Читайте также:  How to create user in linux with group
    Оцените статью
    Adblock
    detector