Eu suspeito que o que você precisa fazer funcionaria assim.
- Pare de executar serviços desnecessários
- Extraia o tar para um local temporário
- Use o rsync com o
-delete
opção e adequada exclui tosync do local temporário onde você extraiu seu backup para a raiz do sistema de arquivos.
- Reinicie, pois você provavelmente terá programas em execução com arquivos excluídos / substituídos ainda abertos.
Como posso ver quais serviços estão em execução e quais são essenciais?
Como você efetivamente quer eliminar tudo, os únicos serviços essenciais são os serviços necessários para acessar remotamente o sistema e acessar qualquer sistema de arquivos. Isso provavelmente inclui o SSH e talvez outros serviços. Para ver o que está sendo executado, basta usar ps, top, pstree ou outras ferramentas como essa.
E quais exclusões você considera "adequadas"?
Tudo depende do que você fez backup e de quais sistemas de arquivos você deseja sobrescrever.
Obviamente, não haveria nenhum valor sobrepondo qualquer um dos sistemas de arquivos temporários como / tmp, / var / tmp e assim por diante. Basicamente, isso significa que você exclui qualquer coisa do tmpfs montado nos dias de hoje.
Você também seria seriamente tornar seu sistema infeliz se você tentou sincronizar sobre-escrever / proc, ou sistemas de arquivos / sys.
Então, minha definição de 'bom' é todos os sistemas de arquivos que você configurou no seu host. Como há muita flexibilidade, você precisará descobrir a configuração correta para o seu próprio sistema.
Você poderia dar um exemplo sobre como usar o rsync com a opção -delete?
Não realmente, seria algo como rsync --dry-run --delete -av /source/ /destination/
.
Eu não lido muito com VPSs e sempre tenho controle local, e quando preciso restaurar um sistema para um estado anterior, sempre inicializo um livecd / pxe, o que torna a restauração muito mais fácil. A reversão para um estado anterior a partir de um sistema em execução exigirá mais exclusões. Eu não sei o que você precisa para o seu sistema, você é provavelmente o melhor de construir um ambiente de teste e brincar com ele.