Инструменты пользователя

Инструменты сайта

  • Показать исходный текст
  • История страницы
  • Ссылки сюда
  • Оставить на чай
  • Экспорт в PDF
  • Наверх

  • software:linux_server:monitoring_free_space_on_servers

    Контроль свободного места через консоль

    Управление свободными ресурсами на серверах и рабочих станциях, работающих под управлением Linux, является ключевой функцией администратора, особенно при использовании SSD, объемы которых все еще меньше, чем хотелось бы. При этом недостаточно только контролировать занятое пространство, нужно еще четко понимать, чем именно оно занято, то ли это рабочие данные и нужно действительно расширять дисковую подсистему, то ли скопившийся годами хлам, который можно безболезненно удалить.

    Утилиты df и du

    Начнем с самых основ, эти утилиты может и не радуют удобством, но они есть в любом Linux-дистрибутиве и просто делают свою работу. Начнем с df, эта утилита позволяет получить отчет о доступном и использованном пространстве на файловых системах. Использовать ее просто:
    Примечание: df не отображает информацию о не смонтированных дисках.

    df -h

    Ключ -h (–human-readable) выводит данные в удобочитаемом формате, т.е. мегабайтах и гигабайтах, также можете использовать ключ -H, он делает тоже самое, но с использованием системы СИ, т.е. в расчетах используется 1000 вместо 1024. Выяснив нужную файловую систему и точку монтирования, перейдем к более глубокому анализу того, что занимает место на диске, для чего привлечем утилиту du, которая показывает место занимаемое файлами и папками, с ней также можно использовать ключи -h или -H, но если мы выполним следующую команду, то результат нас вряд-ли обрадует:

    du -h /

    Дело в том, что утилита пройдет рекурсивно на всю глубину и выдаст размер каждой папки и файла в указанном расположении, чтобы изменить такое поведение используйте ключ -d для явного указания глубины анализа. Например, ограничимся только директориями верхнего уровня:

    du -hd 1 /

    Ну вот, совсем уже другое дело. Как можем увидеть, больше всего места занимает директория /var:

    du -hd 1 /home

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

    Утилита ncdu

    Все это хорошо, но несколько долго и муторно, может быть есть способ проще? Есть, это утилита ncdu (NCurse Disk Usage), которая представляет удобный интерактивный инструмент с псевдографическим интерфейсом. Для установки в DEB-cистемах используйте команду:

    apt install ncdu

    Если запустить утилиту без параметров, то она проанализирует текущее расположение, поэтому мы выполним:

    ncdu /

    Сканирование может занять некоторое время, после чего вы увидите директории и файлы первого уровня, отсортированные по уменьшению размера. Фактически все уже сделали за нас, вывод ncdu гораздо более нагляден и информативен. Здесь же сразу вы можете получить дополнительную информацию, так значок @ слева обозначает что перед нами символическая ссылка, а буква e (empty) - указывает на пустую директорию. Как мы уже говорили, система интерактивна, для навигации следует использовать стрелки, а для перехода с уровня на уровень - Enter. Но это еще не все, вы можете сразу отсюда удалять файлы простым нажатием на d, но при этом вам придется явно подтвердить удаление, что исключает случайные срабатывания. При помощи стрелок на клавиатуре можно перемещаться по каталогам всей файловой системы:

    • ← вернуться на один каталог назад (или BackSpace)
    • ↑ вверх по списку
    • → перейти в выбранный каталог (или Enter)
    • ↓ вниз по списку

    Для быстрого знакомства со всеми возможностями утилиты всегда можно вызвать встроенную справку, нажав ?. Все это указано прямо в шапке утилиты. На наш взгляд, данная утилита заслуживает того, чтобы стать частью джентельменского набора любого администратора, на своих серверах мы устанавливаем ее по умолчанию. Кстати, если вы работаете с WSL (Windows Subsystem for Linux), то можете с помощью ncdu выполнять анализ файловых систем Windows.

    Ссылки и Дополнения

    Только авторизованные участники могут оставлять комментарии.
    software/linux_server/monitoring_free_space_on_servers.txt · Последнее изменение: 2024/07/29 02:55 — vladpolskiy