RU

«Сохранено» — это обещание. Я проверил двенадцать способов его дать, десять не держат

fsync(fd) доводит до носителя содержимое файла. А rename() меняет каталог, и эта запись остаётся в page cache ровно как любая несохранённая страница…

fsynccrash consistencyдолговечность данныхdm-log-writesext4SQLiterenameпотеря данныхLinuxблочный слой
Habr