Rsync

為什麼找不到rsync?

  • May 27, 2021
rsync -avP /home/user/.profile hpux3:/home/user/.profile
bash: rsync: command not found

如果我對 hpux3 機器進行 ssh

rsync  
version 3.1.1  protocol version 31
Copyright (C) 1996-2014 by Andrew Tridgell, Wayne Davison, and others.
Web site: http://rsync.samba.org/
output truncated

我已經設置PATH和。我應該在文件中設置它嗎?$HOME/.profile``$HOME/.bashrc``/etc/profile

只有在您.profile以互動方式登錄時才會讀取您的資訊。當 rsync 連接到另一台機器執行命令時,/etc/profile~/.profile沒有被讀取。

如果您的登錄 shell 是 bash,則~/.bashrc可能會被讀​​取(這是 bash 的一個怪癖——~/.bashrc由非登錄互動式 shell 讀取,在某些情況下由登錄非互動式 shell 讀取)。不過,這並不適用於所有版本的 bash。

使 rsync 工作的最簡單方法可能是傳遞--rsync-path選項,例如

rsync --rsync-path=/home/elbarna/bin/rsync -avP /home/user/.profile hpux3:/home/user/.profile

如果您使用基於密鑰的身份驗證通過 SSH 登錄,則可以PATH通過~/.ssh/authorized_keys. 有關如何在使用密鑰通過 SSH 登錄時安排載入的說明,請參閱通過 ssh 的 sh 啟動文件。.profile

引用自:https://unix.stackexchange.com/questions/198756