web-dev-qa-db-ja.com

SynologyでのLinuxデスクトップのバックアップNAS(DS 5.2)バックインタイムを使用

LinuxデスクトップマシンのバックアップをSynology NAS withbackintimeでセットアップしようとしています。

ただし、次のエラーメッセージが表示されます。

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

翻訳:

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

セットアップ:

  • Synology NAS:DS214play、実行中DS 5.2-5644
  • デスクトップ:Linux Mint 17.2
  • バックインタイム:v1.0.34

私がこれまでにしたこと:

  • NASをセットアップしたので、ユーザーの公開sshキーを使用して<user>としてログインできます。 (したがって、ssh -p 22 <user>@<nas.ip.address>は正常に機能します。)
  • Sshfsが機能するようになったので、sshfs -p 22 -o ServerAliveInterval=240 -o idmap=user <user>@<nas.ip.address>:/ </mountpoint/は正常に機能します。 (ただし、ディレクトリがNASに存在していても、sshfs -p 22 -o ServerAliveInterval=240 -o idmap=user <user>@<nas.ip.address>:/volume2/backup </mountpoint/<user>@<nas.ip.address>:/volume2/backup: No such file or directoryで失敗します。

デスクトップのシェルで上記のコマンドを実行すると、次のエラーメッセージが表示されます(volum2/backupなしでも試しましたが、結果は同じです)。

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]
1
Thomas

非常に優れたwiki Synologyの設定についてNAS私がいつもリンクしていたBackInTime用)がありましたが、それはなくなりました(少なくとも、もう表示されません、履歴はまだ利用可能です)ので、ここに追加します


問題

NASはSFTPとは異なるルートファイルシステムを参照しているため、BackInTimeはSynology DSM 5を使用できません。SSHでは実際のルートにアクセスし、SFTPでは偽のルートにアクセスします(/ボリューム1)

解決

/volume1/backups/volume1/volume1/backupsにマウントします

方法

  • volume1という名前の新しいボリュームを作成します(まだ存在しない場合)
  • ユーザーホームサービスを有効にする(コントロールパネル/ユーザー)
  • volume1backupsという名前の新しい共有を作成します
  • volume1volume1という名前の新しい共有を作成します(同じ名前である必要があります)
  • backupという名前の新しいユーザーを作成します
  • ユーザーにbackup権限を共有するための読み取り/書き込みbackupsvolume1、FTPのアクセス許可を与える
  • SSHを有効にする(コントロールパネル/ターミナルとSNMP /ターミナル)
  • SFTPを有効にする(コントロールパネル/ファイルサービス/ FTP/SFTP)
  • DSM 5.1以降:バックアップサービスを有効にする(バックアップとレプリケーション/バックアップサービス)
  • SSHでrootとしてログオンします
  • ユーザーbackupのシェルを変更します。 /bin/shに設定します
  • 新しいディレクトリを作成します/volume1/volume1/backups

    mkdir /volume1/volume1/backups
    
  • /volume1/backups/volume1/volume1/backupsにマウントします

    mount -o bind /volume1/backups /volume1/volume1/backups
    
  • 自動マウントするには、スクリプトを作成します/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
    
  • BITを使用しようとしているワークステーションで、ユーザーbackupのSSHキーを作成し、公開キーを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>
    
  • これで、BackInTimeを使用して、ユーザーbackupでNASにバックアップを実行できます。

免責事項:私はBITDev-Teamのメンバーです

2
Germar

Germarのソリューションに加えて、プロファイル設定にカスタムrsyncフラグを追加する必要がありました。

  • 「エクスポートオプション」に移動します
  • 「追加オプションをrsyncに貼り付ける」にチェックを入れます
  • 横のテキストフィールドに--rsync-path =/path-to-rsync/rsyncを追加します

Synologyステーションでは、rsyncは/ bin/rsyncにあります。

0
namnor