Утиліти df і du в Linux

Для того, щоб подивитися, скільки місця займає файлова система, диск, файл або каталог, в Linux існує дві команди: df і du.

Df (disk free) виводить список всіх файлових систем за іменами пристроїв із зазначенням розміру, показує точки монтування і кількість вільного/зайнятого простору.

Як IT-спільнота реагує на заборону виїзду за кордон — читати на Education Blog.

Якщо ми введемо команду df без ключа, у нас вийде приблизно ось такий висновок

Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 4673664 805492 3607720 19% /
udev 10240 0 10240 0% /dev
tmpfs 204876 4500 200376 3% /run
tmpfs 512184 0 512184 0% /dev/shm
tmpfs 5120 0 5120 0% /run/lock
tmpfs 512184 0 512184 0% /sys/fs/cgroup
/dev/sda2 945144 223548 656368 26% /var
/dev/sda3 1889292 2904 1772368 1% /home

Всі дані показані в кілобайтах, тому розібрати тут що-небудь непросто. Для того, щоб інформація показувалася саме так, як нам зручно, використовуємо цілий ряд ключів.

Читати статтю як захиститися від фішингу на IT Educatiion Blog.

Синтаксис команди

# df опції файл/пристрій

Список опцій

-а, --all — відображення всіх файлових систем, в тому числі й віртуальних;

-h, --human-readable — показ літери для позначення розміру файлу/каталогу;

-I, --inodes — виводиться інформація про inode’и: ім’я власника, права доступу, місце розташування в системі, тимчасові штампи;

-k, --kilobytes — висновок розмірів в кілобайтах;

-l, - local — показує дані про локальні файлові системи;

-- output — дозволяє задати формат виводу за такими параметрами: ‘source’, ‘fstype’, ‘itotal’, ‘iused’, ‘iavail’, ‘ipcent’, ‘size’, ‘used’, ‘avail’, ‘pcent ‘,’ file ‘і’ target ‘; за замовчуванням команда показує відразу всі параметри;

- p, --portability — висновок інформації відповідно до стандарту Posix. Інформація про конкретну файлової системи буде виводиться в один рядок;

-- sync — надсилання системного виклику перед отриманням інформації про використання простору на диску;

-t --type — висновок інформації про файлові системи зазначеного типу;

-x --exclude type —  більше не показувати інформацію про файлові системи  зазначеного типу.

Найбільш часто використовується опція -h, оскільки вона надає дані в кілобайтах.

Вводимо команду:

# df -h

Як висновок отримуємо більш зрозумілу картину:

Filesystem Size Used Avail Use% Mounted on
/dev/sda1 4.5G 787M 3.5G 19% /
udev 10M 0 10M 0% /dev
tmpfs 201M 4.4M 196M 3% /run
tmpfs 501M 0 501M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 501M 0 501M 0% /sys/fs/cgroup
/dev/sda2 923M 219M 641M 26% /var
/dev/sda3 1.9G 2.9M 1.7G 1% /home

Щоб отримати інформацію про всі змонтовані файлові системи, прописуємо:

# df –a

Отримуємо виведення (перші 10 рядків):

Filesystem 1K-blocks Used Available Use% Mounted on
rootfs - - - - /
sysfs 0 0 0 - /sys
proc 0 0 0 - /proc
udev 10240 0 10240 0% /dev
devpts 0 0 0 - /dev/pts
tmpfs 204876 4500 200376 3% /run
/dev/sda1 4673664 805492 3607720 19% /
securityfs 0 0 0 - /sys/kernel/security
tmpfs 512184 0 512184 0% /dev/shm

У виведенні показується інформація як про реальні, так і віртуальні файлові системи. Для виведення даних тільки про реальні файлові системи використовується команда:

# df –x tmpfs

Наш список суттєво зменшився:

Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 4673664 805492 3607720 19% /
udev 10240 0 10240 0% /dev
/dev/sda2 945144 223592 656324 26% /var
/dev/sda3 1889292 2904 1772368 1% /home

