rsync -avP /home/user/.profile hpux3:/home/user/.profile
bash: rsync: command not found
Gdybym zrobił ssh na maszynie 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
Mam ustawiony PATH
w $HOME/.profile
i $HOME/.bashrc
. Czy powinienem to ustawić w /etc/profile
pliku?
rsync
Polecenie musi być obecny na lokalnym komputerze.Odpowiedzi:
Twój
.profile
jest czytany tylko wtedy, gdy logujesz się interaktywnie. Gdy rsync łączy się z innym komputerem, aby wykonać polecenie/etc/profile
i~/.profile
nie są odczytywane.Jeśli twoja powłoka logowania to bash,
~/.bashrc
możesz ją odczytać (to dziwactwo bash -~/.bashrc
jest odczytywane przez interaktywne powłoki niezalogowane, a w niektórych przypadkach przez powłoki nieinteraktywne). Nie dotyczy to jednak wszystkich wersji bash.Najprostszym sposobem na uruchomienie rsync jest prawdopodobnie przekazanie
--rsync-path
opcji, npJeśli logujesz się przez SSH przy użyciu uwierzytelniania opartego na kluczach, możesz ustawić
PATH
zmienną środowiskową za pomocą swojego~/.ssh/authorized_keys
. Zobacz pliki startowe sh przez ssh, aby uzyskać wyjaśnienia dotyczące sposobu ładowania.profile
podczas logowania przez SSH za pomocą klucza.źródło
--rsync-path
służy do ustawienia ścieżkirsync
na komputerze zdalnym . (na pierwszy rzut oka zastanawiałem się, jak to było możliwe, aby określić ścieżkęrsync
podczas lauchingrsync
na tej samej maszynie)rsync
gdzieś umieścić plik binarny: musisz także zorganizować jego odnalezienie.