다른 서버에 로그인한 후 사용자를 sudo(root)로 변경

다른 서버에 로그인한 후 사용자를 sudo(root)로 변경

나는 fe1과 fe2를 가정하여 2개의 서버(Linux 2.6.32-696.el6.x86_64)를 가지고 있습니다.

명령을 실행해야 해요(서비스 Tomcat 시작/중지) fe1의 fe2에 있지만 필요합니다.루트로 sudo. 내가 사용하는 명령sudo 루트는sudo su

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

다른 방법으로 할 수 있나요?

답변1

다음과 같이 ssh를 통해 fe1에서 fe2로 명령을 보낼 수 있습니다.

ssh whoami@fe2 'sudo service tomcat start'

다음과 같이 내부를 ssh사용하여 하나의 서버에서 다른 별도의 명령으로 여러 명령을 실행하려는 경우;' '

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

ssh언급한 순서대로 모두 실행됩니다. 모든 stdin요청은 명령 서버에서 가져오고 모든 출력은 stdout서버를 stderror통해 전송됩니다.ssh

관련 정보