- Размер файловых данных и используемое место на диске
- Инструменты командной строки
- Информация о свободном дисковом пространстве: df
- Информация о занятом пространстве: du
- Поиск больших файлов
- Поиск дубликатов файлов: fdupes
- Графические инструменты
- Информация о занятом пространстве: baobab
- Поиск дубликатов файлов: fslint
- Просмотр свободного места на диске/разделах в Linux
- Просмотр занятого места на разделах командой du
- Получаем размеры директорий командой du
- Bash скрипт мониторинга свободного места в Linux
- Как узнать свободное место на диске в Linux
- Как узнать свободное место на диске в Linux
- Примеры команд df — проверка свободного места на диске
- Примеры команд Терминала
- Программа GUI
- Выводы
Размер файловых данных и используемое место на диске
Инструмент du, описанный далее, по умолчанию работает с занятым местом на диске, а не с размером файловых данных.
Инструменты find и baobab, описанные далее, оперируют размерами файловых данных, а не с занятым на диске местом, и при наличии разреженных файлов с высокой вероятностью выдают искаженные результаты.
Инструменты командной строки
Информация о свободном дисковом пространстве: df
Для получения информации о свободном дисковом пространстве используется команда df (Disk Free).
Наиболее употребительно применение команды с опцией -h, задающей вывод информации в удобном для чтения формате. Для каждой примонтированной файловой системы команда выводит следующую информацию:
- название файловой системы;
- общий размер файловой системы;
- заполненный объем;
- доступный объем;
- процент заполнения;
- точка монтирования;
Пример применения команды:
df -h
Файловая система Размер Использовано Дост Использовано% Cмонтировано в
udev 16G 0 16G 0% /dev
tmpfs 3,2G 22M 3,2G 1% /run
/dev/sda1 67G 49G 15G 78% /
tmpfs 16G 8,9M 16G 1% /dev/shm
tmpfs 5,0M 4,0K 5,0M 1% /run/lock
tmpfs 16G 0 16G 0% /sys/fs/cgroup
Информация о занятом пространстве: du
Для получения информации о дисковом пространстве, занятом файловыми объектами, используется команда du (Disk Used).
Пример использования команды для оценки пространства, занятого домашним каталогом пользователя user:
- -c — выводить общий итог;
- -h — выводить в удобном для чтения формате (например, 1K 234M 2G);
- -s — для каждого указанного объекта выводить только общий итог (т.е. для каталогов — не выводить размеры содержащихся в них файловых объектов);
Пример использования для более подробной проверки (отличие в задании файлового объекта для проверки — задан не домашний каталог пользователя /home/user, а все подкаталоги домашнего каталога):
sudo du -sh /home/user/* | sort -rh | head
22G /home/user/Загрузки
18G /home/user/Проекты
4,7G /home/user/ISO
4,2G /home/user/Документы
3,3G /home/user/docs
1,6G /home/user/Звукозапись
1,1G /home/user/tmp
305M /home/user/qt5
85M /home/user/parf
68M /home/user/Архив
В примере применена дополнительная фильтрация результатов, позволяющая выбрать 10 самых крупных объектов:
- команда sort -rh — сортировка строк с результатами:
- -r — сортировка по убыванию;
- -h — сортировка «удобно читаемых чисел» (например, 3K меньше, чем 2M, а 2M меньше, чем 1G);
Подробные справки по командам доступны в справочной система man:
Поиск больших файлов
Для поиска больших файлов можно использовать команду find. Пример:
sudo find /home/user -mount -type f -size +1G
/home/user/Загрузки/20210723SE30MD/20210730SE16.iso
/home/user/Загрузки/20210723SE30MD/repository-update-dev.iso
/home/user/Загрузки/test.qcow2
/home/user/.recoll/xapiandb/position.glass
/home/user/.recoll/xapiandb/termlist.glass
/home/user/.recoll/xapiandb/postlist.glass- /home/user — каталог, в котором выполняется поиск файловых объектов;
- -mount — не искать файловые объекты в других файловых системах (если такие файловые системы примонтированы в подкаталоги — они будут проигнорированы);
- -type f — искать только файловые объекты типа файл;
- -size +1G — искать только файлы с размером более 1G.
Подробная справка по команде доступна в справочной система man:
Поиск дубликатов файлов: fdupes
Для поиска дубликатов файлов можно использовать команду fdupes. По умолчанию эта программа не устанавливается, для установки использовать команду:
Подробная справка по команде доступна в справочной система man:
Графические инструменты
Графические инструменты не входят в состав дистрибутивов Astra Linux и могут быть установлены из репозитория Debian (см. Подключение репозиториев с пакетами в ОС Astra Linux и установка пакетов).
Информация о занятом пространстве: baobab
После подключения репозитория Debian установить пакет:
После установки инструмент доступен в графическом меню «Пуск» — «Системные» — «Анализатор использования дисков».
После запуска инструмент предлагает выбрать объект для анализа:После выполнения анализа предоставляется список объектов с диаграммой сравнительных размеров:
Далее возможны движение по иерархии объектов, выбор и анализ объектов, удаление объектов и т.д.
Для анализа файлов, не принадлежащих текущему пользователю, инструмент может быть запущен с привилегиями суперпользователя из командной строки:
Поиск дубликатов файлов: fslint
После подключения репозитория Debian установить пакет:
После запуска инструмент автоматически настроен на проверку домашнего каталога текущего пользователя, при необходимости можно составить свой список каталогов для поиска дубликатов:
Поиск дубликатов инициируется нажатием на кнопку «Найти», в списке найденных объектов отображается их размер:
Для анализа файлов, не принадлежащих текущему пользователю, инструмент может быть запущен с привилегиями суперпользователя из командной строки:
Просмотр свободного места на диске/разделах в Linux
20.02.2021
VyacheslavK
Linux
комментария 3
В данной статье мы расскажем, как проверить свободное дисковое пространство на хосте под управлением Linux через консоль. Мы рассмотрим несколько базовых команд с помощью которых можно узнать размер не только одного диска или директории, а целого дерева каталогов. Отдельно выделим комбинированные команды для получения более детальной информации о размерах вложенных папок. В конце статьи мы приведем пример простого скрипта для мониторинга дискового пространства с отправкой уведомлением на почтовый ящик администратора.
Для чего нужно следить за дисковым пространством в системе? Разделы в Linux устроены так, что их можно заполнить на 100% и даже после такого, система продолжит работать. А вот отдельные сервисы могут пострадать, что может повлечь за собой необратимые последствия.
Просмотр занятого места на разделах командой du
Выведем список дисков в системе и их размер:
В моем случае, на виртуальной машине доступен 1 диск размером 40Гб.
Чтобы получить более детальную информацию по двум разделам, которые созданы на диске, можно использовать:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 253:0 0 40G 0 disk ├─vda1 253:1 0 512M 0 part /boot └─vda2 253:2 0 39.5G 0 part /
В листинге команды видно, что один раздел используется под /boot, а второй под корень системы.
Новый диск в Linux добавляется так. Для управления разделами и разметкой также удобно использовать parted.
Перейдем к утилите, вокруг которой мы построили данную инструкцию:
df – это команда позволяет отобразить информацию о свободном/доступном месте на диске, файловой системы раздела.
Чтобы листинг команды был более читабелен, нужно использовать ее с опциями. Например:
- Filesystems – имя файловой системы
- Size – размер раздела
- Used – используемое дисковое пространство
- Avail – доступное дисковое пространство(свободное)
- Use% — занятое дисковое пространство в процентах
- Mounted on – смонтировано. Указывает директорию, к которой примонтирован раздел.
При использовании опции -h дисковое пространство выводится в Гб. Если размер меньше 1Гб, то вывод будет в Мб.
df -m – информация будет отображена в Мб.
df -k — информация будет отображена в Кб.
df -T – к выводу добавиться тип файловой системы
df -hT /boot – с данной опцией, будет предоставлена информация
Опции можно комбинировать между собой, для получения нужной информации.
Полная справка по df доступна через команду:
Получаем размеры директорий командой du
Вторая команда, которую мы рассмотрим, это du. du – команда отображающая размер директории.
Дополнительные опции для du:
- du -h – показывает информацию в читабельном формате. Можно указать путь к конкретной директории, если применить без этого, покажет информацию в текущем каталоге.
- du -sh – покажет размер директории в которой вы находитесь. Можно указать путь к директории.
- du -m – вывод информации в Мб.
- du -h —time – выведет информацию с дополнительным столбцом по времени изменения директории или файлов.
Больше информации по утилите, можно увидеть так:
При администрировании сервера, можно комбинировать вышеописанные команды. Например, выведем размер всех вложенных каталогов в /var/log и отсортируем вывод от большего к меньшему (чтобы самые большие каталоги оказались вверху списка):
# 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] В вашем корневом разделе сервера server1, осталось слишком мало дискового пространства. Используется: $CURRENT%
EOF
fiПри достижении заполняемости директории / до 90% к вам на почту будет отправляться уведомление. Добавьте данный скрипт в cron и мониторьте вашу систему. Можно изменить скрипт, чтобы он смотрел за размером определенного раздела или каталога.
Предыдущая статья Следующая статья
Как узнать свободное место на диске в Linux
Система
Как узнать свободное место на диске в Linux Ubuntu и других репозиториях? Я перешел из Windows NT в Linux и с нетерпением жду, чтобы получить дополнительную информацию о свободном дисковое пространство в Unix-подобных системах с помощью командной строки. Как оказалось делается все это очень просто.
Как узнать свободное место на диске в Linux
Как Linux, так и UNIX-подобные системы предлагают две команды для проверки свободного места на диске:
(a) Команда df: использование дискового пространства файловой системы отчета.
(b) Команда du: Оцените использование файлового пространства.
Примеры команд df — проверка свободного места на диске
Введите df -h или df -k для отображения свободного места на диске:
Filesystem Size Used Avail Use% Mounted on /dev/sdb1 20G 9.2G 9.6G 49% /
Утилита df отображает статистику о количестве свободного места на диске в указанной файловой системе, частью которой является файл программ. Значения отображаются в 512 байтах на количество блоков. Опция -H называется «удобочитаемой для человека». Он использует суффиксы устройства: байты, килобайты, мегабайты, гигабайты, терабайты и петабайты, чтобы уменьшить количество цифр до четырех или менее, используя базу 10 для размеров, то есть вы видите 30G (30 гигабайт).
Примеры команд Терминала
du показывает, сколько пространства используется в одном или нескольких файлах или каталогах, введите:
Параметр -s суммирует пространство, используемое каталогом, и -h предоставляет «Human-readable» выход.
Программа GUI
Выше программы хороши, если GUI не установлен или вы работаете с удаленной системой по сеансу на основе ssh. Linux и UNIX-подобные oses поставляются с настольной системой KDE и Gnome. Вы найдете Free Disk Space Applet, расположенный под меню GUI. Вот пример из системы Fedora Linux версии 22:
- Анализатор использования диска / Disk Usage Analizer
- Анализатор использования диска для файловой системы / Disk Usage Analizer
Выводы
Надеемся вы поняли, что проверить состояние диска и его свободное пространство очень легко. Если у вас остались какие-то вопросы по теме «Как узнать свободное место на диске в Linux» — пишите их в комментарии.