При загрузке вы должны проверить свои файловые системы, чтобы увидеть, была ли система выключена должным образом или произошел сбой, и в последнем случае выполнить необходимые действия по восстановлению. В современных журналируемых файловых системах это обычно означает простую и быструю операцию восстановления журнала, которую можно выполнить автоматически.
Проверка и монтирование корневой файловой системы обычно выполняется с помощью initramfs/initrd, но во встроенной системе она может быть, а может и не быть.
Если вы не используете initramfs, то традиционным способом было бы, чтобы ядро всегда монтировало корневую файловую систему изначально как чтение -только (с параметрами загрузки root=/dev/<whatever> ro
, а start -up-скрипты затем сначала запускали fsck
на нем (, предполагая, что это необходимо для используемого типа файловой системы ), а затем перемонтировали корневую файловую систему в режим чтения/записи, прежде чем делать что-либо еще.
Если initramfs не проверяла корневую файловую систему (, возможно, потому, что она не используется ), тогда стандартное имя службы systemd для запуска проверки файловой системы в корневой файловой системе называется systemd-fsck-root.service
. Мне не удалось узнать имя службы, отвечающей за перемонтирование корневой файловой системы с помощью systemd после ее проверки.
Если при проверке корневой файловой системы во время загрузки -необходимо изменить корневую файловую систему, после этого обычно происходит еще одна перезагрузка, поскольку модификация могла повлиять на что-то, что ядро уже считывало и кэшировало, и теперь будет несогласованным после исправление сделано на диске fsck
.
Вы не можете. Это использование специально запрещено. Метаданные диска существуют в слишком многих отдельных местах (на диске, в структурах данных ядра, вgparted
). Синхронизировать их все слишком сложно для программного обеспечения. Загрузитесь с Live USB.