У меня есть сервер, на котором внутри раздела /
есть файл с 30 ГБ, хотя df -h
перечисляет этот раздел как 11 ГБ.
На самом деле, эта файловая система указана как использующая 5 ГБ, а не 11 ГБ.
Почему это происходит?
На это невозможно ответить, не зная, каково содержимое этого файла, что такое файловая система, как был создан файл и т. Д.
Существуют файловые системы, которые выполняют дедупликацию данных. Если есть блоки с одинаковым содержимым, они будут заменены ссылками, чтобы они занимали пространство только одного блока. Таким образом, если в файловой системе много дублирующихся данных, вполне возможно, что файлы занимают намного меньше места на диске, чем их дублированное содержимое.
Существуют файловые системы, которые выполняют сжатие. Если в файловой системе много избыточности, то сжатие резко сократит данные, и вполне возможно, что файлы будут занимать гораздо меньше места на диске, чем их несжатое содержимое.
Многие файловые системы поддерживают разреженные файлы . Разреженные файлы - это файлы с «дырами» в них. Отверстия будут читаться как длинная строка двоичных нулей и технически являются частью содержимого файла, но они не сохраняются на диске.