Categories: linux

Просмотр свободного места на диске/разделах в Linux

В данной статье мы расскажем, как проверить свободное дисковое пространство на хосте под управлением Linux через консоль. Мы рассмотрим несколько базовых команд с помощью которых можно узнать размер не только одного диска или директории, а целого дерева каталогов. Отдельно выделим комбинированные команды для получения более детальной информации о размерах вложенных папок. В конце статьи мы приведем пример простого скрипта для мониторинга дискового пространства с отправкой уведомлением на почтовый ящик администратора.

Для чего нужно следить за дисковым пространством в системе? Разделы в Linux устроены так, что их можно заполнить на 100% и даже после такого, система продолжит работать. А вот отдельные сервисы могут пострадать, что может повлечь за собой необратимые последствия.

Просмотр занятого места на разделах командой du

Выведем список дисков в системе и их размер:

# fdisk -l

В моем случае, на виртуальной машине доступен 1 диск размером 40Гб.

Чтобы получить более детальную информацию по двум разделам, которые созданы на диске, можно использовать:

# lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT_x000D_vda 253:0 0 40G 0 disk_x000D_├─vda1 253:1 0 512M 0 part /boot_x000D_└─vda2 253:2 0 39.5G 0 part / 

В листинге команды видно, что один раздел используется под /boot, а второй под корень системы.

Новый диск в Linux добавляется так . Для управления разделами и разметкой также удобно использовать parted .

Перейдем к утилите, вокруг которой мы построили данную инструкцию:

df – это команда позволяет отобразить информацию о свободном/доступном месте на диске, файловой системы раздела.

Чтобы листинг команды был более читабелен, нужно использовать ее с опциями. Например:

# df -h

Описание столбцов:

  • Filesystems – имя файловой системы
  • Size – размер раздела
  • Used – используемое дисковое пространство
  • Avail – доступное дисковое пространство(свободное)
  • Use% — занятое дисковое пространство в процентах
  • Mounted on – смонтировано. Указывает директорию, к которой примонтирован раздел.

При использовании опции -h дисковое пространство выводится в Гб. Если размер меньше 1Гб, то вывод будет в Мб.

Дополнительные опции:

df -m – информация будет отображена в Мб.

df -k — информация будет отображена в Кб.

df -T – к выводу добавиться тип файловой системы

df -hT /boot – с данной опцией, будет предоставлена информация

Опции можно комбинировать между собой, для получения нужной информации.

Полная справка по df доступна через команду:

# df --help

Получаем размеры директорий командой du

Вторая команда, которую мы рассмотрим, это du. du – команда отображающая размер директории.

Дополнительные опции для du :

  • du -h – показывает информацию в читабельном формате. Можно указать путь к конкретной директории, если применить без этого, покажет информацию в текущем каталоге.
  • du -sh – покажет размер директории в которой вы находитесь. Можно указать путь к директории.
  • du -m – вывод информации в Мб.
  • du -h --time – выведет информацию с дополнительным столбцом по времени изменения директории или файлов.

Больше информации по утилите, можно увидеть так:

# -du --help

При администрировании сервера, можно комбинировать вышеописанные команды. Например, выведем размер всех вложенных каталогов в /var/log и отсортируем вывод от большего к меньшему (чтобы самые большие каталоги оказались вверху списка):

# du -h /var/ | sort -rn

# du --max-depth=1 -h – выводит на экране размер вложенных директории, не дальше 1-го уровня вложенности.

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

Bash скрипт мониторинга свободного места в Linux

Рассмотрим простой bash скрипт, для мониторинга дискового пространства на сервере и отправке email уведомления администратору, если места недостаточно.

#!/bin/bash
CURRENT=$(df / | grep / | awk '{ print $5}' | sed 's/%//g')
THRESHOLD=90
if [ "$CURRENT" -gt "$THRESHOLD" ] ; then
mail -s 'Заканчивается дисковое пространство' -r [email protected] << EOF
В вашем корневом разделе сервера server1, осталось слишком мало дискового пространства. Используется: $CURRENT%
EOF
fi

При достижении заполняемости директории / до 90% к вам на почту будет отправляться уведомление. Добавьте данный скрипт в cron и мониторьте вашу систему. Можно изменить скрипт, чтобы он смотрел за размером определенного раздела или каталога.

admin

Share
Published by
admin

Recent Posts

Консоль удаленного рабочего стола(rdp console)

Клиент удаленного рабочего стола (rdp) предоставляет нам возможность войти на сервер терминалов через консоль. Что…

2 недели ago

Настройка сети в VMware Workstation

В VMware Workstation есть несколько способов настройки сети гостевой машины: 1) Bridged networking 2) Network…

2 недели ago

Логи брандмауэра Windows

Встроенный брандмауэр Windows может не только остановить нежелательный трафик на вашем пороге, но и может…

2 недели ago

Правильный способ отключения IPv6

Вопреки распространенному мнению, отключить IPv6 в Windows Vista и Server 2008 это не просто снять…

2 недели ago

Ключи реестра Windows, отвечающие за параметры экранной заставки

Параметры экранной заставки для текущего пользователя можно править из системного реестра, для чего: Запустите редактор…

2 недели ago

Как управлять журналами событий из командной строки

В этой статье расскажу про возможность просмотра журналов событий из командной строки. Эти возможности можно…

2 недели ago