Synology NAS にログインしていますが、サーバーから NAS へ、またはその逆の rsync は実行できますが、ソースと宛先の両方が DiskStation 上にある場合は rsync を使用できません。
midnight my_user /tmp> rsync -Pauvvv synoproxy.conf del.del
sending incremental file list
[sender] make_file(synoproxy.conf,*,0)
send_file_list done
send_files starting
server_recv(2) starting pid=15513
ERROR: module is read only
rsync error: syntax or usage error (code 1) at main.c(1034) [Receiver=3.0.8]
[Receiver] _exit_cleanup(code=1, file=main.c, line=1034): about to call exit(1)
rsync error: rsync service is no running (code 43) at io.c(653) [sender=3.0.8]
[sender] _exit_cleanup(code=43, file=io.c, line=653): about to call exit(43)
midnight my_user /tmp>
私が提供した構文でモジュールの問題が発生する理由がわかりません。なぜエラーが発生するのでしょうか?
答え1
/volume1/homes/username/... のような絶対ディレクトリを使用する必要があるようです。
答え2
このスレッドを再度読んでみると、Synology NAS の最新バージョンで同じ問題が発生していることがわかりました。Synology は rsync デーモンを実行しているため、構文が通常のパスと同じではないようです。
まず、
nmap -p 873 --script rsync-list-modules <NAS_IP>
rsync デーモンが認識している rsync モジュールのリストを取得します。私の理解では、名前は NAS のルート フォルダーの名前です。
その代わりに
rsync /path/to/src user@IP:/path/to/dst
使用
rsync /path/to/src user@IP::modulename/path/in/module
権限の問題もあるかもしれませんが、少なくともそれが問題の一部であると思います。
答え3
続くhttps://serverfault.com/a/454876/589058Synology サーバーでこの問題を解決するために私が行ったことは次のとおりです。
1) download rsync-x86 from https://github.com/JBBgameich/rsync-static/releases;
2) scp /path/to/local/rsync-x86 my_server:/tmp/;
3) ssh my_server;
4) chmod +x /tmp/rsync-x86;
5) exit;
6) rsync -avzPh --rsync-path=/tmp/rsync-x86 source dest;
答え4
私が読んだところによるとSynologyフォーラムのスレッドファームウェアとNASデバイスを更新して問題が解決するかどうかを確認してください。この郵便受けは興味深い。