Является ли размер файла / статистика одинаковыми для всех файловых систем? - PullRequest
0 голосов
/ 30 июня 2018

Я рассматриваю возможность написания программного обеспечения, которое использует размер файла в качестве предварительного теста, чтобы проверить, эквивалентны ли два файла. Нет необходимости применять сложные сравнения содержимого файлов, если простое сравнение целых чисел не удается. Программное обеспечение будет написано в golang (сначала), но я думаю, что этот вопрос действительно сводится к stat syscall и поэтому не зависит от языка.

Мне обязательно нужно независимое от платформы решение. Он должен работать во всех системах и файловых системах. Я могу быть уверен, что содержимое файла будет иметь одинаковую последовательность байтов во всех файловых системах, но как насчет размера файла?

Если я перенесу файл из одной файловой системы в другую, могу ли я быть уверен, что получу такой же размер файла в другой файловой системе?

[Конечно, меня не волнуют метаданные файла. Это явно противоречиво. Я забочусь только о размерах контента]

1 Ответ

0 голосов
/ 12 июля 2018

Да, st_size должно быть одинаковым во всех файловых системах (по крайней мере, если они совместимы с posix). В конце концов, байт - это байт, независимо от того, где вы его храните. Однако занимаемое дисковое пространство может быть различным в зависимости от размера основного блока файловой системы.

...