COREUTILS. Команда df. Как узнать свободное место на диске в Linux

08/15/2015

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

  Файловая система   1K-блоков   Использовано   Дост       Использовано%   Cмонт в
   rootfs                        76897312     58684416         14306644   81%                        /
   udev                         10240            0                      10240         0%                          /dev
   tmpfs                        102616          352                  102264       1%                          /run
   tmpfs                        5120              0                      5120           0%                          /run/lock
   tmpfs                        1089540        0                      1089540     0%                          /run/shm
   /dev/sda1                 483946         19010               439951       5%                          /boot
   /dev/sda3                 72093008      58546112        9884768     86%                        /home

"Что это за числа?" - спросите вы, мы хотели получить совсем другое! Действительно, пытаться переводить все это в удобочитаемый формат трудновато. В данном примере df вывела размер смотрированных файловых систем в блоках - минимальных адресуемых едениц файловой системы. Кроме того в выводе присутствуют файловые системы linux, которые не представлют для нас большого интереса - так называемые псевдофайловые системы. Так, потому что на диске, или другом накопителе, они фактически не храняться, но тем не менее используются системой для различных целей.

Добавим df следующие дополнительные параметры: "-h", "-x tmpfs" и "-T"

   df -h -x tmpfs -T

Получим:

   Файловая система   Тип          Размер   Использовано   Дост   Использовано%   Cмонт в
   rootfs                          rootfs         74G           56G               14G      81%                      /
   udev                           devtmpfs   10M           0                    10M      0%                        /dev
   /dev/sda1                   ext4            473M        19M               430M    5%                        /boot
   /dev/sda3                   ext4            69G           56G               9,5G     86%                      /home

Так гораздо лучше. Мы видим, что свободное место для раздела /dev/sda1 составляет 14 ГБт, что занят 81% от всего доступного пространства, и что он размечен файловой системой типа ext4. Что изменилось? Ключ "-h" заставляет df переводить блоки в мегабайты и гигабайты, ключ -x позволяет исключить в выводе файловые системы для временных файлов, а ключ "-T" дополнительно выводит еще и тип файловой системы: ext3, ext4, btrsfs и так далее.

Заметим, что в противовес краткому выводу существует еще и полный вывод команды df, который можно получить убрав ключ "-x" и подставив ключ "-a". В этом случае мы увидим в выводе даже файловые системы linux с нулевым размером.

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

   df -h -T /dev/sda1

   Файловая система   Тип  Размер   Использовано  Дост   Использовано%   Cмонтировано в
   /dev/sda1                  ext4   473M     19M                   430M    5%                       /boot

В этом случае мы получим информацию размере свободного места только по одной конкретной фаловой системе.

Если к вашей системе подключено множество файловых систем, в том числе и сетевых, возможно вам захочется использовать ключ "-l", который указывает df выводить информацию только о локальных файловых системах.

 

Темы: