Введение
NILFS или NILFS2 (New Implementation of a Log structured File System) — это реализация файловой системы, структурированной по принципу журнала, для ядра Linux. Она была разработана компанией Nippon Telegraph and Telephone Corporation (NTT) CyberSpace Laboratories и сообществом разработчиков со всего мира. NILFS распространяется под лицензией GNU General Public License (GPL).
Проблемы
По состоянию на 2023 год в NILFS отсутствует выделенная утилита проверки целостности (fsck), и поэтому он не может восстановиться после критических ошибок, из-за которых не удается найти допустимую контрольную точку.
Совместимость
NILFS доступен в различных дистрибутивах GNU/Linux, таких как Arch Linux, Debian (начиная с версии 5.0), Fedora, Gentoo, Linux Mint, NixOS, Ubuntu (начиная с версии 9.10) и другие. Для его использования пользователям обычно требуется установить пакет nilfs-utils или nilfs-tools. Загрузочный CD с NILFS также доступен в PrRescue. Поддержка NILFS реализована и в приложениях для редактирования разделов, например, GParted. Отдельная реализация, лицензированная по BSD, с поддержкой только чтения включена в состав NetBSD.
Относительная производительность
В январе 2015 года на конференции Linux.conf.au была представлена презентация, посвященная SD-картам и файловым системам для встраиваемых систем. В ней было сказано: если ваша рабочая нагрузка чувствительна к задержкам, вам может подойти NILFS. Если же важна пропускная способность, стоит рассмотреть F2FS. NILFS2 гораздо лучше справляется с большим количеством мелких файлов, чем F2FS или EXT4.
If you've got a workload that's latency sensitive, you might want to use NILFS. If you've got one that's throughput sensitive, you might want to use F2FS. NILFS2 works much better for the lots of small files case than F2FS or EXT4.
Лицензия
Утилиты файловой системы NILFS2 распространяются под лицензией GNU General Public License версии 2, за исключением библиотек lib/nilfs и их заголовочных файлов, которые распространяются под лицензией GNU Lesser General Public License версии 2.1.