Поддерживают ли команды du и df human-readable формат вывода?

«Поддерживают ли команды du и df human-readable формат вывода?» — вопрос из категории Linux, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, обе утилиты поддерживают удобочитаемый (human-readable) формат с помощью флага -h.

  • du (disk usage) — оценивает использование дискового пространства файлами и директориями.
    # Основное использование
    du -h /var/log
    # Итог по директории
    du -sh /home/user/projects
    # Глубина сканирования
    du -h --max-depth=1 /opt
  • df (disk free) — показывает свободное место на смонтированных файловых системах.
    df -h
    df -h /dev/sda1
Ключевые различия и флаги: Утилита Флаг -h (1024) Флаг -H / --si (1000) Для скриптов (байты)
du du -h du --si du -b
df df -h df -H df -B1

Практический пример для мониторинга: Часто в скриптах для алертинга используется df без флага -h, чтобы получить точное значение в байтах для пороговых сравнений.

# Проверка, что свободного места меньше 10%
USAGE=$(df / --output=pcent | tail -1 | tr -d '% ')
if [ $USAGE -gt 90 ]; then
    echo "Критически мало места на корневом разделе!"
fi