У меня есть встроенная установка, использующая initramfs для корневой файловой системы, но использующая пользовательский раздел ext3, смонтированный на компактном флеш-накопителе. Поскольку целостность данных перед лицом потери питания является наиболее важным фактором во всей настройке, я использовал следующие параметры для монтирования (ниже приведена запись из моего /etc/fstab
файла
<file system> <mount pt> <type> <options> <dump><pass>
/dev/sda2 /data ext3 auto,exec,relatime,sync,barrier=1 0 2
Я пришел на эти варианты, читая в Интернете. Что меня беспокоит, так это то, что содержание /proc/mounts
дает следующее:
/dev/sda2 /data ext3 rw,sync,relatime,errors=continue,user_xattr,acl,
barrier=1,data=writeback 0 0
Из того, что я понял из прочитанного, я хочу использовать data=journal
опцию для моего монтирования, поскольку это обеспечивает наилучшую защиту от повреждения данных. Тем не менее, со страницы руководства для конкретных опций ext3 для mount
него говорится следующее о опции обратной записи:
Порядок данных не сохраняется - данные могут быть записаны в основную файловую систему после того, как их метаданные были зафиксированы в журнале.
По слухам, это самая высокая пропускная способность. Это гарантирует целостность внутренней файловой системы , однако позволяет старым данным появляться в файлах после сбоя и восстановления журнала.
Я очень озадачен этим - страница руководства, кажется, предлагает, чтобы для целостности файловой системы я хотел указать data=writeback
опцию, mount
но большинство других ссылок, которые я нашел (включая некоторые опубликованные книги по встроенному Linux), предлагают мне использовать data=journal
. Каков наилучший подход для меня? Скорость записи вообще не проблема - целостность данных.
источник
data=ordered
: pОтветы:
Не вводите в заблуждение тот факт, что только
writeback
упоминаетinternal filesystem integrity
.С тем
ext3
, используете ли выjournal
,ordered
илиwriteback
, метаданные файловой системы всегда записываются в журнал, что означает целостность внутренней файловой системы.Эти режимы передачи данных предлагают способ контроля над тем, как обычный данные записываются в файловой системе.
В
writeback
режиме изменения метаданных сначала записываются в журнал, а блок фиксации записывается. После обновления журнала могут продолжаться метаданные и записи данных.data=writeback
может представлять серьезную угрозу безопасности: если происходит сбой системы при добавлении в файл, после фиксации метаданных (и выделения дополнительных блоков данных), но до записи данных (блоки данных перезаписываются новыми данными), после журнала восстановление этого файла может содержать блоки, заполненные данными из ранее удаленных файлов - от любого пользователя 1 .Таким образом, если целостность данных является вашей главной задачей, а скорость не важна,
data=journal
это путь.источник
Как вы уже заметили, главное в том, что вы не можете предотвратить сбои файловой системы.
Что ты можешь сделать:
В конце, варианты подключения параноика могут выглядеть следующим образом:
И вы также можете обеспечить целостность данных с помощью автоматического fsck при каждой загрузке.
источник
Попробуйте изменить часть справочной страницы, которую вы указали:
Как указывал don_crissti, другие режимы не имеют «однако».
источник