Well, you have two choices. Manage all your .sh scripts so you know what is happening with your system configuration. Or use etckeeper which pours things into a git repository, so you can play back your /etc changes.
Then use the
Some cool uses:
- For your web server configuration files if you have manually edited
You can install with apt-get so it is super convenient to use:
sudo apt-get install -y etckeeper
This will actually fail as the Ubuntu version use Bazaar, their version control system, so let’s make it work with git
# Substitute VCS=“git” for anything else already there sudo sed -i “/^VCS=/d” /etc/etckeeper/etckeeper.conf sudo tee -a /etc/etckeeper/etckeeper.conf <<<‘VCS=“git”' # push to origin as a default sudo sed -i “/^PUSH_REMOTE=/d” /etc/etckeeper/etckeeper.conf sudo tee -a /etc/etckeeper/etckeeper.conf <<<‘PUSH_REMOTE=“origin”’
Now you can just have etckeeper auto commit which is pretty cool assuming REPONAME is the repo you’ve already created. Something like richtong/ubuntu-on-vmware-etckeeper.git. One detail is that you have to make sure that your root account has your .ssh keys for your git hub
sudo su # Normally the home directory of root is / mkdir -p ~/.ssh # Copy your github.rsa into here cp $YOUR_GIT_HUB_RSA_KEY ~/.ssh/ tee -a ~/.ssh/config <<<“IdentifyFile $YOUR_GIT_HUB_RSA_Yet"
# Go to the configuration directory. cd /etc # Initialize etckeeper. sudo etckeeper init # Add the remote repository. sudo git remote add origin firstname.lastname@example.org:REPONAME # First commit. sudo etckeeper commit "Initial commit." # Set the upstream and push. git push -u origin master # We're done here. exit