Как узнать использование диска для файлов и каталогов в Linux
Linux «du» (Использование диска) — это стандартная команда Unix/Linux, используемая для проверки информации об использовании диска файлами и каталогами на машине.
Команда du имеет множество параметров, которые можно использовать для получения результатов во многих форматах. Команда du также рекурсивно отображает размеры файлов и каталогов.
В этой статье с примерами объясняются полезные команды «du», которые помогут вам определить размеры файлов и каталогов в Linux. Информация, представленная в этой статье, взята из справочных страниц команды «du».
Как узнать размер каталога в Linux
1. Чтобы получить сводную информацию об использовании диска для дерева каталогов «/home/tecmint» и его подкаталогов, используйте следующую команду.
du /home/tecmint
4 /home/tecmint/bin
4 /home/tecmint/.ffbinaries-cache
672 /home/tecmint/.openjfx/cache/17.0.3-ea
676 /home/tecmint/.openjfx/cache
680 /home/tecmint/.openjfx
36 /home/tecmint/.ssh
92 /home/tecmint/.config/xfce4/xfconf/xfce-perchannel-xml
96 /home/tecmint/.config/xfce4/xfconf
12 /home/tecmint/.config/xfce4/desktop
...
56758808 /home/tecmint
Вывод приведенной выше команды отображает количество дисковых блоков в каталоге /home/tecmint вместе с его подкаталогами.
Как найти размер каталога в удобочитаемом формате
2. Используя параметр '-h'
с командой 'du', вы можете получить результаты в виде 'читабельном для человека Формат', который позволяет просматривать размеры в таких единицах, как байты, килобайты, мегабайты, гигабайты и т. д.
du -h /home/tecmint
4.0K /home/tecmint/bin
4.0K /home/tecmint/.ffbinaries-cache
672K /home/tecmint/.openjfx/cache/17.0.3-ea
676K /home/tecmint/.openjfx/cache
680K /home/tecmint/.openjfx
36K /home/tecmint/.ssh
92K /home/tecmint/.config/xfce4/xfconf/xfce-perchannel-xml
96K /home/tecmint/.config/xfce4/xfconf
12K /home/tecmint/.config/xfce4/desktop
...
55G /home/tecmint
Как узнать общий размер каталога в Linux
3. Чтобы получить сводную информацию об общем объеме использования диска для каталога, используйте параметр '-s'
следующим образом.
du -sh /home/tecmint
55G /home/tecmint
4. Использование флага '-a'
с командой «du» отображает использование диска всеми файлами и каталогами.
du -a /home/tecmint
4 /home/tecmint/fix-deb-src-error-ubuntu
4 /home/tecmint/tecmint.py
0 /home/tecmint/bin/FoxitReader
4 /home/tecmint/bin
4 /home/tecmint/.ffbinaries-cache
52 /home/tecmint/Eclipse-with-PyDev.jpg
300 /home/tecmint/Screenshot from 2023-07-27 14-02-45.png
16 /home/tecmint/.openjfx/cache/17.0.3-ea/libglass.so
28 /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font_pango.so
20 /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font.so
64 /home/tecmint/.openjfx/cache/17.0.3-ea/libprism_es2.so
512 /home/tecmint/.openjfx/cache/17.0.3-ea/libglassgtk3.so
...
56759528 /home/tecmint
5. Использование флага '-a'
вместе с '-h'
отображает использование диска всеми файлами и папками в удобочитаемом виде. формат. Полученный результат легче понять, поскольку он представляет размеры файлов в таких единицах, как килобайты, мегабайты и т. д.
du -ah /home/tecmint
4.0K /home/tecmint/fix-deb-src-error-ubuntu
4.0K /home/tecmint/tecmint.py
28K /home/tecmint/download.php?file=%2Foomph%2Fepp%2F2023-06%2FR%2Feclipse-inst-jre-linux64.tar.gz.1
0 /home/tecmint/bin/FoxitReader
4.0K /home/tecmint/bin
4.0K /home/tecmint/.ffbinaries-cache
52K /home/tecmint/Eclipse-with-PyDev.jpg
300K /home/tecmint/Screenshot from 2023-07-27 14-02-45.png
16K /home/tecmint/.openjfx/cache/17.0.3-ea/libglass.so
28K /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font_pango.so
20K /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font.so
64K /home/tecmint/.openjfx/cache/17.0.3-ea/libprism_es2.so
512K /home/tecmint/.openjfx/cache/17.0.3-ea/libglassgtk3.so
...
55G /home/tecmint
6. Чтобы определить использование диска для дерева каталогов и его подкаталогов в блоках Килобайт, используйте параметр '-k'
(отображает размеры в блоки по 1024 байта).
du -k /home/tecmint
4 /home/tecmint/bin
4 /home/tecmint/.ffbinaries-cache
672 /home/tecmint/.openjfx/cache/17.0.3-ea
676 /home/tecmint/.openjfx/cache
680 /home/tecmint/.openjfx
8 /home/tecmint/.uk.co.screamingfrog.seospider.ui.b/webview
12 /home/tecmint/.uk.co.screamingfrog.seospider.ui.b
36 /home/tecmint/.ssh
92 /home/tecmint/.config/xfce4/xfconf/xfce-perchannel-xml
96 /home/tecmint/.config/xfce4/xfconf
12 /home/tecmint/.config/xfce4/desktop
4 /home/tecmint/.config/xfce4/xfwm4
8 /home/tecmint/.config/xfce4/panel/launcher-18
8 /home/tecmint/.config/xfce4/panel/launcher-17
8 /home/tecmint/.config/xfce4/panel/launcher-14
8 /home/tecmint/.config/xfce4/panel/launcher-3
8 /home/tecmint/.config/xfce4/panel/launcher-16
8 /home/tecmint/.config/xfce4/panel/launcher-5
...
56769128 /home/tecmint
7. Чтобы получить сводную информацию об использовании диска для дерева каталогов, включая его подкаталоги, только в Мегабайтах (МБ), используйте '-mh'
следующим образом. Флаг '-m'
подсчитывает блоки в мегабайтах, а '-h'
обозначает удобочитаемый формат.
du -mh /home/tecmint
4.0K /home/tecmint/bin
4.0K /home/tecmint/.ffbinaries-cache
672K /home/tecmint/.openjfx/cache/17.0.3-ea
676K /home/tecmint/.openjfx/cache
680K /home/tecmint/.openjfx
8.0K /home/tecmint/.uk.co.screamingfrog.seospider.ui.b/webview
12K /home/tecmint/.uk.co.screamingfrog.seospider.ui.b
36K /home/tecmint/.ssh
92K /home/tecmint/.config/xfce4/xfconf/xfce-perchannel-xml
96K /home/tecmint/.config/xfce4/xfconf
12K /home/tecmint/.config/xfce4/desktop
4.0K /home/tecmint/.config/xfce4/xfwm4
8.0K /home/tecmint/.config/xfce4/panel/launcher-18
8.0K /home/tecmint/.config/xfce4/panel/launcher-17
8.0K /home/tecmint/.config/xfce4/panel/launcher-14
8.0K /home/tecmint/.config/xfce4/panel/launcher-3
...
55G /home/tecmint
8. Флаг '-c'
показывает общую сумму использования дискового пространства в последней строке. Если ваш каталог занимает 55 ГБ места, то последние две строки вывода будут выглядеть следующим образом.
du -ch /home/tecmint
4.0K /home/tecmint/bin
4.0K /home/tecmint/.ffbinaries-cache
672K /home/tecmint/.openjfx/cache/17.0.3-ea
676K /home/tecmint/.openjfx/cache
680K /home/tecmint/.openjfx
8.0K /home/tecmint/.uk.co.screamingfrog.seospider.ui.b/webview
12K /home/tecmint/.uk.co.screamingfrog.seospider.ui.b
36K /home/tecmint/.ssh
92K /home/tecmint/.config/xfce4/xfconf/xfce-perchannel-xml
96K /home/tecmint/.config/xfce4/xfconf
12K /home/tecmint/.config/xfce4/desktop
4.0K /home/tecmint/.config/xfce4/xfwm4
8.0K /home/tecmint/.config/xfce4/panel/launcher-18
8.0K /home/tecmint/.config/xfce4/panel/launcher-17
8.0K /home/tecmint/.config/xfce4/panel/launcher-14
8.0K /home/tecmint/.config/xfce4/panel/launcher-3
8.0K /home/tecmint/.config/xfce4/panel/launcher-16
...
55G /home/tecmint
55G total
Как исключить файлы с помощью команды du
9. Следующая команда вычисляет и отображает использование диска всеми файлами и каталогами, исключая файлы, соответствующие заданному шаблону.
В приведенном примере команда исключает файлы '.txt'
при расчете общего размера каталога. Этот подход позволяет исключать определенные форматы файлов с помощью флага '--exclude'
.
Просмотрев выходные данные, вы заметите отсутствие записей для файлов '.txt'
.
du -ah --exclude="*.txt" /home/tecmint
4.0K /home/tecmint/fix-deb-src-error-ubuntu
4.0K /home/tecmint/tecmint.py
0 /home/tecmint/bin/FoxitReader
4.0K /home/tecmint/bin
4.0K /home/tecmint/.ffbinaries-cache
52K /home/tecmint/Eclipse-with-PyDev.jpg
300K /home/tecmint/Screenshot from 2023-07-27 14-02-45.png
16K /home/tecmint/.openjfx/cache/17.0.3-ea/libglass.so
28K /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font_pango.so
20K /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font.so
64K /home/tecmint/.openjfx/cache/17.0.3-ea/libprism_es2.so
512K /home/tecmint/.openjfx/cache/17.0.3-ea/libglassgtk3.so
28K /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font_freetype.so
672K /home/tecmint/.openjfx/cache/17.0.3-ea
...
55G /home/tecmint
Как узнать использование каталога по времени модификации
10. Чтобы отобразить использование диска на основе времени изменения, используйте флаг '--time'
, как показано ниже.
du -ha --time /home/tecmint
4.0K 2023-07-06 13:15 /home/tecmint/fix-deb-src-error-ubuntu
4.0K 2023-06-14 12:50 /home/tecmint/tecmint.py
0 2021-12-07 12:26 /home/tecmint/bin/FoxitReader
4.0K 2021-12-07 12:26 /home/tecmint/bin
4.0K 2022-10-10 11:02 /home/tecmint/.ffbinaries-cache
52K 2023-05-12 12:09 /home/tecmint/Eclipse-with-PyDev.jpg
300K 2023-07-27 14:02 /home/tecmint/Screenshot from 2023-07-27 14-02-45.png
16K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea/libglass.so
28K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font_pango.so
20K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font.so
64K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea/libprism_es2.so
512K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea/libglassgtk3.so
28K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font_freetype.so
672K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea
676K 2022-10-01 12:41 /home/tecmint/.openjfx/cache
...
55G 2023-08-14 10:22 /home/tecmint
Команда du универсальна и может быть адаптирована к вашим потребностям с помощью различных параметров и флагов. Используйте man du
в терминале для получения более подробной информации о его опциях и использовании.