Existem muito poucos arquivos que devem ser absolutamente diferentes entre duas máquinas e precisam ser regenerados quando clonagem :
- O nome do host
/etc/hostname
. - As chaves do host SSH:
/etc/ssh_host_*_key*
ou/etc/ssh/ssh_host_*_key*
ou local semelhante. - A semente aleatória:
/var/lib/urandom/random-seed
ou/var/lib/random-seed
ou localização semelhante. (/var/lib/systemd/random-seed
em sistemas usando systemd)
Qualquer outra coisa poderia ser idêntica se você tiver várias máquinas idênticas.
Alguns arquivos são normalmente diferentes em máquinas com hardware diferente:
-
Os arquivos de configuração
/etc/fstab
,/etc/crypttab
,/etc/mdadm.conf
e bootloader (se localizados em/etc
- algumas distribuições os colocam em/boot
) se os discos forem particionados de forma diferente. -
/etc/X11/xorg.conf
, se presente, se as máquinas tiverem placas gráficas diferentes. - Módulos para carregar ou colocar na lista negra em
/etc/modules
,/etc/modprobe.conf
,/etc/modprobe.d/
e/etc/modutils/
.
Além disso, algumas configurações de rede podem precisar mudar, em particular:
- Se você tiver endereços IP estáticos, eles precisam ser diversificados por máquina. A localização da configuração de IP varia entre a distribuição (por exemplo,
/etc/network/interfaces
no Debian,/etc/sysconfig/network
no Red Hat). -
/etc/hosts
geralmente contém o nome do host. - A configuração de email geralmente contém o nome do host: verifique
/etc/mailname
.
Não há uma resposta geral para "quais são os arquivos na pasta /etc
(…) que são exclusivos para cada computador", porque o objetivo completo de /etc
é armazenar arquivos que podem ser personalizados em cada computador. Por exemplo, se você tiver contas diferentes em máquinas diferentes, obviamente não poderá compartilhar o banco de dados da conta - e se quiser poder compartilhar o banco de dados da conta, você acabará com as mesmas contas.
/etc
por padrão, a menos que você tenha um conjunto de máquinas com a mesma configuração de software - mesmo software instalado, mesmas contas etc. Se você compartilhar /etc
, você precisa colocar alguns arquivos na lista negra como indicado acima.
Se você tiver computadores com configurações diferentes, inclua na lista de permissões o que você sincroniza. Trate arquivos em /etc
como distintos em máquinas diferentes, como arquivos em /var
. Sincronize apenas os que você decidiu aplicar em todos os lugares.
Uma maneira possível de gerenciar a sincronização é manter os arquivos específicos da máquina em um diretório diferente, por exemplo, /local/etc
e crie links simbólicos como /etc/fstab -> ../local/etc/fstab
. Isso ainda requer um conjunto de máquinas bastante homogêneo em termos de software, já que diferentes distribuições colocam arquivos em locais diferentes. Ou, inversamente, mantenha apenas os arquivos específicos da máquina em /etc
e todos os arquivos genéricos em outro lugar - mas as distribuições típicas não acomodam bem isso.
Você obviamente não pode fazer um teste ao vivo da restauração da configuração do sistema de um sistema em um sistema diferente. Para testar a restauração de seus backups, inicie uma máquina virtual que emula a configuração de hardware suficientemente bem (em particular, com um layout de disco similar).