É uma prática insegura ligar symlink / etc conf?

5

Para gerenciar a configuração de um servidor, eu mantenho algumas configurações (localizadas em / etc) sob controle de versão (na pasta home) e, em seguida, faço links simbólicos para elas a partir de seus locais / etc:

/etc/someprog/c.conf -> /home/ubuntu/etc-config/someprog/c.conf

Esta é uma abordagem razoável? Alguma desvantagem potencial?

    
por Matt Sweeney 04.11.2011 / 20:32

3 respostas

6

Notei que você adiciona git como uma tag - parece que /home/ubuntu/etc-config é um repositório git com todas as suas configurações nele. Nesse caso, parece que você está tentando gerenciar arquivos de configuração a partir de um local central. Se for esse o caso, recomendo vivamente a procura de uma solução real.

Dê uma olhada em algo como fantoche, chef, cfengine ou qualquer um dos principais mecanismos de gerenciamento de configuração existentes. Muitos deles são gratuitos e de código aberto, amplamente utilizados e são geralmente muito fáceis de configurar e gerenciar. Se você está tentando usar um método "leve", provavelmente se arrependerá mais tarde.

    
por 04.11.2011 / 20:46
3

Se estes estiverem em sistemas de arquivos diferentes, então esta é uma idéia muito ruim. Se o outro sistema de arquivos não for montado, você terá problemas.

    
por 04.11.2011 / 20:38
0

Eu não usaria links simbólicos como este. Se você quebrar o link (por qualquer número de razões), você quebrará a configuração. É mais apropriado apontar o servidor / daemon / aplicativo para o local real do arquivo de configuração no script de inicialização.

Se você apenas quiser o controle de versão, veja o RCS. Eu realmente achei git para ser uma solução de configuração do servidor autônomo pobre (sem bloqueio, sem gerenciamento de permissões, o diretório inteiro se torna o repositório). Se você precisar de algo mais robusto para o gerenciamento de configuração, sugiro strongmente dar uma olhada no Puppet, Chef, ou (gasp) CFEngine.

    
por 04.11.2011 / 21:00