Você pode usar o rsync se as duas instalações forem realmente idênticas, como em: nenhum uids é diferente e você não planeja nunca criar usuários exclusivos para o servidor de backup (note que isso implica não instalar software que precisa de seu próprio uid). Não é a solução recomendada na maioria das vezes (isso seria NIS ou LDAP), mas deve funcionar.
Uma solução um pouco mais flexível seria usar um script que copie as informações por usuário (passwd, grupos, sombra) somente quando necessário (o usuário é novo ou foi modificado). Você pode fazer isso com um script de shell com a ajuda de diff ou usando algo como perl ou python. Deixe-me saber se você está interessado nesta solução e precisar de ajuda. Dessa forma, você também pode facilmente evitar a necessidade de compartilhar contas do sistema (incluindo o root) entre sistemas, o que pode não ser apropriado.
Tem certeza de que seus daemons de ftp e mail usam exclusivamente os usuários do sistema? Às vezes, eles usam seus próprios bancos de dados de usuários.
EDITAR:
No servidor principal (esse fragmento vem de uma resposta a Sincronização unidirecional simples da lista de senhas de usuários entre servidores ):
awk -F: '($3>=500) && ($3!=65534)' /etc/passwd > passwd.prod
awk -F: '($3>=500) && ($3!=65534)' /etc/group > group.prod
awk -F: '($3>=500) && ($3!=65534) {print $1}' /etc/passwd | grep -f - /etc/shadow > shadow.prod
Em seguida, transfira os arquivos * .prod para o servidor de backup (suponho que você já tenha uma autenticação de chave pública) e faça o seguinte:
awk -F: '($3<500)' /etc/passwd > passwd.new &&
cat passwd.prod >> passwd.new &&
cppw passwd.new
awk -F: '($3<500)' /etc/group > group.new &&
cat group.prod >> group.new &&
cpgr passwd.new
awk -F: '($3<500) {print $1}' /etc/passwd | grep -f - /etc/shadow > shadow.new &&
cat shadow.prod >> shadow.new &&
cppw -s shadow.new
Isso deve manter as contas do sistema inalteradas no servidor de backup, mas substituir as informações regulares do usuário em cada execução. Você poderia fazer isso de forma mais eficiente (procurando por contas de usuário alteradas e, em seguida, alterando apenas as linhas com sed), mas dessa forma é mais fácil usar cppw e cpgr, que usam o bloqueio. NOTA: se você usar isso, por favor comente as linhas cppw e cpgr primeiro, assim você pode verificar os arquivos * .new.