Можна задати файлову систему на свій розсуд

root @ debian: ~ # df -t ext4
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 4673664 805492 3607720 19% /
/dev/sda2 945144 223592 656324 26% /var
/dev/sda3 1889292 2904 1772368 1% /home

Або вказати розділ, що цікавить:

root@debian:~# df -h /dev/sda
Filesystem Size Used Avail Use% Mounted on
udev 10M 0 10M 0% /dev

Використовуючи опцію -i, ми можемо отримати дані про стан inode заданої нами директорії:

root@debian:~# df -hi /dev/sda
Filesystem Inodes IUsed IFree IUse% Mounted on
udev 123K 332 123K 1% /dev

Утиліта du (disk usage) — використовується для оцінки займаного файлового простору. Показує розмір файлів і каталогів, як в сукупності, так і окремо.

Синтаксис команди

# du опції файл/пристрій

Основні опції

-a, --all — видавати розміри всіх файлів в системі;

-b, --bytes — висновок інформації в байтах;

-c, --total — показ даних про те, як використовується дискова пам’ять в цілому (виводиться в останньому рядку);

-k, --kilobytes — висновок інформації в кілобайтах (за замовчуванням);

-s, summarize — висновок сумарного підсумку для кожного аргументу;

-h, --human-readable — додавання вказівку букви розміру, наприклад, М — мемібайт і т.д.

Так буде виглядати висновок при введенні команди (перші десять рядків)

# du -a
4 ./dir1/dir2/dir3/dir4/dir5
8 ./dir1/dir2/dir3/dir4
12 ./dir1/dir2/dir3
16 ./dir1/dir2
20 ./dir1
4 ./.viminfo
4 ./archive-directory/dir1/dir2/dir3/dir4/dir5
8 ./archive-directory/dir1/dir2/dir3/dir4
12 ./archive-directory / dir1 / dir2 / dir3
16 ./archive-directory/dir1/dir2

Використання опції і -h виводить інформацію про використання дискового простору файлами й каталогами в зручному для читання форматі, наприклад, в кіло-, мегабайтах і т.д.

root@debian:~# du -ah
4.0K ./dir1/dir2/dir3/dir4/dir5
8.0K ./dir1/dir2/dir3/dir4
12K ./dir1/dir2/dir3
16K ./dir1/dir2
20K ./dir1
4.0K ./.viminfo
4.0K ./archive-directory/dir1/dir2/dir3/dir4/dir5
8.0K ./archive-directory/dir1/dir2/dir3/dir4
12K ./archive-directory/dir1/dir2/dir3
16K ./archive-directory/dir1/dir2

Перевіряємо, скільки місця у нас займає каталог dir1

Пишемо команду

# du -ch /root/dir1

Отримуємо висновок в кілобайтах

4.0K /root/dir1/dir2/dir3/dir4/dir5
8.0K /root/dir1/dir2/dir3/dir4
12K /root/dir1/dir2/dir3
16K /root/dir1/dir2
20K /root/dir1
20K total

За допомогою цієї команди можемо подивитися дату створення/зміни файлів і каталогів

# du -ha --time /root/dir1

Отримуємо виведення:

4.0K 2017-07-14 16:03 /root/dir1/dir2/dir3/dir4/dir5
8.0K 2017-07-14 16:03 /root/dir1/dir2/dir3/dir4
12K 2017-07-14 16:03 /root/dir1/dir2/dir3
16K 2017-07-14 16:03 /root/dir1/dir2
20K 2017-10-03 13:28 /root/dir1

Важливо! Якщо не ввести ключі або -s, видається інформація тільки про розміри каталогів.

Хочете вивчити Linux від А до Я? Записуйтеся на наші авторські курси з Linux адміністрування. Обіцяємо, буде ще цікавіше, складніше і пізнавальним!

Залишити відповідь

Дякуємо, що поділились