Каталог (файловая система)
- 1 year ago
- 0
- 0
Журналируемая файловая система — файловая система , в которой осуществляется ведение журнала, хранящего список изменений и, в той или иной степени, помогающего сохранить целостность файловой системы при сбоях.
В такой системе перед фактическим осуществлением каких-либо изменений их список предварительно сохраняется в отдельной части файловой системы, называемой журналом ( англ. journal или англ. log ) — аналоге журнала предзаписи для СУБД . Как только изменения внесены в журнал, они применяются к файлам или метаданным , а затем соответствующие записи из журнала удаляются. Записи журнала организованы в наборы связанных изменений файловой системы.
При перезагрузке системы программа монтирования может гарантировать целостность журналируемой файловой системы простой проверкой журнала на наличие ожидаемых, но не произведённых изменений и последующей записью их в файловую систему; то есть при наличии журнала в большинстве случаев системе не нужно проводить проверку целостности файловой системы. Соответственно, шансы потери данных в связи с проблемами в файловой системе значительно снижаются.
По типу внесения в журнал выделяется несколько типов журналируемых файловых систем :
Используемая в macOS APFS является журналируемой. Во FreeBSD журналирование транзакций файловой системы UFS может осуществляться на уровне модулем gjournal. Среди используемых журналируемых систем в Linux — XFS , Reiser4 , JFS , ext3 , ext4 .
Другими подходами обеспечения целостности в файловых системах могут быть механизмы копирования при записи ( ZFS , Btrfs ), а также — когда журнальную организацию имеет непосредственно файловая система и не требуется предзапись ( в Plan9 , UDF для оптических накопителей, для энергонезависимой памяти ).