Mając wątpliwości, że rsync nie ustawia UID i GID jak oczekiwano , moje przeczucie jest to, że rsync
powinny być prowadzone jak root
na komputerze docelowym.
Nie mogę zalogować się root
przez SSH, ponieważ jest to wyłączone ze względów bezpieczeństwa. Użytkownik na komputerze docelowym może korzystać sudo
.
Czy można używać rsync
z sudo
?
permissions
rsync
Thomas Weller
źródło
źródło
-e="ssh -i $PRIVATE_KEY_PATH" --rsync-path="sudo rsync"
/etc/sudoers
znajduje się na końcu pliku (lub po regułach grupowych, które mogą mieć wpływ na tego samego użytkownika) rozwiązało problem.<username> ALL=NOPASSWD:<path to rsync> <args>
ale nie wiem, jakie byłyby argumenty, gdy byłyby wywoływane w ten sposób zdalnie. Jakieś pomysły?Możesz poprosić zdalnego sudo o podanie hasła za pomocą X-Windows. Oto sposób, aby to zrobić:
ssh-askpass
jest zainstalowany na zdalnym hoście (i oczywiście używasz X-Windows)/etc/sudo.conf
:Dodaj te opcje do rsync:
-e "ssh -X" --rsync-path="sudo -A rsync"
ssh -X
przekaże informacje o X-Windowsie i port do sesji zdalnejsudo -A
sprawi, że sudo użyje ssh-askpass, aby poprosić cię o hasłoźródło
Moim rozwiązaniem jest użycie
--rsync-path="sudo rsync"
, jeśli poprosisz o hasło, możesz użyć obejścia takiego:Ale umieszczenie hasła w wierszu polecenia nie jest bezpieczne.
źródło