Seria bom testar a sintaxe da configuração primeiro.
rsnapshot -c /usr/local/etc/rsnapshot.conf configtest
No meu caso, o problema "O diretório de origem ... não existe" foi resolvido pela remoção de espaços à direita.
Estou tentando configurar um sistema de backup usando o rsnapshot, que copia arquivos de um local remoto para um local. Eu tenho rsnapshot configurado, tanto quanto eu posso ver corretamente, mas quando eu executo o rsnapshot configtest ele diz
'backup web3:backups/ web3/ - Source directory "web3:backups/ " doesn't exist'
A linha de configuração que estou usando é:
backup web3:backups/ web3/
Está usando um alias no arquivo de hosts. No entanto, também tentei usar o endereço IP e definir o nome do usuário no comando, mas nenhum deles funciona (mesmo erro). Eu também verifiquei e o cmd_ssh está ativado e apontando para um arquivo válido.
Alguém sabe o que pode estar causando isso? Está ficando muito frustrante neste ponto, já que consegui fazer com que a maioria dos sistemas de backup funcionem e tenho certeza que já tive esse trabalho antes também. Eu tentei com ssh e rsync, e ambos parecem ver web3: backups como sendo um local de rede válido
Seria bom testar a sintaxe da configuração primeiro.
rsnapshot -c /usr/local/etc/rsnapshot.conf configtest
No meu caso, o problema "O diretório de origem ... não existe" foi resolvido pela remoção de espaços à direita.
Embora os documentos para o rsync digam que ele aceita um argumento host: path e usa o rsh, não consegui encontrar evidências no código para esse suporte.
Antes de emitir a mensagem que você está vendo, ela faz vários testes no argumento de origem:
Parafraseando:
if ( is_real_local_abs_path($src) )
elsif ( is_ssh_path($src) )
elsif ( is_anon_rsync_path($src) )
elsif ( is_cwrsync_path($src) )
elsif ( is_linux_lvm_path($src) )
else print "Source directory $src doesn't exist"
Nenhum desses padrões é seu host: caminho
Se puder, use ssh ou um daemon rsync na web3.
Para outras pessoas que recebem este erro em um sistema de arquivos local, certifique-se de seguir os links simbólicos até o momento em que confirmar que o diretório está realmente lá. Por exemplo, eu estava recebendo este erro para / mydir que apontava para / data / mydir, que existia ... mas era ilegível para o root porque o encfs oculta diretórios montados pelo usuário mesmo do root, sem a opção -o allow_others
.
In addition to full paths on the local filesystem, you can also backup remote systems using rsync over ssh. If you have ssh installed and enabled (via the cmd_ssh parameter), you can specify a path like:
backup [email protected]:/etc/ example.com/
Você precisa prefixar o controle remoto username@
na string, portanto, se você estiver efetuando login como root, o arquivo de configuração precisará ser:
backup root@web3:backups/ web3/
Você possivelmente também precisará usar um caminho absoluto (por exemplo, /root/backups/
em vez de apenas backups/
)
Encontrei o mesmo erro, mas acabou relacionado ao espaço em branco externo.
Eu tive uma quebra de linha entre a primeira instrução de backup e a segunda. Além disso, um espaço estava presente na declaração de backup, em vez de apenas guias.