Hoje em dia, quando quero fazer backup do meu servidor, entro nele e depois executo o comando abaixo que tarsa o diretório local "/ebs1" e o envia para outro servidor no IP xxx.xxx.xxx.xxx e salva em esse servidor de backup com o nome "/ebs1_2019-06-02.tar".
tar -cvf - "/ebs1" | ssh -p 22 root@xxx.xxx.xxx.xxx "cat > /ebs1_2019-06-02.tar"
Funciona muito bem. Mas você percebeu que estou logado no servidor que está sendo feito o backup para executar o comando acima? Mas e se eu quiser estar logado no servidor de backup, como altero o comando acima?
Deste jeito:
Isso não funciona bem se o diretório do backup contiver espaço ou qualquer caractere especial; nesse caso, você precisa usar um comando como este:
...e isso pode se tornar inconveniente rapidamente. Você pode querer escrever um script no computador de destino contendo o
tar
comando e executá-lo viassh
, para não precisar escapar de tudo na linha de comando.Se o nome do diretório não contiver nenhum caractere especial, no entanto, o primeiro comando deve conter.