O Maverick143 forneceu uma resposta, mas essa pergunta realmente não pertence ao StackOverflow, pois tem pouco a ver com a programação. SuperUser.com teria sido mais relevante.
Nota: O texto acima solicitará a senha da conta de usuário no host remoto e copiará a chave pública automaticamente no local apropriado. Se o ssh-copy-id não funcionar, use o método discutido anteriormente para configurar a senha do ssh menos o login.
4. Execute o rsync sobre ssh sem senha
Agora, você deve poder ssh no host remoto sem inserir a senha.
Todas essas sugestões de rsync estão falhando ao usar a versão mais recente em agosto de 2017 no Ubuntu 16.04 LTS. Nenhum deles funciona.
Todos também compartilham a deficiência de exigir um daemon rsync em execução no servidor de arquivos.
Esta resposta funciona com um NAS Linux genérico
AQUI ESTÃO ETAPAS:
1) USE rsync como mostrado abaixo. (para um diretório em / mnt ou / media que você criou ou em um dispositivo que você monta. não importa qual) 2) TRANSFERIR arquivos COM scp, como mostrado abaixo. O FileZilla também funcionará.
Tudo isso (exceto o FileZilla) pode funcionar no cron sem uma senha.
Essa configuração funciona muito bem. A única vez que você precisa da senha é quando configura o ssh-copy-id inicial para configurar os logins sem senha do RSA. Então você o programa no FileZilla uma vez. Depois disso, dia após dia, nenhuma solicitação de senha acontece. Isso é facil. E a melhor parte é que você pode usar todos os benefícios do programa rsync.
Esta resposta explica como usar o rsync em si sem uma senha.
Além disso, não há necessidade de instalar outro daemon (rsync) em nenhum dos sistemas.
Como tenho um segundo disco rígido, uso o rsync para copiar a unidade de inicialização para um subdiretório no sdb1 (montado em / mnt e excluído do rsync).
Se você não possui um disco rígido físico e possui espaço suficiente, basta criar um subdiretório em / mnt (ou / media) e usá-lo.
Desde que o diretório seja excluído, não importa se ele está em uma unidade separada ou não.
Aqui está o script de backup:
cls
echo "EMPTYING TRASH"
rm ~/.local.share/Trash/*
echo "====================================================================="
echo " BEGINNING rsync from root to /mnt/full/sysbkp"
echo "====================================================================="
time sudo rsync -aAXv / --delete --ignore-errors --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /mnt/full/mysystem
APÓS o rsync, use um script:
Eu sempre crio um novo diretório no servidor NAS de destino: / mnt / fullsys / mysystem, para que apenas os arquivos relevantes sejam transferidos.
A alternativa é usar o FileZilla para enviar o servidor NAS manualmente.
Como pode haver exclusões, eu sempre make a new directory and enter itvia FileZilla no disco rígido de 1 TB de destino, para que apenas os arquivos relevantes sejam transferidos.
Somente quando a transferência termina, removo a versão mais antiga.
Embora isso possa responder à pergunta, seria uma resposta melhor se você pudesse fornecer alguma explicação para isso.
DavidPostill
Também a sintaxe. Eu acredito que isso é usado como uma substituição de comando, algo como isto: rsync -aAVx $(ssh-copy-id -i /home/myusername/.ssh/id_rsa.pub)então todos os excludese --deleteetc. Eu ainda não o fiz funcionar, mas este é o mais próximo que eu já vi. Supostamente, você deve fazer isso, mesmo que já possa sshe scppara o servidor de destino, e o daemon rsync precisa estar em execução porque não usa o formato sftp normal. Eu ainda estou procurando.
Respostas:
Abaixo está o artigo de The Geek Stuff :
fonte
Gere a chave pública no ServerA
A chave pública será gerada e armazenada em
Copiar chave pública para host remoto
Ou
~/.ssh/authorized_keys
. Crie o arquivo se não existir. Verifique se o modo de arquivo é 700.fonte
Todas essas sugestões de rsync estão falhando ao usar a versão mais recente em agosto de 2017 no Ubuntu 16.04 LTS. Nenhum deles funciona.
Todos também compartilham a deficiência de exigir um daemon rsync em execução no servidor de arquivos.
Esta resposta funciona com um NAS Linux genérico
AQUI ESTÃO ETAPAS:
1) USE rsync como mostrado abaixo. (para um diretório em / mnt ou / media que você criou ou em um dispositivo que você monta. não importa qual) 2) TRANSFERIR arquivos COM scp, como mostrado abaixo. O FileZilla também funcionará.
Tudo isso (exceto o FileZilla) pode funcionar no cron sem uma senha.
Essa configuração funciona muito bem. A única vez que você precisa da senha é quando configura o ssh-copy-id inicial para configurar os logins sem senha do RSA. Então você o programa no FileZilla uma vez. Depois disso, dia após dia, nenhuma solicitação de senha acontece. Isso é facil. E a melhor parte é que você pode usar todos os benefícios do programa rsync.
Esta resposta explica como usar o rsync em si sem uma senha.
Além disso, não há necessidade de instalar outro daemon (rsync) em nenhum dos sistemas.
Se você ainda não o fez, faça o seguinte:
e teste com isso:
e talvez algo como isto:
Como tenho um segundo disco rígido, uso o rsync para copiar a unidade de inicialização para um subdiretório no sdb1 (montado em / mnt e excluído do rsync).
Se você não possui um disco rígido físico e possui espaço suficiente, basta criar um subdiretório em / mnt (ou / media) e usá-lo.
Desde que o diretório seja excluído, não importa se ele está em uma unidade separada ou não.
Aqui está o script de backup:
APÓS o rsync, use um script:
Voila! Demora um pouco, mas depois está pronto.
Ambos os scripts podem funcionar bem no cron.
A alternativa é usar o FileZilla para enviar o servidor NAS manualmente.
Somente quando a transferência termina, removo a versão mais antiga.
Voila. Sucesso.
fonte
marcar o endereço do usuário seria melhor
fonte
rsync -aAVx $(ssh-copy-id -i /home/myusername/.ssh/id_rsa.pub)
então todos osexcludes
e--delete
etc. Eu ainda não o fiz funcionar, mas este é o mais próximo que eu já vi. Supostamente, você deve fazer isso, mesmo que já possassh
escp
para o servidor de destino, e o daemon rsync precisa estar em execução porque não usa o formato sftp normal. Eu ainda estou procurando.