RPM – List installed packages, sorted by size
Here’s another rpm command I can never remember. This lists all installed packages, and sorts the list based on installed size.
rpm -qa --queryformat '%{SIZE} %{NAME} %{VENDOR}\n' | sort -n
The -qa flag specifies that we wish to query all packages. The –queryformat flag specifies how we want each result to be formatted. See below for additional items you can put in your query format string. The -n flag for sort tells us to perform a numerical sort (rather than alphabetical). Try it without the -n to see how the output looks.
Here’s an example to see the 10 installed packages that take up the most space:
[user@host ~]$ rpm -qa --queryformat '%{SIZE} %{NAME} %{VENDOR}\n' | sort -n -r | head -10
195644952 VMware-server VMware, Inc.
113550744 jdk Sun Microsystems, Inc.
66639973 glibc-common CentOS
52098364 compat-gcc-34-c++ CentOS
51851071 festival CentOS
45929176 libstdc++-devel CentOS
41768729 libgcj CentOS
41719064 MySQL-server-community MySQL AB
41653082 frysk CentOS
38859091 firefox CentOS
[user@host ~]$
There are many options that you can specify in your query format. Try this command to get a list:
[user@host ~]$ rpm --querytags HEADERIMAGE HEADERSIGNATURES HEADERIMMUTABLE HEADERREGIONS HEADERI18NTABLE SIGSIZE SIGPGP --snip--