У меня есть система Ubuntu, которая будет главным образом использоваться в качестве бездисплейного устройства, и должна восстановиться с резких потерь мощности корректно и начать работать обычно.
Я понимаю, что overlayfs является способом пойти, но я все еще должен зарегистрировать и хранить данные, включая системные журналы, такие как катастрофические отказы и журналирование.
Если я понимаю правильно, я не могу просто настроить каталог под корнем и сделать то чтение-запись - мне нужен отдельный раздел с отдельной файловой системой для входа и сбора данных поэтому, если это действительно становится поврежденным, я могу все еще загрузиться в корень, обнаружить ситуацию и fsck раздел данных.
Эти системы используют настольную человечность, и графический интерфейс будет иногда использоваться, однако я хотел бы смочь автоматизировать конфигурацию и установку в конечном счете, поэтому в то время как графические инструменты в порядке конфигурация командной строки предпочтена.
Используя Ubuntu LiveUSB, выполненный gparted, чтобы уменьшить существующий ext4 раздел и создать новый раздел, здесь названный "данными-rw" и на имя и на маркировку.
Перезагрузка.
Тот раздел будет автоматически смонтирован на начальной загрузке, вероятно, в /media/user/data_rw
. Теперь, когда у нас есть второй диск, давайте переместим файлы журнала в него. Почти весь вход сделан к /var/log
, поэтому давайте сделаем новый каталог на втором диске и свяжем его там.
Сделайте каталог журнала на новом разделе, синхронизируйте существующие файлы с пользователями и полномочиями, и свяжите в fstab, таким образом, это автоматически на начальной загрузке:
sudo mkdir /media/user/data_rw/log
sudo rsync -a --include '*/' --exclude '*' /var/log/ /media/user/data_rw/log/
sudo nano /etc/fstab
Добавьте эти строки в конец (измените имя устройства по мере необходимости):
/dev/sda3 /media/user/data_rw ext4 rw,nosuid,nodev,relatime,data=ordered 0 2
/media/user/data_rw/log /var/log none rw,bind 0 0
Мы хотели бы вызвать дисковую проверку на записываемый раздел с автоматизированной коррекцией ошибок. В теории это должно работать, но не ясно, что это находится в моем случае, так рассмотрите изучение этого далее.Править /etc/default/grub
и найдите строку с GRUB_CMDLINE_LINUX_DEFAULT
, затем добавьте fsck.mode=force fsck.repair=yes
к той строке. Сделать sudo update-grub
записать изменения в загрузчике
Установите overlayfs, sudo apt-get install overlayroot
и редактирование /etc/overlayroot.conf
изменение overlayroot опции к overlayroot="tmpfs:swap=1,recurse=0"
Это заставит overlayroot покрывать только корневой диск и ничто иное, оставляя наш диск data_rw в покое.
Теперь перезагрузка, и необходимо найти что, добавив файл к ~/
исчезнет на следующей начальной загрузке, но добавлении файла к /media/user/data_rw
или /var/log
сохранится через начальные загрузки.
Используя journalctl
необходимо найти, что журналы сохраняются через начальные загрузки также, и если системные катастрофические отказы необходимо найти крешлоги в /var/log
даже после перезагрузки.
Если необходимо изменить защищенную файловую систему, перезагрузку и когда личинка подходит нажатие e
для редактирования личинки запускают сценарий. На Linux строка добавляют overlayroot=disabled
в конец. Это будет работать до перезагрузки. Можно добавить новую опцию загрузчика личинки, если это часто необходимо.
Так как записи никогда не делаются к корневому разделу только для чтения, он никогда не должен показывать ошибки и должен загрузиться назад очень хорошо после резкого выключения питания. data_rw раздел, однако, возможно, не завершил записи к нему. fsck должен восстановить это, но в худшем варианте развития событий, диск не смонтируется на начальной загрузке, связывание не произойдет, и журналы будут записаны в наложение и не сохранены. Однако система будет все еще продолжать бежать и если это - критическая потребность, можно обнаружить это условие с помощью сценариев или программного обеспечения, и принять меры.
Можно или записать непосредственно в/media/user/data_rw, или можно использовать systemd регистрирующийся сервис для получения журналов.
https://spin.atomicobject.com/2015/03/10/protecting-ubuntu-root-filesystem/
https://askubuntu.com/a/763645/12100