помогите убедиться, что файловая система находится в согласованном состоянии после нечистого завершения работы
Первое, что следует отметить, это то, что XFS, reiser и большинство конфигураций ext реализуют только журналирование метаданных, что позволяет избежать fsck. Журнал не всегда воспроизводится при запуске - его можно удалить, если он неполный.
Существуют системы, которые поддерживают полное журналирование данных, но на практике уровень гарантии, который они дают только для журналирования метаданных, очень мал в сценариях реального мира.
Таким образом, «несогласованное состояние» и проблемы, устраняемые с помощью fsck, представляют собой несоответствие между метаданными и самими файлами. Чтобы избежать этого, ОС записывает предложенные изменения метаданных в журнал, затем записывает фактические данные на диск, а затем применяет изменения метаданных, которые реплицируются в журнале, на диск. Единственный улов этого заключается в том, что контроллер диска будет буферизовать и потенциально переупорядочивать запросы. Чтобы избежать этого, большинство регистрирующих файловые системы реализуют барьеры: они разделяют каждую операцию и ждут, пока диск подтвердит, что он завершил операцию. Но многие современные диски фактически подтверждают завершение записи до фиксации данных. Следовательно, вещи могут стать грязными.
Нужен ли fsck после нечистого выключения и почему
Большинство файловых систем поддерживают счетчик монтирования - при достижении этого значения полный fsck будет запущен при следующей попытке монтирования диска. Причина в том, что данные на диске могут быть повреждены, даже если они явно не записываются, даже без ошибок в программном обеспечении. Комментарий Псуси выше неверен.