서비스 다시 시작 프로세스를 처리하는 셸 스크립트

서비스 다시 시작 프로세스를 처리하는 셸 스크립트

우리는 제3자가 만든 일부 씬 클라이언트를 지원하기 위해 서버에서 제3자 TTY 서비스를 실행합니다.

경우에 따라 씬 클라이언트에 대한 연결이 잠겨 있을 수 있습니다. 프로세스는 TTY 서비스를 중지하고 연결이 닫힐 때까지 기다린 후 TTY 서비스를 시작하는 것입니다. 또한 CentOS 4.x 서버에서는 다음 명령을 사용합니다.init q

일반적으로 루트에서 수동으로 이 작업을 수행합니다.

service axtty stop

서비스 중단

netstat -d | grep axel

즉, 모든 연결이 닫힐 때까지 netstat 명령을 실행하고 모니터링합니다. 포함된 행이 없습니다 axel.

service axtty start

서비스 시작

이 모든 것을 자동화된 쉘 스크립트(bash)에 요약할 수 있는 방법이 있습니까?

서버는 CentOS 4.x 또는 6.x입니다.

답변1

#!/bin/sh

service axtty stop

while netstat -d | grep -q axel ; do
  sleep 1
done

service axtty start

참고: GNU를 사용하면 1초 또는 기타 부동 소수점 분수를 sleep계산할 수 있습니다 .sleep 0.1

관련 정보