Сервер в кармане, или просто о сложном!

главная - Статьи - Linux, FreeBSD



du / TOP20 больших файлов в системе Linux

Дата обновления: 10.04.2025

Теги: Linux

В продолжение предыдущего поста о du, предлагаю вариант поинтереснее, чем просто du -sh, а именно отображение TOP-20 файлов, которые занимают больше всего места в системе.

# find / -mount -ignore_readdir_race -type f -exec du -h "{}" + 2>&1 | sort -rh | head -n 20
 
Где:
  • -mount Не переходит в другие файловые системы (ограничивается текущим разделом).
  • -ignore_readdir_race Игнорирует ошибки, если файл исчез во время обхода (полезно на "живых" системах).
  • -exec du -h "{}" + Для найденных файлов выполняет du -h, который показывает размер файла в человекочитаемом виде (KB, MB, GB и т.д.).
  • Скобки "{}" заменяются на путь к файлу.
  • Знак + означает, что du вызывается с несколькими файлами за раз (эффективнее, чем \;).
  • 2>&1 Перенаправляет ошибки в поток вывода (вместе с результатом). Это нужно, чтобы не потерять строки об ошибках и упорядочить весь вывод.

Как всегда, совет: перед запуском любого скрипта, скопированного на просторах сети, сначала пробегите по нему глазами, посмотрите, не сломает ли он вашу систему.



Авторизуйтесь для добавления комментариев!


    забыли пароль?    новый пользователь?






Принимаю заказы на настройку серверов, mikrotik и других роутеров, точек доступа, nginx и т.п. В пределах Санкт-Петербурга возможен выезд к заказчику. См. контакты.