Linux
sshpass 執行命令失敗:沒有這樣的文件或目錄
我正在嘗試使用 sshpass 在虛擬機之間複製文件。但是,當我執行命令時:
sshpass -p 'password' rsync --rsync-path="sudo rsync" "/home/myuser/anaconda/Anaconda2-4.3.0-Linux-x86_64.sh" "user2@destination.vm":/opt
我得到輸出:
sshpass: Failed to run command: No such file or directory
我可以使用 user2 及其密碼 ssh 到 destination.vm。
我知道 sshpass 安裝在 /usr/bin/sshpass 並且在路徑上。
我仔細檢查了要從中複製和存在的文件夾。我還通過編輯 sudoers 文件成功設置了無密碼 sudo。
我對如何進行故障排除有點茫然。你有什麼建議嗎?為了能夠執行 sshpass,我還需要做些什麼嗎?
編輯:
感謝您的回复!我已按照建議在destination.vm 上安裝了rsync,並使用以下命令對其進行了測試:
rsync -v -e ssh test.txt localhost:~
但是,當我嘗試使用 sshpass 時,我仍然看到相同的消息。我已經在另一個系統上成功使用了這個命令,但我不確定這個阻止命令工作的不同之處。
在destination.vm 上安裝rsync
我有同樣的問題。通過從 .bashrc 中刪除環境變數並將它們直接添加到腳本中解決了該問題。