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

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

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

명령을 실행해야 합니다(서비스 톰캣 시작/중지) 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요청은 명령 서버에서 가져오고 모든 출력 stdoutstderror통과합니다.ssh

관련 정보