Como criar uma imagem de um sistema Live sobre o ssh?

4

Eu tenho uma pergunta sobre um servidor FreeBSD que não posso acessar no momento. Mas como gostaríamos de experimentar algumas coisas novas, queremos criar um backup desse sistema primeiro.

A pergunta é: existe alguma possibilidade de criar uma imagem de disco sobre o ssh de todo o disco do servidor que é atualmente um sistema ativo?

Se houver: gostaria de saber como fazer isso.

    
por rfverbruggen 08.01.2013 / 23:10

3 respostas

4

Não é realmente possível no Linux. A razão pela qual está no Windows é a Cópia de Sombra de Volume.

Se o seu sistema usa o LVM, você pode tirar um instantâneo e, em seguida, rsync para uma cópia atômica dos arquivos, você precisaria restaurar partições / gerenciador de inicialização, no entanto.

O método mais fácil, se necessário, é usar dd para copiá-lo:

dd if=/dev/sda | ssh user@remotehost 'dd of=/path/to/output'

E, para ter 100% de certeza de que seus arquivos estão ok, rsync do que está sendo executado para a unidade em que você dd da imagem foi montada. (Eu saltei rsync ing as diferenças centenas de vezes sem efeitos nocivos, mas isso é somente no acesso de servidor strongmente baseado em leitura)

    
por 09.01.2013 / 05:24
3

Use dump (8) para criar um instantâneo do sistema (arquivo).

dump -0aLf /path/to/dumpfile /

Isso criará um dump ao vivo do sistema de arquivos raiz e salvará em / path / to / dumpfile. Esse despejo pode ser transferido por ssh para outro computador. Ou você pode fazer isso de uma só vez pelo uso disso.

dump -0aLf - | ssh my.backup.server dd of=/path/on/my/server/dumpfile

Isso pode ser restaurado mais tarde com o seguinte:

cd /where/I/should/restore e restore -xf /path/to/dumpfile

Aplicativos como bancos de dados terão que ser tratados separadamente. Com um banco de dados MySQL, por exemplo, você tem o mysqldump para criar um arquivo de texto de comandos sql que podem ser executados em outro servidor MySQL para serem importados para lá. Outros bancos de dados têm métodos semelhantes.

    
por 29.01.2013 / 14:36
0

se houver apenas um root-fs para copiar simplesmente em sua máquina de destino, use algo como:

rsync --numeric-ids --delete -vax source_machine:/ /target_dir

duas ou mais vezes. A segunda execução já reutiliza as entradas em cache da primeira execução, é muito rápida e fornece quase um instantâneo real com algumas restrições. Você pode assistir a 'atomicness' simplesmente repetindo o 'rsync' uma quantidade arbitrária de vezes. Existem, na maioria, muito poucos arquivos (arquivos de log e outros) que realmente mudaram entre as iterações (e, portanto, precisam ser copiados / excluídos).

    
por 29.01.2013 / 16:42