rsync -avP /home/user/.profile hpux3:/home/user/.profile
bash: rsync: command not found
Если бы я сделал SSH к машине hpux3
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
файле?
rsync
должна присутствовать на вашем локальном компьютере.Ответы:
Ваш
.profile
читается только когда вы входите в систему в интерактивном режиме. Когда rsync подключается к другому компьютеру для выполнения команды,/etc/profile
а~/.profile
не для чтения.Если ваша оболочка входа в систему bash, то
~/.bashrc
может быть прочитана (это причуда bash -~/.bashrc
читается неинтерактивными оболочками, не входящими в систему, а в некоторых случаях неинтерактивными оболочками при входе). Это относится не ко всем версиям bash.Самый простой способ заставить Rsync работать, это, вероятно, передать
--rsync-path
параметр, напримерЕсли вы входите через SSH с аутентификацией на основе ключей, вы можете установить
PATH
переменную среды через ваш~/.ssh/authorized_keys
. Посмотрите файлы запуска sh через ssh для объяснения того, как организовать загрузку.profile
при входе через SSH с ключом.источник
--rsync-path
используется для установки путиrsync
на удаленном компьютере. (с первого взгляда мне было интересно, как можно было указать путьrsync
при запускеrsync
на той же машине)rsync
куда-нибудь двоичный файл: вам также нужно организовать его поиск.