Backup de um desktop Linux em um Synology NAS (DS 5.2) usando o backintime

1

Eu estou tentando configurar um backup da minha máquina desktop Linux em um Synology NAS com backintime.

No entanto, estou preso com a seguinte mensagem de erro:

Entfernter Rechner <nas.ip.address> unterstützt 'rsync -rtDH --links --no-p --no-g --no-o  --dry-run --chmod=Du+wx /tmp/tmpAOVRI9 --rsh="ssh -p 22 " "<user>@<nas.ip.address>:/volume2/backup"' nicht:
3072

Tradução:

Remote server <nas.ip.address> does not support 'rsync -rtDH --links --no-p --no-g --no-o  --dry-run --chmod=Du+wx /tmp/tmpAOVRI9 --rsh="ssh -p 22 " "<user>@<nas.ip.address>:/volume2/backup"':
3072

Configuração:

  • Synology NAS: DS214play, executando o DS 5.2-5644
  • Desktop: Linux Mint 17.2
  • backintime: v1.0.34

O que eu fiz até agora:

  • Eu configurei o NAS, para que eu possa fazer o login <user>usando a chave ssh pública do usuário. (Assim, ssh -p 22 <user>@<nas.ip.address>funciona bem.)
  • Eu tenho sshfs funcionando, então sshfs -p 22 -o ServerAliveInterval=240 -o idmap=user <user>@<nas.ip.address>:/ </mountpoint/funciona bem. (No entanto, sshfs -p 22 -o ServerAliveInterval=240 -o idmap=user <user>@<nas.ip.address>:/volume2/backup </mountpoint/falha com <user>@<nas.ip.address>:/volume2/backup: No such file or directory, mesmo que o diretório exista no nas.

Quando eu executar o comando acima em um shell na área de trabalho, recebo a seguinte mensagem de erro (também tentei sem volum2/backupmas o resultado é o mesmo):

rsync -rtDH --links --no-p --no-g --no-o  --dry-run --chmod=Du+wx /tmp/tmpAOVRI9 --rsh="ssh -p 22 " "<user>@<nas.ip.address>:/volume2/backup"
Permission denied, please try again.
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(226) [sender=3.1.0]
Thomas
fonte
Por favor, mova sua pergunta para o Superusuário . É off-topic aqui.
Martin Prikryl

Respostas:

2

Havia um wiki muito bom sobre como configurar um Synology NAS para o BackInTime que eu sempre vinculei. Mas isso se foi (pelo menos não aparece mais, a história ainda está disponível). Então vou adicionar aqui


Questão

BackInTime não pode usar o Synology DSM 5 porque a conexão SSH ao NAS refere-se a um sistema de arquivos raiz diferente do que o SFTP faz. Com o SSH você acessa a raiz real, com o SFTP você acessa uma raiz falsa (/ volume1)

Solução

Monte /volume1/backupspara/volume1/volume1/backups

Como

  • Faça um novo volume chamado volume1(se ainda não existir)
  • Ativar serviço de usuário doméstico (Painel de controle / usuário)
  • Faça um novo compartilhamento chamado backupsemvolume1
  • Fazer uma nova ação chamada volume1na volume1(Deve ser o mesmo nome)
  • Faça um novo usuário chamado backup
  • Conceder aos backupdireitos de usuário leitura / gravação para compartilhar backupse volume1permissão para FTP
  • Ativar SSH (Painel de Controle / Terminal e SNMP / Terminal)
  • Ativar SFTP (Painel de Controle / Serviço de Arquivo / FTP / SFTP)
  • Desde o DSM 5.1: Ativar serviço de backup (backup e replicação / serviço de backup)
  • Faça logon como root pelo SSH
  • Modifique o shell do usuário backup. Defina para/bin/sh
  • Faça um novo diretório /volume1/volume1/backups

    mkdir /volume1/volume1/backups
    
  • Monte /volume1/backupsem/volume1/volume1/backups

    mount -o bind /volume1/backups /volume1/volume1/backups
    
  • Para montar automaticamente, faça um script /usr/syno/etc/rc.d/S99zzMountBind.sh

    #!/bin/sh
    
    start()
    {
           /bin/mount -o bind /volume1/backups /volume1/volume1/backups
    }
    
    stop()
    {
           /bin/umount /volume1/volume1/backups
    }
    
    case "$1" in
           start) start ;;
           stop) stop ;;
           *) ;;
    esac
    
  • Na estação de trabalho em que você tenta usar o BIT, faça as chaves SSH para o usuário backup, envie a chave pública para o NAS

    ssh-keygen -t rsa -f ~/.ssh/backup_id_rsa
    ssh-add ~/.ssh/backup_id_rsa
    ssh-copy-id -i ~/.ssh/backup_id_rsa.pub backup@<synology-ip>
    ssh backup@<synology-ip>
    
  • Agora você pode usar o BackInTime para realizar o backup no seu NAS com o usuário backup.

Isenção de responsabilidade: Sou membro do BIT Dev-Team

Germar
fonte
Também é muito importante verificar se as permissões da pasta base na Synology são 755 (drwxr-xr-x). Caso contrário, o ssh com a chave não funcionará e pedirá a senha. Por padrão, pasta base foi criada com 777 permissões no meu caso (DSM 6.1).
yves
0

Além da solução do Germar, tive que adicionar um sinalizador de rsync personalizado nas configurações do perfil:

  • Vá para "Opções de exportação"
  • Marque "Colar opções adicionais no rsync"
  • Adicione --rsync-path = / path-to-rsync / rsync no campo de texto ao lado

Na minha estação Synology, o rsync está localizado em / bin / rsync.

namnor
fonte