Linux - Softwareliste für Neuinstallation auslesen und Zurückspielen
Hardware and Software failures are part of Life. That is why you need to have a backup. I have already written about backing files and MySQL databases. You need not to backup all installed binaries (mostly software) with following tips. It will not just save your time but both Debian and RHEL distro can update them instantly.
In order to reinstall or restore your installed software you need to have a list of all installed software.
Backup list of installed software
If you are using Debian Linux use dpkg command to list installed software:
Store list of installed software to a file called /backup/installed-software.log
dpkg --get-selections > /backup/installed-software.log
RPM based distributions (RHEL, Fedora Core, Cent OS, Suse Linux etc)
Use rpm command to get list of all installed software:
rpm -qa > /backup/installed-software.log
Restore installed software from backup list
Now you have a list of installed software. After installing base system you can immediately install all software.
Debian Linux makes your life easy. All you have to do is type following two commands:
dpkg --set-selections < /backup/installed-software.log
Now your list is imported use dselect or other tools to install the package.
Select 'i' for install the software or:
RPM based distro
As far as I know RPM based distro does not offers dpkg kind of facility. But with little shell scripting technquie you can easily install all software:
LIST="$( cat /backup/installed-software.log )"
If you are using yum, type the following for loop to install all software:
for s in $LIST; do yum install $s; done
Update try out following command (thanks to gt):
yum -y install $(cat /backup/installed-software.log)
OR if you are using RHEL (RHN subscriber) :
for s in $LIST; do up2date -i $s; done
Alternatively you use following command:
up2date -i $(cat /backup/installed-software.log)