SSH를 사용하고 백그라운드에서 스크립트를 실행하세요.

SSH를 사용하고 백그라운드에서 스크립트를 실행하세요.

각 서버에서 약 20분 정도 걸리는 작업을 실행하고 있습니다. 그러나 모든 서버가 이 작업을 동시에 실행할 수 있습니다. 이것이 내 직업이다:

#cat mylist

server1
server2
...
...

#for i in `mylist`; do ssh root@$i /home/run_command ; done

정상적으로 작동하지만 다음 서버로 이동하려면 먼저 각 서버의 작업을 완료해야 합니다.

추가해 보았습니다&

for i in `mylist`; do ssh root@$i /home/run_command & ; done

아무런 차이가 없습니다. 저와 공유해 주실 수 있는 정보에 감사드립니다.

답변1

다음을 수행하여 ssh백그라운드로 들어갈 수 있습니다.-f

for i in $(cat mylist); do
    ssh -f root@$i /home/run_command
done

Alex Stragies가 지적했듯이 이를 통해 원하는 경우 호스트의 비밀번호를 입력할 수 있지만 목록이 길다면 공개 키 인증을 그 자체로 사용하시기 바랍니다.

관련 정보