Назад | Перейти на главную страницу

Найдите большие папки и файлы в Slackware

Я пытаюсь освободить место на одном из серверов 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 чтобы не делать консольных вуду