Soft updates

Soft updates is an approach to maintaining file system metadata integrity in the event of a crash or power outage.

Recovery then simply becomes a matter of running a background walk of the file system when it is next mounted to garbage collect any allocated space that has been orphaned.

FreeBSD supports soft updates for the UFS file system[1] and they have been enabled by default during installation for many years.

[3] FreeBSD 9.0 introduced a journaling supplement to soft updates for the purpose of eliminating a background fsck for garbage collection after a crash.

Neither journaling nor soft updates guarantees that no data will be lost, but they do make sure that the file system remains consistent.