После удаления большого количества больших файлов свободное пространство увеличивается с большой задержкой

вчера я удалил 71 ГБ файлов на моем домашнем / медиа-сервере.


Свободное место до: 117 ГБ


Свободное место после: 126 GB

Итак, вместо 71 ГБ дополнительного свободного места у меня было только 9 ГБ. Я дважды проверил, что никакие файлы не были открыты, и я действительно удалил 71 ГБ, а свободное пространство действительно увеличилось только на 9 ГБ.

Я тоже пытался синхронизировать, но никакого эффекта.

это происходит не в первый раз. Действительно, я видел это поведение с годами время от времени. Сначала на ext3, теперь на ext4.


Когда это произойдет, я могу освободить свободное пространство, размонтировав, а затем повторно смонтировав файловую систему. в этих случаях размонтирование занимает до 2 минут, а не почти нет времени.

В настоящее время я не могу легко размонтировать и перемонтировать файловую систему, потому что она постоянно занята моим программным обеспечением видеомагнитофона, сервером owncloud для моей семьи и еще несколькими услугами, которые я не сделал до сих пор. И я не хочу вставать в 3 часа ночи, чтобы просто демонтировать и перемонтировать.

нет, утилита 'at' не будет делать, потому что одна из служб выполняет невозобновляемые длительные задачи и, таким образом, нуждается в ручной проверке состояния, чтобы найти хороший момент, когда ее можно закрыть, т. е. задача была только что завершена.

но сегодня утром я заметил, что пространство освободилось за одну ночь. мне кажется, что была какая-то очистка, и это может быть то же самое, что занимает дополнительное время при отключении.

до сих пор я замечал такое поведение только при удалении большого объема данных. С другой стороны, я не уверен, что это происходит регулярно, и разница слишком мала, чтобы заметить.

файловая система была создана с 0% зарезервировано для root (mkfs -m 0). По словам fsck -f (Я делаю это всегда между unmount и remount), файловая система не повреждена, и в соответствии с диагностикой S. M. A. R. T. выдвинутый тест, оборудование также в порядке.

[EDIT]

tune2fs 1.42 (29-Nov-2011)  
Filesystem volume name:   bigdata  
Last mounted on:          /bigdata  
Filesystem UUID:          6aebd17a-e064-41dc-9c68-c9a3acbe4f66  
Filesystem magic number:  0xEF53  
Filesystem revision #:    1 (dynamic)  
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize  
Filesystem flags:         signed_directory_hash   
Default mount options:    user_xattr acl  
Filesystem state:         clean  
Errors behavior:          Continue  
Filesystem OS type:       Linux  
Inode count:              121413632  
Block count:              485645568  
Reserved block count:     0  
Free blocks:              29081276  
Free inodes:              121382378  
First block:              0  
Block size:               4096  
Fragment size:            4096  
Reserved GDT blocks:      908  
Blocks per group:         32768  
Fragments per group:      32768  
Inodes per group:         8192  
Inode blocks per group:   512  
Flex block group size:    16  
Filesystem created:       Tue Dec 25 23:42:35 2012  
Last mount time:          Fri Jan  3 17:37:36 2014  
Last write time:          Fri Jan  3 17:37:36 2014  
Mount count:              37  
Maximum mount count:      -1  
Last checked:             Thu Apr 18 17:03:40 2013  
Check interval:           0 (<none>)  
Lifetime writes:          14 TB  
Reserved blocks uid:      0 (user root)  
Reserved blocks gid:      0 (group root)  
First inode:              11  
Inode size:           256  
Required extra isize:     28  
Desired extra isize:      28  
Journal inode:            8  
Default directory hash:   half_md4  
Directory Hash Seed:      be2b977e-5127-4843-9123-fe33b6d7b573  
Journal backup:           inode blocks  

[/EDIT]

Так вот мои 2 вопроса:

  1. что здесь происходит? Почему пространство освобождается при umount или с задержкой, а не сразу при удалении?
  2. есть ли что-то, что я могу сделать, чтобы вызвать освобождение пространства прямо сейчас без демонтирования и монтажа?
21
задан Moshe Katz
08.01.2023 6:56 Количество просмотров материала 2797
Распечатать страницу

1 ответ

есть два фактора, которые могут взаимодействовать.

  • В отличие от Windows, вы можете удалять открытые файлы. Если вы удалите фильм, который передается в потоковом режиме, он будет удален из каталога, но будет существовать как файл до тех пор, пока потоковая программа не закроет его. Как только потоковое программное обеспечение закрывает его, пространство будет освобождено. The fuser -m команда может быть использована, чтобы найти идентификатор процесса любых процессов с открытыми файлами. Некоторые программы могут не сразу закрываться файлы, когда они закончат с ними.

  • Это обе журнальные файловые системы. Изменения записываются в журнал и затем фиксируются. Фиксация изменений может занять некоторое время. Операционная система часто кэширует изменения диска и только периодически фиксирует изменения на диске. Под управлением sync команда должна сбросить все ожидающие изменения на диск. Монтирование диска с помощью sync опция улучшит скорость диска, но будет работать с диском сложнее.

9
отвечен BillThor 2023-01-09 14:44

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх