Утилита stat
, которая удобна для получения статистики файлов, также может предоставить вам информацию о файловых системах, просто указав опцию -f
.
Но убедитесь, что вы указали точку монтирования (например, /boot
), а не файл устройства (/dev/sda1
)! Потому что в последнем случае stat
будет отображать статистику файловой системы /dev
, которая (в debian) является виртуальной файловой системой и не имеет ничего общего с физическим диском:
$ mount | grep sda1
/dev/sda1 on /boot type ext2 (rw,relatime,errors=continue,user_xattr,acl)
$ env stat -f /dev/sda2
File: "/dev/sda1"
ID: 0 Namelen: 255 Type: tmpfs
Block size: 4096 Fundamental block size: 4096
Blocks: Total: 2560 Free: 2560 Available: 2560
Inodes: Total: 497355 Free: 496852
$ env stat -f /boot
File: "/boot"
ID: fe082d7c0c42ea6f Namelen: 255 Type: ext2/ext3
Block size: 1024 Fundamental block size: 1024
Blocks: Total: 99150 Free: 52490 Available: 47370
Inodes: Total: 25688 Free: 25355
- Разница между свободным и доступным счетчиком получается из зарезервированных блоков для root.
- Я использовал
env
чтобы убедиться, что не используется встроенная команда stat вашей оболочки (которая может или не может обеспечить все используемые параметры).
Таким образом, чтобы ответить на ваш вопрос, вы можете использовать настраиваемый (-c
) формат вывода статистики, чтобы получить доступное пространство (%a
) для /
:
$ env stat -f -c %a /
1711744
Это в блоках, так что будьте умны и позвольте системе выполнить умножение с размером блока в килобайтах (%S/1024
), передав выходные данные в калькулятор bc
:
$ env stat -f -c '%a*%S/1024' / | bc
6846976
Давайте проверим с помощью df
:
$ df /
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 25066604 16939628 6846976 72% /
Хорошо, тот же номер сообщил!