* ConfigSave/ConfigLoad * Created: March 27, 2008
This specification describes a script for moving organization/installation specific information from one computer to another or to a reinstallation.
There are a number of times when one brings up a server and wishes to replicate the server level data either from its previous Ubuntu install or from another Ubuntu install. It is time consuming to fetch and reenter (1) various /etc items such as users, groups, passwords, smbpasswd entries, hosts, etc (2) various config files and (3) the misc scripts placed here and there. Similarly desired apt-gets could be done as well. Automation of the saving of these items and automation of the loading of these items would save significant time.
* Anton has one Ubuntu 6.06 server and is bringing up another 6.06 server. He wishes to have the same users, pws, misc scripts, etc on this server as he does on the other. He exectues ConfigSave on the existing server to the save the various config items to a thumbdrive. As he installs on the new server, the installation process allows him to run ConfigLoad which installs the settings onto the new server.
* Llewelyn has broken his 6.06 server. He wishes to reinstall 6.06 over top of this broken installation. Prior to reinstalling he runs ConfigSave to store the info to a mount on the LAN. As part of his installation, he points ConfigLoad to the location of the data file with his settings, which are then reestablished.
This is intended to discuss a script to save various information items, not to change the content or location of any of those items. It is not intended to change the Installation process (other than the possibility of adding this as an installation option).
A bash script needs to be written that will (1) cull the non-standard users and their passwords, groups (including shadows), smbpasswds; hosts; and other items (2) read a specific cleartext file (e.g. /etc/ConfigSave) for the section which contains a list of other files to be saved (e.g. [saves] /etc/samba/* /etc/mysql/my.conf) (3) read that same file for the section with the list of apt-get install's to be done e.g. [apt-get] samba openssh-server