Você já modificou um lote de seus incríveis arquivos de configuração de servidor apenas para descobrir que nada mais funciona?
você está mantendo as opções do servidor em um bloco de papel ou em outra máquina?
vá pelo caminho mais fácil! e faça backup de todas as suas alterações em um futuro próximo!
Ferramentas existentes
A opção mais fácil de usar o etckeeper :
etckeeper permite que / etc seja armazenado em um repositório git, mercurial, darcs ou bzr. Ele se conecta ao apt (e outros gerenciadores de pacotes, incluindo yum e pacman-g2) para confirmar automaticamente as alterações feitas em / etc durante atualizações de pacotes. Ele rastreia metadados de arquivo que os sistemas de controle de revisão normalmente não suportam, mas que são importantes para / etc, como as permissões de / etc / shadow.
etckeeper está empacotado em Debian, Ubuntu, Fedora, etc.
para os diy-ers. por exemplo: com git
Se você quiser sentir os parafusos e engrenagens, aqui está uma maneira fácil de fazer isso com o git awesomeness:
cd /etc
git init
git add hostname
git commit -m "Initial commit." hostname
git branch stock //for stock config
git branch play //for playing config
//one example of use: add a config to the stock branch
git checkout stock
apt-get install squid
git add squid/squid.conf
git commit -m "Adding stock config file." squid/squid.conf
git checkout master
//other example of use: play with configs
git checkout play
git commit -m "Partially finished experiment." squid/squid.conf
git checkout master
git merge play // when the experiment is working and we want to keep it
observações:
* isto pode ser estendido ao todo /. O git deve funcionar apenas com arquivos binários, veja o capítulo deste [livro] [livro].
* sem configurar setgitperms, git não grava coisas do sistema de arquivos:
– grupos de
arquivos
– proprietários de arquivos – permissões de arquivo (além de “é este executável”)
– atributos estendidos
outras opções podem ser:
bup
rdiff-backup
Fontes:
http://joeyh.name/code/etckeeper/
http://anuradha.sayura.net/2010/01/using-git-to-manage-config-files.html
http://serverfault.com/questions/5410 / using-revision-control-for-server-configuration-files
http://serverfault.com/questions/341199/git-as-a-backup-tool-am-ia-silly-person