Shell-Script
rsync bash腳本“無法統計”
我正在編寫一個 bash 腳本,以通過 LAN 上的 ssh 從一台機器同步到另一台機器。它給了我一個 link_stat 錯誤,並引用了一個我完全不確定來源的目錄。
這個錯誤提示什麼,這個路徑在腳本中來自哪裡?
備份文件夾的位置是 /home/user/rsynctest/
#!/bin/bash rsync -av ssh ../Backup/ 192.168.100.120:/media/storage1/Backup
錯誤…
sending incremental file list rsync: link_stat "/home/user/rsynctest/Backup/ssh" failed: No such file or directory (2) sent 270 bytes received 16 bytes 572.00 bytes/sec total size is 23 speedup is 0.08 rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1183) [sender=3.1.1]
您無需告訴
rsync
使用 ssh。給定遠端路徑時,它將預設使用它。命令行上的“ssh”被解釋為要複製的另一個文件路徑。由於 rsync 程序找不到該名稱的文件,因此它會抱怨(然後繼續並複制給定的下一個路徑)。所以改變
rsync -av ssh ../Backup/ 192.168.100.120:/media/storage1/Backup
到
rsync -av ../Backup/ 192.168.100.120:/media/storage1/Backup
嘗試使用以下,
rsync -av ../Backup/ -e ssh 192.168.100.120:/media/storage1/Backup
或者
rsync -ave ssh ../Backup/ 192.168.100.120:/media/storage1/Backup
不工作的原因:
當您要使用
ssh
傳輸文件時,您必須使用-e
標誌。從手冊頁,-e, –rsh=COMMAND 指定要使用的遠端shell
在這裡,
-e ssh
您指定要通過ssh stream
. 如果您想了解更多ssh
rsync 的工作原理,請查看以下 URL,