Режимы работы Системы
Функционирование ОС возможно в трех режимах – нормальном, в режиме восстановления и в аварийном режиме. По умолчанию при включении ПК ОС загружается в нормальном рабочем режиме, для включения других режимов необходимо добавление параметров загрузки в меню начального загрузчика.
Для работы в режиме восстановления и в аварийном режиме в общем случае нужны полномочия администратора Системы.
Для изменения параметров загрузчика нужно в начальном меню GRUB нажать клавишу E и в открывшемся редакторе вписать в параметр загрузки в строке, начинающейся с "linux /boot/vmlinuz...", например рядом с параметром quet. После этого нужно нажать клавишу F10 для загрузки ОС с указанными параметрами.
И режим восстановления, и аварийный режим являются однопользовательскими; в них невозможна одновременная авторизация нескольких пользователей, также в них не активируются сетевые интерфейсы.
Режим восстановления
В ОС есть возможность загрузки в режиме восстановления (rescue mode) без графической оболочки и необязательных сервисов. Этот режим дает шанс восстановить Систему, которая перестала загружаться в графическом режиме, например, при сбое обновления или при указании нерабочих настроек в файлах конфигурации.
Для загрузки ОС в режиме восстановления необходимо при включении Системы, как описано в п. Режимы работы Системы, загрузиться с параметром systemd.unit=rescue.target.
После такой загрузки возможен вход в Систему с помощью консольного интерфейса. Система попытается смонтировать локальные разделы обычным образом, и появится возможность изменять файлы конфигурации редактором nano или встроенным редактором текстовой оболочки mc.
Аварийный режим
Аварийный режим (emergency mode) используется для восстановления ОС или спасения данных в случаях серьезных ошибок функционирования, например, при повреждениях ФС, когда не удается войти даже в режиме восстановления.
Для загрузки Системы в аварийном режиме необходимо при включении Системы, как описано в п. Режимы работы Системы, загрузиться с параметром systemd.unit=emergency.target.
После такой загрузки возможен вход и управление ОС с помощью консольного текстового интерфейса. В аварийном режиме корневой раздел монтируется "только для чтения", другие разделы не монтируются, и сетевые интерфейсы не активируются.
Синхронизация с репозиториями
Если сбой ОС произошел во время обновления вследствие проблем с сетью или ошибок питания, есть возможность в консольном интерфейсе запустить сеть командой:
sudo systemctl start NetworkManager
При необходимости установить сетевое соединение командой nmtui и синхронизировать текущую Систему с репозиториями, приведя версии ее пакетов в соответствие с актуальными. Это можно сделать командой:
sudo dnf distrosync
Следует обратить внимание, что при такой операции могут быть удалены сторонние пакеты, установленные не из подключенных репозиториев.
Восстановление функционирования ОС
Переустановка ОС с сохранением данных
Самым быстрым и простым способом восстановления Системы является ее переустановка с инсталляционного образа с сохранением пользовательских данных. В процессе установки важно не форматировать раздел /home, где хранятся пользовательские данные. Для этого в инсталляторе ОС Хром необходимо вручную выбрать раздел /home, убедившись, что не установлен флажок "Форматировать". Таким образом, все пользовательские файлы и настройки, находящиеся в этом разделе, сохранятся, а Система будет переустановлена в оптимальном состоянии.
Это подходит в случаях, когда системные файлы повреждены, но данные пользователей остаются целыми.
Использование утилиты TestDisk
В состав ОС включена утилита TestDisk, которая предназначена для восстановления потерянных данных и восстановления разделов, если произошли ошибки файловой системы. TestDisk может быть использован в ситуациях, когда произошел сбой в работе дисков или были случайно удалены разделы. Утилита поддерживает восстановление различных файловых систем.
Для восстановления данных с помощью TestDisk:
- Установка
TestDisk(если утилита не была предустановлена) командой:
sudo dnf install testdisk
- Запуск
TestDiskс правами суперпользователя:
sudo testdisk
- Выбор диска, с которым возникли проблемы. Далее следовать пошаговым инструкциям на экране. Утилита проанализирует диск и предложит возможные способы восстановления разделов или данных.
Замена носителя и восстановление данных из резервной копии
В случае, когда носитель полностью вышел из строя и восстановление данных с помощью TestDisk невозможно, рекомендуется заменить неисправный диск на новый. После этого необходимо восстановить данные из созданных ранее резервных копий. Для этого подойдет любая созданная ранее резервная копия (например, с использованием инструментов резервного копирования, таких как rsync, Bacula или Tar). Подробнее о резервном копировании данных см. раздел Резервное копирование данных.
Ключевые шаги при замене носителя и восстановлении данных:
- замените физический носитель (жесткий диск или SSD);
- загрузитесь с инсталляционного образа и установите ОС;
- после установки восстановите данные из резервной копии, скопировав их на новый носитель.
Восстановление из резервной копии позволяет минимизировать потери данных и ускоряет процесс восстановления Системы в случае серьезных сбоев.
Восстановление загрузчика GRUB2 (MBR и EFI)
В случае повреждения загрузочной записи GRUB2 может потребоваться её восстановление вручную. Для выполнения восстановления рекомендуется использовать Live-образ ОС РОСА или совместимого дистрибутива Linux с доступом к сети и средствам управления разделами (например, GParted).
Порядок восстановления загрузчика:
- загрузка с Live-носителя (USB или DVD) с возможностью запуска в Live-режиме (без установки ОС);
- определение корневого раздела и загрузочного диска ОС. Для этого рекомендуется воспользоваться утилитой
fdiskили графическим интерфейсом GParted, доступным в Live-среде. Утилитаfdiskвыводит список разделов командой:
fdisk -l
В результате будет выведен список всех доступных дисков и разделов. Требуется определить:
- корневой раздел, на котором установлена ОС РОСА (обычно это раздел типа Linux, например /dev/sda2);
- загрузочный диск, на который необходимо установить загрузчик GRUB2 (обычно это физический диск, например /dev/sda).
Полученные значения будут использоваться в дальнейших командах по монтированию и установке загрузчика:
- Монтирование Системы:
sudo -i
mkdir /chroot
sudo mount /dev/sdXX /chroot
где sdXX необходимо заменить на имя корневого раздела.
При использовании файловой системы BTRFS:
sudo mount -o subvol=root /dev/sdXX /chroot
где sdXX необходимо заменить на имя корневого раздела.
- Монтирование необходимых виртуальных файловых систем и конфигураций:
for i in dev proc sys etc/resolv.conf; do mount --bind /$i\ /chroot/$i; done
Если используется EFI-загрузка, необходимо также смонтировать переменные прошивки:
sudo mount --bind /sys/firmware/efi/efivars\ /chroot/sys/firmware/efi/efivars
- Переход в chroot-окружение командой:
chroot /chroot
- Монтирование всех разделов из fstab:
sudo mount -a
Это обеспечит доступ к дополнительным разделам, включая /boot и /boot/efi, если таковые имеются.
- Установка загрузчика GRUB2 в главный загрузочный сектор:
sudo grub2-install /dev/sdX
где sdX необходимо заменить на имя загрузочного диска.
- Обновление конфигурации загрузчика. После установки необходимо сгенерировать конфигурационный файл GRUB2:
sudo update-grub2
Это обеспечит добавление всех обнаруженных систем (например, Windows) в загрузочное меню.
- Выход из окружения chroot и перезагрузка ОС:
exit
sync
reboot
Также есть альтернативный способ восстановления загрузчика GRUB2: можно воспользоваться утилитой grub2recovery, доступной в репозитории contrib. Для её установки нужно выполнить:
sudo dnf install grub2recovery
Подробности о применении утилиты доступны на официальном форуме: https://forum.rosa.ru/viewtopic.php?f=58&t=10649.
Восстановление Системы из среды chroot
В случае повреждения Системы или необходимости выполнения административных операций без загрузки основной ОС может использоваться метод восстановления через среду Live (LiveCD/LiveUSB) с переходом в установленную Систему в режиме chroot. Для этого выполняют следующие шаги:
- Загрузка в Live-среду с установочного носителя (например, USB-накопителя или DVD) в Live-режиме, выбрав пункт "Запустить без установки" или аналогичный.
- Определение корневого раздела и загрузочного диска ОС. Для этого рекомендуется воспользоваться утилитой fdisk или графическим интерфейсом GParted, доступным в Live-среде. В терминале выполнить команду:
fdisk -l
В результате будет выведен список всех доступных дисков и разделов. Требуется определить:
- корневой раздел, на котором установлена ОС РОСА (обычно это раздел типа Linux, например /dev/sda2);
- загрузочный диск, на который необходимо установить загрузчик GRUB2 (обычно это физический диск, например /dev/sda).
Полученные значения будут использоваться в дальнейших командах по монтированию и установке загрузчика.
монтирование корневой файловой системы в каталог, подготовленный для chroot (во всех командах параметр sdXX необходимо заменить на имя коревого раздела):
mkdir /chroot
sudo mount /dev/sdXX /chroot
Если используется файловая система BTRFS, указать нужный подтом:
sudo mount -o subvol=@ /dev/sdXX /chroot
Подключить необходимые виртуальные файловые системы:
for i in dev sys proc; do mount --bind -v /$i /chroot/$i;\ done
Для обеспечения работы сетевых функций (например, получения пакетов или использования утилит) скопировать файл конфигурации DNS:
cp /etc/resolv.conf /chroot/etc/resolv.conf
- Вход в установленную Систему с помощью команды:
chroot /chroot
После выполнения данной команды будет организован доступ к установленной Системе в режиме полного административного управления.
- Выполнение всех необходимых операций в среде chroot, включая:
- изменение паролей;
- переустановка загрузчика;
- исправление конфигурационных файлов;
- установка или удаление пакетов.
- Завершение работы и перезагрузка Системы.После завершения всех операций необходимо выйти из chroot по команде:
exit
Отключить файловые системы (при необходимости) и перезагрузить Систему командой:
reboot
После перезагрузки будет выполнена загрузка основной установленной Системы.