В этом руководстве мы рассмотрим шаги по составлению списка установленных пакетов по размеру в системах Ubuntu/Debian Linux.
Это может быть важно при проведении аудита пространства и попытке найти пакеты, занимающие много места в вашей системе.
Ubuntu / Debian dpkg-query и dpkg менеджер пакетов предоставляют некоторые опции командной строки, которые могут быть использованы для этой задачи, с помощью некоторых инструментов Linux regex, таких как awk, sed, sort, tr
Список размеров установленных пакетов с помощью Wajig
Wajig – это упрощенный администратор командной строки для пакетов Debian / Ubuntu.
Мы можем использовать эту программу для получения списка размеров пакетов.
Этот инструмент может быть установлен с помощью команд:
sudo apt install wajig
Чтобы перечислить самые большие установленные пакеты в порядке убывания, используйте команду:
wajig large
OutputPackage Size (KB) Status
=================================-==========-============
libc6 10,508 installed
grub-common 11,484 installed
linux-headers-3.13.0-32-generic 12,999 installed
linux-headers-3.13.0-143-generic 13,216 installed
iso-codes 15,207 installed
perl-modules 16,134 installed
perl 17,320 installed
vim-runtime 25,186 installed
linux-image-3.13.0-32-generic 41,029 installed
linux-image-3.13.0-143-generic 43,054 installed
linux-headers-3.13.0-32 61,797 installed
linux-headers-3.13.0-143 62,064 installed
linux-firmware 124,150 installed
linux-image-extra-3.13.0-32-generic 148,283 installed
linux-image-extra-3.13.0-143-generic 150,240 installed
Из приведенного выше результата видно, что пакет, который занимает больше всего места на моем сервере Ubuntu, это linux-image-extra-3.13.0-143-generic размером 150 Мб.
Список размеров установленных пакетов с помощью команды dpkg-query
Вы также можете использовать команду dpkg-query для получения списка установленных пакетов, отфильтрованных по размеру.
dpkg-query – это инструмент, используемый для отображения информации о пакетах, перечисленных в базе данных dpkg.
Вы должны использовать опцию -Wf и направить вывод в команду sort, чтобы получить результат, отсортированный по порядку.
dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n | tail -n 10
Output23508 git
26870 vim-runtime
30094 libicu55
32502 cassandra
65367 linux-image-4.4.0-87-generic
68901 linux-headers-4.4.0-87
75176 snapd
97190 openjdk-8-jre-headless
148663 linux-image-extra-4.4.0-87-generic
207968 linux-firmware
Вы должны заметить, что этот вывод похож на вывод команды wajig.
Последний файл в списке – самый большой.
Список размеров установленных пакетов с помощью dpigs
Dpigs – это инструмент Debian, который используется для того, чтобы показать, какие установленные пакеты занимают больше всего места в системе.
dpigs сортирует установленные пакеты по размеру и выводит самые большие из них, по умолчанию отображается 10 пакетов.
Этот инструмент не установлен по умолчанию, установите его в системе Ubuntu / Debian с помощью команды.
apt install debian-goodies
Теперь, чтобы перечислить размер установленных пакетов, введите
dpigs
Output
150240 linux-image-extra-3.13.0-143-generic
148283 linux-image-extra-3.13.0-32-generic
124150 linux-firmware
93841 libboost1.54-dev
62064 linux-headers-3.13.0-143
61797 linux-headers-3.13.0-32
54539 openjdk-7-jre-headless
43054 linux-image-3.13.0-143-generic
41029 linux-image-3.13.0-32-generic
39210 python-neutron
Как показать размер установленного пакета с помощью /var/lib/dpkg/status и awk
Вы также можете использовать awk для чтения данных из /var/lib/dpkg/status и их фильтрации, чтобы получить размер каждого пакета, установленного в вашей системе.
Для этого используйте команду:
awk '{if ($1 ~ /Package/) p = $2; if ($1 ~ /Installed/) printf("%9d %s\n", $2, p)}' /var/lib/dpkg/status
awk '{if ($1 ~ /Package/) p = $2; if ($1 ~ /Installed/) printf("%9d %s\n", $2, p)}' /var/lib/dpkg/status | sort -n | tail
Приведенная выше команда покажет размеры пакетов в порядке возрастания – от наименьшего к наибольшему.
Есть и другие команды, которые вы можете использовать, но все они делают одно и то же. Это должно дать вам достаточно информации для начала работы. Вы можете написать свои собственные функции/алиасы или скрипты bash, используя те же команды для быстрого выполнения и справки.
Заключение
В этом руководстве мы узнали, как составить список установленных пакетов по размеру в Ubuntu.
Спасибо за прочтение, пожалуйста, оставляйте свои отзывы и предложения в разделе комментариев.
см. также:
- 🤖 Как проверить, установлен данный пакет или нет в системе Debian / Ubuntu?
- Как просмотреть подробную информацию о пакете в Linux
- Как найти установленные приложения с установленным размером в Linux