Безопасно ли использовать rename () без fsync ()?
Это безопасно звонитьrename(tmppath, path)
без звонкаfsync(tmppath_fd)
первый?
Я хочу, чтобы путь всегда указывал на полный файл. Я забочусь в основном оExt4, Обещано ли, что rename () будет безопасным во всех будущих версиях ядра Linux?
Пример использования в Python:
def store_atomically(path, data):
tmppath = path + ".tmp"
output = open(tmppath, "wb")
output.write(data)
output.flush()
os.fsync(output.fileno()) # The needed fsync().
output.close()
os.rename(tmppath, path)