V tomto tutoriálu vás provedu kroky k zobrazení velikosti nainstalovaného balíčku na systémech Ubuntu/Debian Linux. To může být důležité při provádění auditu prostoru, který se snaží najít balíčky, které zabírají velký prostor ve vašem systému.
Ubuntu / Debiandpkg-query a dpkg správce balíčků poskytuje některé možnosti příkazového řádku, které lze pro tento úkol použít, s pomocí některých nástrojů pro regulární výrazy Linuxu, jako je awk, sed, sort, tr atd.
Zobrazit velikost nainstalovaného balíčku pomocí Wajig
Dalším programem, který můžete použít k vypsání velikosti balíčku, je Wajig. Wajig je zjednodušený správce příkazového řádku pro balíčky Debian / Ubuntu. Tento nástroj lze nainstalovat pomocí příkazů:
$ sudo apt-get install wajig
Chcete-li vypsat největší nainstalované balíčky v sestupném pořadí, použijte příkaz:
# wajig large
Package 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
Z výše uvedeného výstupu vyplývá, že balíček, který využívá největší prostor na mém serveru Ubuntu, je Linux-image-extra-3.13.0-143-generic která má velikost 150 Mb.
Zobrazit velikost nainstalovaného balíčku pomocí dpkg-query
Můžete také použít dpkg-query příkaz pro výpis nainstalovaných balíčků filtrovaných podle velikosti. dpkg-query je nástroj používaný k zobrazení informací o balíčcích uvedených v databázi dpkg. Musíte použít volby -Wf
a pomocí kanálu output to sort příkaz seřadit výstup podle pořadí.
# dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n | tail -n 10
23508 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
Měli byste si všimnout, že tento výstup je podobný výstupu z příkazu wajig. Poslední uvedený soubor je největší.
Zobrazit velikost nainstalovaného balíčku pomocí dpigs
Dpigs je nástroj Debianu, který se používá k zobrazení toho, které nainstalované balíčky zabírají nejvíce místa v systému. dpigs třídí nainstalované balíčky podle velikosti a vydává ty největší, výchozí počet zobrazených balíčků je 10.
Tento nástroj není ve výchozím nastavení nainstalován, nainstalujete jej na systém Ubuntu / Debian pomocí příkazu.
# apt-get install debian-goodies
Běh:
# dpigs
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
Zobrazit velikost nainstalovaného balíčku pomocí /var/lib/dpkg/status a awk
Můžete také použít awk ke čtení dat z /var/lib/dpkg/status a filtrujte jej, abyste získali velikost každého balíčku nainstalovaného ve vašem systému. K tomu použijte níže uvedený příkaz.
# awk '{if ($1 ~ /Package/) p = $2; if ($1 ~ /Installed/) printf("%9d %s\n", $2, p)}' /var/lib/dpkg/status
Výstup můžete dále filtrovat tak, že jej zařadíte do třídění a ocas|hlava příkaz.
# awk '{if ($1 ~ /Package/) p = $2; if ($1 ~ /Installed/) printf("%9d %s\n", $2, p)}' /var/lib/dpkg/status | sort -n | tail
Výše uvedený příkaz vám zobrazí velikosti balíčků ve vzestupném pořadí – Od nejmenšího po největší.
Můžete použít i další příkazy, ale všechny dělají to samé. To by vám mělo poskytnout dostatek informací, abyste mohli začít. Můžete psát své vlastní funkce/aliasy nebo bash skripty pomocí stejných příkazů pro rychlé spuštění a reference.