Введение
В этом практическом занятии (лабораторной работе) вы узнаете, как использовать команду du (disk usage, использование диска) в Linux для оценки использования пространства на диске файлами и получения информации о размере дискового пространства, занимаемого файлами и каталогами. Вы научитесь использовать различные параметры команды du, измерять использование дискового пространства каталога и исключать каталоги из измерений с помощью команды du. В рамках практического занятия рассматриваются основные операции с файлами и каталогами в Linux, которые являются важной частью системного администрирования и управления файлами.
Понимание команды du
На этом этапе вы узнаете о команде du (disk usage, использование диска) в Linux. Команда du используется для оценки использования пространства на диске файлами и предоставления информации о размере дискового пространства, занимаемого файлами и каталогами.
Для начала давайте проверим справку по команде du:
man du
Вывод справки предоставит вам подробную информацию о различных параметрах и способах использования команды du.
Некоторые часто используемые параметры команды du включают:
-h: Отображать вывод в человекочитаемом формате (например, 1.2M вместо 1234567)-s: Отображать общий размер каталога, а не размер каждого файла/каталога внутри него-c: Отображать общий итог в конце вывода-x: Не переходить за границы файловой системы-d <depth>: Ограничить глубину дерева каталогов, которое будет отображено командойdu
Теперь давайте попробуем несколько примеров, чтобы понять, как использовать команду du:
## Отобразить использование дискового пространства текущего каталога
du -h.
## Отобразить использование дискового пространства текущего каталога, включая подкаталоги
du -h -s *
## Отобразить использование дискового пространства текущего каталога, ограничив глубину до 1 уровня
du -h -d 1
Пример вывода:
4.0K .
4.0K file1.txt
8.0K file2.txt
12K .
Вывод показывает использование дискового пространства текущего каталога (.) и файлов в нем. Параметр -h отображает размеры в человекочитаемом формате.
Измерение использования дискового пространства каталога
На этом этапе вы узнаете, как использовать команду du для измерения использования дискового пространства определенного каталога.
Сначала создадим каталог и несколько файлов для работы:
mkdir ~/project/test_dir
cd ~/project/test_dir
touch file1.txt file2.txt file3.txt
Теперь используем команду du для измерения использования дискового пространства каталога test_dir:
## Отобразить использование дискового пространства каталога test_dir
du -h ~/project/test_dir
## Отобразить общий размер использования дискового пространства каталога test_dir
du -hs ~/project/test_dir
Пример вывода:
12K /home/labex/project/test_dir
12K /home/labex/project/test_dir
Первая команда du -h ~/project/test_dir отображает использование дискового пространства каждого файла и подкаталога внутри каталога test_dir. Параметр -h отображает размеры в человекочитаемом формате.
Вторая команда du -hs ~/project/test_dir отображает общий размер использования дискового пространства каталога test_dir. Параметр -s отображает общий размер вместо размеров отдельных файлов/каталогов.
Вы также можете использовать команду du для рекурсивного измерения использования дискового пространства каталога и его подкаталогов:
## Отобразить использование дискового пространства каталога test_dir и его подкаталогов
du -h -d 1 ~/project/test_dir
Пример вывода:
4.0K /home/labex/project/test_dir/file1.txt
4.0K /home/labex/project/test_dir/file2.txt
4.0K /home/labex/project/test_dir/file3.txt
12K /home/labex/project/test_dir
12K /home/labex/project/test_dir
Параметр -d 1 ограничивает глубину дерева каталогов до 1 уровня, показывая использование дискового пространства каталога test_dir и его непосредственных файлов/подкаталогов.
Исключение каталогов из измерений с помощью команды du
На этом этапе вы узнаете, как исключить определенные каталоги из измерений использования дискового пространства с помощью команды du.
Создадим новую структуру каталогов для демонстрации этого:
mkdir -p ~/project/main_dir/subdir1 ~/project/main_dir/subdir2
touch ~/project/main_dir/subdir1/file1.txt ~/project/main_dir/subdir2/file2.txt
Теперь используем команду du для измерения использования дискового пространства каталога main_dir, включая его подкаталоги:
du -h -d 1 ~/project/main_dir
Пример вывода:
4.0K /home/labex/project/main_dir/subdir1
4.0K /home/labex/project/main_dir/subdir2
8.0K /home/labex/project/main_dir
8.0K /home/labex/project/main_dir
Как вы можете видеть, команда du включает в себя использование дискового пространства каталогов subdir1 и subdir2.
Если вы хотите исключить определенные каталоги из измерений с помощью команды du, вы можете использовать параметр --exclude:
du -h -d 1 --exclude=subdir1 ~/project/main_dir
Пример вывода:
4.0K /home/labex/project/main_dir/subdir2
4.0K /home/labex/project/main_dir
4.0K /home/labex/project/main_dir
В этом примере параметр --exclude=subdir1 сообщает команде du исключить каталог subdir1 из измерений использования дискового пространства.
Вы также можете исключить несколько каталогов, используя параметр --exclude несколько раз:
du -h -d 1 --exclude=subdir1 --exclude=subdir2 ~/project/main_dir
Пример вывода:
0 /home/labex/project/main_dir
0 /home/labex/project/main_dir
В этом случае, так как мы исключили как subdir1, так и subdir2, общий размер использования дискового пространства каталога main_dir отображается как 0.
Резюме
В этом практическом занятии (лабораторной работе) вы узнали о команде du (disk usage, использование диска) в Linux, которая используется для оценки использования пространства на диске файлами и предоставления информации о размере дискового пространства, занимаемого файлами и каталогами. Вы изучили часто используемые параметры команды du, такие как -h для вывода в человекочитаемом формате, -s для отображения общего размера каталога и -d для ограничения глубины дерева каталогов. Затем вы практиковались в использовании команды du для измерения использования дискового пространства определенного каталога, как самого каталога, так и отдельных файлов в нем.



