Команда df в Linux. Полное руководство
Введене
Краткий обзор команды df (disk free) в Linux: синтаксис, ключевые опции и примеры использования для проверки свободного места на диске. Узнайте, как эффективно мониторить дисковое пространство.
- -a --all Показывает всю информацию, включая файловые, псевдо, недоступные и виртуальные системы
- -B --block-size=SIZE Изменить размер перед выводом информации
- -H --human-readable Отобразить размер в удобном для чтения форматах
- -h --human-readable Отобразить размер в удобном для чтения форматах
- -i --inodes Отображает информацию об использованых блоках inode
- -k Аналогично --block-size=1K. Показывает размеры в килобайтах.
- -l --local Ограничивает вывод информации о локальных файловых систем
- -P --portability Использует формат POSIX для вывода информации
- -t --type=TYPE Ограничивает выводимую информацию по указанным файловым системам
- -T --print-type Выводит типы файловых систем
- -x --exclude-type=TYPE Выводит информацию о всех файловых систем, кроме указанных
- --help Показывает информацию о всех ключах программы DF
- --version Выводит версию программы DF
Использование df
Самый простой способ посмотреть доступное пространство на всех размелах с информацией о них просто вбиваем команду ниже. Но мы получим ны вывод информацию в килобайтах.:
df
user@host:~$ df
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 1637316 2656 1634660 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 513396624 104882592 386541044 22% /
tmpfs 8186568 0 8186568 0% /dev/shm
tmpfs 5120 0 5120 0% /run/lock
/dev/sda2 1992552 257248 1614064 14% /boot
tmpfs 1637312 4 1637308 1% /run/user/1000
- Filesystem - это имя каждого конкретного диска. Сюда входят физические жесткие диски, логические (разделенные) диски, а также виртуальные или временные диски.
- Size - размер файловой системы.
- Used - объем пространства, используемого в каждой файловой системе.
- Avail - количество неиспользуемого (свободного) места в файловой системе.
- Use% - показывает процент использованного диска.
- Mounted on - это каталог, в котором расположена файловая система. Это также иногда называют точкой монтирования.
По этому команду df чаще всего использзуют с ключом -h
user@host:~$ df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 1.6G 2.6M 1.6G 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 490G 101G 369G 22% /
tmpfs 7.9G 0 7.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
/dev/sda2 2.0G 252M 1.6G 14% /boot
tmpfs 1.6G 4.0K 1.6G 1% /run/user/1000
Наиболее подробную информацию для вас расскроек ключ -a, но чаще всего эта информация будет избыточна. Это наверно нужно для более тонкого анализиа, решая специфические задачи.
Поэтому давайте отфильтруем виртуальные файловые системы ядра (tmpfs) опцией -x. Таким образом мы получим информацию только о реальных HDD/SSD в вашей системе. Пример:
df -x tmpfs
user@host:~$ df -x tmpfs
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/ubuntu--vg-ubuntu--lv 513396624 104866168 386557468 22% /
/dev/sda2 1992552 257248 1614064 14% /boot
Можно выбрать конкретный раздел
df -h /dev/sda2
user@host:~$ df -h Filesystem Size Used Avail Use% Mounted on tmpfs 1.6G 2.6M 1.6G 1% /run /dev/mapper/ubuntu--vg-ubuntu--lv 490G 101G 369G 22% / tmpfs 7.9G 0 7.9G 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock /dev/sda2 2.0G 252M 1.6G 14% /boot tmpfs 1.6G 4.0K 1.6G 1% /run/user/1000 user@host:~$ df -h /dev/sda2 Filesystem Size Used Avail Use% Mounted on /dev/sda2 2.0G 252M 1.6G 14% /boot
Также, часто используется ключ при траблшутинге -i, который нам отоборазит информайю об инодах (inode):
df -hi /dev/sda2
Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sda2 128K 320 128K 1% /boot
Inode (index node, индексный дескриптор) — это фундаментальное понятие в файловых системах Linux (Ext4, XFS, Btrfs и др.). Если просто, то inode — это паспорт файла.
В то время как имя файла — это просто ярлык для людей, именно inode хранит всю метаинформацию о файле, кроме его имени и самих данных.
Имена файлов в каталогах Linux — это просто таблицы соответствия «имя файла → его inode». Когда вы открываете файл, система сначала находит его inode по имени, а уже из inode получает все остальные данные и доступ к содержимому.
Частая ошибка — «No space left on device», хотя место на диске есть. Это означает, что закончились не блоки для данных, а именно свободные inodes. Проверить их количество можно командой df -i
Ещё примеры использования команды df
Вывод файлов и папок из дериктории с сортировкой по размеру от большого к малому
du -h /var/log | sort -rn
Если нам нужно исключить определенный формат из вывода. например *.txt
du -h /var/log --exclude="*.txt"
Как посмотреть самые объемные каталоги от корня с абсолютным путём, ограничить вывод 10 самыми большими файлами
sudo du -ah / | sort -rh | head -n 10
И в заключение
Команда df в Linux — это неотъемлемый инструмент для системного администратора и любого пользователя. Как мы выяснили, она предоставляет ключевую информацию о занятом и свободном пространстве на всех смонтированных файловых системах. Освоив ключевые опции, такие как -h для удобного формата, -T для отображения типа ФС и -i для проверки инодов, вы сможете оперативно диагностировать проблемы («место закончилось» или «кончились inodes»), планировать резервное копирование и поддерживать стабильную работу сервера или рабочей станции. Используйте df регулярно — это основа грамотного мониторинга дискового пространства в Linux.