traller
Goto Top

Script per Sudo remote ausführen

Hallo,
ich möchte, dass von lokal über SSH ein Script remote ausgeführt wird, welches sich lokal befindet.
Normalerweise geht das ja mit:
ssh login@remote_host 'bash -s' < Script.sh  
Nur wie mache ich das, wenn Script.sh remote Root rechte braucht ? bspw. über sudo ... Sudo benötigt auf dem Remote kein Passwort!

Content-Key: 252034

Url: https://administrator.de/contentid/252034

Printed on: April 19, 2024 at 17:04 o'clock

Member: evolution
evolution Oct 15, 2014 updated at 21:16:39 (UTC)
Goto Top
Hi, das kommt darauf an, ob der der Account sudo-Rechte auf der Maschine hat. Kannst du in /etc/sudoers prüfen bzw. wenn nicht einfügen.
ssh root@host -t 'sed -i "\$a text to insert" /path/to/file'


Ansonsten sollte es mit der Option -t funktionieren.. $ ssh user@host -t 'bash -s' < Script.sh

Alternativ schau dir mal das an: http://code.google.com/p/sshsudo/
Member: traller
traller Oct 15, 2014 at 21:40:40 (UTC)
Goto Top
Zitat von @evolution:

Hi, das kommt darauf an, ob der der Account sudo-Rechte auf der Maschine hat. Kannst du in /etc/sudoers prüfen bzw. wenn
nicht einfügen.
ssh root@host -t 'sed -i "\$a text to insert" /path/to/file'


Ansonsten sollte es mit der Option -t funktionieren.. $ ssh user@host -t 'bash -s' < Script.sh

Alternativ schau dir mal das an: http://code.google.com/p/sshsudo/

der hat sudo. Ich nutze die ganze Zeit bei dem Remote sudo -s über Putty und hab es extra eingestellt, das kein Passwort verlangt wird. Danke, hoffe mal das es funktioniert. Komme erst morgen zum testen.
Member: traller
traller Oct 16, 2014 at 11:49:41 (UTC)
Goto Top
Hallo,
wie beende ich eine SSH-Verbindung, wo ich den Server zuvor in den Standby geschickt habe??
Ich schicke im Script den Server mit
ssh server@IP -i /home/user/.ssh/id_rsa 'sudo pm-suspend'  
in den Standby. Das Script würde sich natürlich nicht selbst beenden, da das bei der SSH-Verbindung stehen bleibt. Wie kann ich das weiter laufen lassen? Etwa SSH über kill beenden??