Rsync-Verzeichnisse, die Sudo-Berechtigungen auf dem Remote-Server benötigen

0

Ich habe einen lokalen Server, nennen wir ihn A, der Zugriff auf einen Remote-Server hat.

Ich möchte mit synchronisieren rsync ein Verzeichnis vom Remote-Server zum lokalen, und ich möchte das synchronisierte Verzeichnis in einer angehängten Einheit auf A setzen.

Das Problem ist, dass das entfernte Verzeichnis über eingeschränkte Berechtigungen verfügt, also muss ich das ausführen rsync Befehl in sudo Modus auf dem Remote-Server, aber vom Server A.

Wie kann ich?

ehuarotop
quelle

Antworten:

0

Die Strategie ist einfacher, sich einzuloggen Remoteserver und von dort laufen die rsync Befehl mit Sudo-Berechtigungen.

Ich gehe davon aus, dass Sie auf beiden Rechnern unter Linux arbeiten.
Lass uns anrufen lokaler Benutzer der Benutzername auf der lokaler Server , und Remote-Benutzer der Benutzername auf der Remoteserver .

  • Auf der lokaler Server ist eine externe Einheit im Pfad montiert /media/MyUsb
  • Auf der Remoteserver Es gibt ein Verzeichnis namens /data/DirToSync.
localuser@localserver ~> ssh -X remoteuser@remoteserver

Es sollte Sie das Kennwort für die Remote-Benutzer auf der Remoteserver und Danach wird die Eingabeaufforderung auf dem Remote-Server angezeigt:

remoteuser@remoteserver -> 

Hier können Sie das schreiben rsync Befehl:

sudo rsync  -av /data/DirToSync localuser@localserver:/media/MyUsb

Es fragt vor dem Passwort nach sudo auf dem entfernten Rechner (der von remoteuser @ remoteserver ) und nach dem Passwort des Ziels (das eines localuser @ localserver)

Anmerkungen

  1. Du musst dabei sein die sudoers liste des entfernten Rechners (das bedeutet, dass Sie das Recht zum Ausführen haben müssen) sudo ). Versuche es sudo ls auf dem Remote-Server und geben Sie Ihr Passwort ein, wenn Sie dazu aufgefordert werden. Wenn es ausgeführt wird ls Befehl, Sie sind in dieser Liste. (Es sollte ein wirklich seltener und unsicherer Fall sein, wenn Sie in dieser Liste waren und kein Passwort benötigen. In diesem Fall müssen Sie das Passwort nicht schreiben sudo ).
  2. Es werden Sie nicht nach den Passwörtern gefragt ssh/rsync Verbindungen, wenn Sie generiert und installiert haben die ssh-tasten .
  3. über ssh Sie können sogar das senden sudo Befehl an rsync von dort zum localhost, aber es ist eine etwas komplexere Syntax, siehe hier zum beispiel , und Sie können wegen etwas Probleme bekommen sudo auf einer Version von Linux.
Hastur
quelle