Я пытаюсь освободить место на одном из серверов Slackware. Судя по всему, 69 ГБ из 72 ГБ заняты, поэтому мне нужно немного разобраться.
Я поискал и нашел ниже, чтобы искать большие файлы и папки, но это занимает вечность:
du -a /var | sort -n -r | head -n 10
Поэтому мне нужна помощь в поиске больших файлов и папок.
Сканирование файлов неизбежно, другого пути нет. В зависимости от скорости вашего диска это время будет медленнее или быстрее. Вы можете попробовать полезную команду:
find /somedir -type f -size +10M
Это покажет вам все файлы размером больше (знак +), чем 10M. Вы можете использовать это только для файлов, поскольку размер каталога на самом деле является метаданными каталога (список файлов), а не размером файлов внутри.
С помощью find вы также можете найти СТАРЫЕ файлы, которые, возможно, вы давно забыли, например
find /somedir -mtime +30
Это покажет файлы, ссылки, каталоги, которые не были изменены за последние 30 дней. Вы также можете комбинировать время + размер следующим образом:
find /somedir -type f -mtime +30 -size +100M
покажет все файлы размером более 100 МБ, которые не изменялись более 30 дней
Для справочников используйте:
du -h -d1 /somedir
-h для чтения человеком (килограмм мегагигатера и т. д.) -d1 - показывать только каталоги первого уровня, по умолчанию du будет сканировать все рекурсивно, что в нашем случае не очень полезно.
если вы хотите выполнить сортировку, опустите -h и добавьте '| sort -n -k1'
в качестве альтернативы вы можете:
du -sh *
в интересующем вас каталоге
Вы не можете избежать просмотра своей файловой системы в поисках чего-то большого. Возможно, просто установите эту команду в фоновом режиме, возможно, с перенаправлением в файл, и немного сделайте что-нибудь еще.
Вы можете немного уточнить команду. Как бы то ни было, весь процесс du должен быть запущен, прежде чем какой-либо вывод станет несортированным. Вы могли сделать это:
sort -max /var | grep '^[0-9][0-9][0-9]' > ~/disk_usage_report
Теперь вы записываете только каталоги и файлы размером не менее 100 МБ и не сортируете их. Я также использовал -x
на всякий случай, если у вас установлена другая файловая система, другая /var
(и отчасти по привычке). Вы можете просматривать содержимое этого файла в любое время по мере их накопления и сортировать записи при их просмотре:
sort -rn ~/disk_usage_report | head -n 10
В некоторых системах я регулярно собираю информацию об использовании диска с помощью задания cron, в основном для того, чтобы я мог сравнивать отчеты, чтобы увидеть, что растет с течением времени, но также это означает, что у меня есть достаточно свежий отчет, доступный в короткие сроки, когда я этого хочу. Например. такая работа cron:
19 3 * * * корень du -max /> / var / log / disk_usage-date -Im
Я бы просто установил https://dev.yorhel.nl/ncdu чтобы не делать консольных вуду