Ändern Sie den Benutzer nach der Anmeldung bei einem anderen Server in sudo (root).

Ändern Sie den Benutzer nach der Anmeldung bei einem anderen Server in sudo (root).

ich habe 2 Server (Linux 2.6.32-696.el6.x86_64), vermutlich fe1 und fe2.

ich muss einen Befehl ausführen (Dienst Tomcat starten/stoppen) auf fe2 von fe1, aber es erfordertsudo als Root. Befehl, den ich verwende fürsudo root istsudo su

#!/bin/sh
host=fe2
user=`whoami`
sftp $user@fe2 << EOF
sudo su
service tomcat stop
bye
EOF

kann man das auch anders machen?

Antwort1

Sie können jeden Befehl über SSH von fe1 an fe2 wie folgt senden

ssh whoami@fe2 'sudo service tomcat start'

sshWenn Sie mehrere Befehle von einem Server auf einen anderen übertragen möchten, geben Sie ;innerhalb des Servers ' 'Folgendes ein:

ssh whoami@fe2 'sudo -s; service tomcat start; service tomcat status; other_commands; '

sshführt sie alle in der von Ihnen angegebenen Reihenfolge aus. Alle stdinAnfragen werden vom Befehlsserver entgegengenommen und alle Ausgaben an stdoutoder stderrorwerden ebenfalls übertragen überssh

verwandte Informationen