This page is about the ways to list the installed packages in a Debian system and how to create a file with this list. This file can be uploaded to the web (i.e. from other computer with Internet connection) to download new packages.
List all packages installed
- dpkg-query -l or
List packages using a search pattern
It is possible to add a search pattern to list packages:
dpkg-query -l 'foo*'
Storing a list of installed packages in a file
And to store in a file:
dpkg --list > /backup/installed-software.log
Show status of all packages on the system
To check the status of all packages on your system:
- dpkg -l | more
This will show all packages (1 line each) that are in various stages of install (this includes packages that were removed but not purged). To show only the installed:
dpkg -l | grep '^i'
to filter through grep to get results for "i"
The command above is some how redundant, because dpkg support Wildcard_character , doing this instead
- dpkg-query -l 'i*'
- dpkg -l "ii"
You can also use:
You can if you are using Debian Linux use dpkg command to list installed software:
- dpkg --get-selections
And store the list installed software to a file called /backup/installed-software.log
$ dpkg --get-selections > /backup/installed-software.log
- /var/lib/dpkg/available: list of available packages.
- /var/lib/dpkg/status :statuses of available packages. This file contains information about whether a package is marked for removing or not, whether it is installed or not, etc. A package marked reinst-required is broken and requires reinstallation.
Restore installed software
After re-installing base system you can immediately re-install all software.
All you have to do is type following two commands:
dpkg --set-selections < /backup/installed-software.log
Select ‘i‘ for install the software
You can also use “apt-get dselect-upgrade” instead of dselect
All this with a single command:
apt-get install `cat installed-software.log`
debfoster - If dependency changes, debfoster ask if you want to remove the old package.