Some time ago I had to reinstall a deb based system, which meant installing the packages and configure them.

During the configuration I had to rethink how the system was originally configured, without having a proper backup of the system. Some of issues where that the backup contained some configuration files, but files referenced where not included.

To overcome this problem I started creating a small piece of code (and placed it on github) which implements the following idea:

  1. make a listing of all package files installed
  2. for every package file check if the configuration files are changed in relation to the packager provided ones
  3. for some special packages check the configuration files and include any referenced locations
  4. Combine the above information to a ‘restore’ script. This script will contain all information to reinstall the packages and configuration, based on this information. The only requirement is a basic bootable (compatible) OS installation.
  5. Optionally this can be used to update a system to a newer version, using a clean installation.

For those interested, have a peek at the work-in-progress on github:
https://github.com/woutervb/deb-dr