그래서 저는 백그라운드에서 실행되는 두 개의 tmux 세션과 백그라운드에서 몇 가지 다른 응용 프로그램이 있는 우분투 서버를 가지고 있습니다. tmux(예: Cntrl C)에서 프로세스를 정상적으로 종료하고 모든 서비스를 종료한 후 재부팅하는 스크립트를 만드는 방법이 있습니까?
내 컴퓨터는 며칠 후에 인터넷 연결이 중단되는 경향이 있으며 시스템이 정상적으로 자동 재부팅되기를 원했습니다. 모든 서비스를 다시 시작하고 재부팅 후 Mux를 다시 시작합니다.
이 컴퓨터를 원활하게 다시 시작하는 방법을 알아내면 됩니다.
도움이 될 수 있는 정보를 알려주세요. 나는 멍청하지만 기본 사항을 이해한다는 점을 명심하십시오.
미리 감사드립니다.
답변1
실제 shutdown
와 그에 상응하는 것~이다우아한. 먼저 프로세스에 SIGTERM(15)을 보내고 특정 시간 동안 응답하지 않는 경우에만 나중에 SIGKILL(9)을 보냅니다.
CTRLSIGTERM은 +를 누를 때 전송되는 신호입니다 C. 애플리케이션은 해당 신호를 가로채서 스스로 정상적으로 종료할 수 있습니다(예: 파일 플러시, 커밋/롤백 트랜잭션 등). 모든 합리적인 응용 프로그램은 이러한 방식으로 작동합니다.
잠시 후에도 프로세스가 중지되지 않으면 나중에 SIGKILL이 전송됩니다. SIGKILL은 일종의 큰 망치입니다. 애플리케이션은 해당 신호를 가로챌 수 없습니다. 이는 전원을 차단하는 것과 같습니다.
그렇습니다. shutdown
or는 reboot
일반적으로 안전하고 우아합니다.
참조: