Свободное место на диске

[ linux ]

16 Aug 2012

1. Просмотр размеров файлов:

Тут нас спасает старый-добрый ls но с ключом -s (size):

ls -s

12 genkernel.conf
156 lynx.cfg
168 ld.so.cache

Делает вывод в килобайтах. Конечно же, хочется более удобный формат, что решается добавлением ключа -h (–human-readable):

ls -sh

12K genkernel.conf
156K lynx.cfg
168K ld.so.cache

Ну и не стоит забывать, что опция -l, позволяет выводить гораздо больше информации о файлах, где одним из полей будет размер. (также допускается использование ключа -h)

ls -lh

-rw-r--r-- 1 root root 8,9K авг.  11 08:13 genkernel.conf
-rw-r--r-- 1 root root 153K авг.  12 11:53 lynx.cfg
-rw-r--r-- 1 root root 166K авг.  16 10:09 ld.so.cache

Как можно было заметить в экспериментах, любая папка в выводе команды ls -s имеет размер 4Кб. Хотелось бы понимать, каков же её реальный размер, со всеми лежащими в ней файлами.

2. Просмотр размеров папок

Команда du покажет рекурсивно размеры всех директорий, лежащих в данной, либо по заданному пути. Также допускается использование ключа -h для более понятного вывода.

du -h /etc

4,0K    ./ca-certificates/update.d
8,0K    ./ca-certificates
28K     ./sgml
20K     ./gpm
4,0K    ./cron.d
8,0K    ./chromium
8,0K    ./gtk-2.0/x86_64-pc-linux-gnu
20K     ./gtk-2.0
20K     ./samsung-tools/scripts
32K     ./samsung-tools
12K     ./obex-data-server
4,4M    .

Так как du просматривает все папки рекурсивно поиском в глубину, то и вывод происходит обратных ходом по графу, что иногда может запутать. Поэтому рекомендуется, всё же перенаправлять вывод на дальнейшую обработку, например grep.

Одним из важных по удобству ключей команды du является ключ –max-depth=N, где N произвольное целое число больше, либо равное 0. На практике наиболее полезно max-depth=1 - Выводить размеры папок, непосредственно лежащих в данной.

3. Свободное место на носителях

В таком случае поможет команда df (или лучше она же с ключом -h)

Ну тут, я думаю, всё понятно:

Файловая система Размер Использовано  Дост Использовано% Cмонтировано в
rootfs              30G          11G   18G           38% /
udev                10M            0   10M            0% /dev
/dev/sda7           30G          11G   18G           38% /
tmpfs             1000M         312K 1000M            1% /run
/dev/sda6          187G          95G   92G           51% /files

Приятного пользования!