백그라운드 프로그램의 수명

백그라운드 프로그램의 수명

& 옵션을 사용하여 터미널에서 백그라운드 프로그램을 시작하는 경우. 터미널을 닫으면 멈추나요?

답변1

당신이끊다터미널. 터미널이 반드시 존재한다는 개념을 가질 필요는 없습니다.닫은.

터미널 포함에뮬레이터 프로그램, 실제로 끊기는 일은 없지만 에뮬레이터 프로그램을 닫으면 에뮬레이트된 터미널 끊기가 트리거됩니다. (보다 엄밀하게 말하면 의사 터미널 장치의 마스터 측을 닫는 것은 슬레이브 측의 터미널 중단으로 간주됩니다.) 모든 에뮬레이터 프로그램에 종료 개념이 있는 것은 아닙니다. 운영 체제 커널에 내장되어 커널의 기능을 제공하는 것가상 터미널예를 들어 "닫을" 수 없습니다.

실제 터미널에는 반송파 감지 회선이 있는 직렬 포트가 있고 원격 터미널의 전화 접속 사용자가 전화 연결을 끊을 경우 발생할 수 있는 실제 모뎀 끊기가 있습니다.

이 모든 것은 사용자에게 사용 요금이 청구되는 원격 터미널이 있는 시분할 시스템 시절로 거슬러 올라갑니다. 실수로 전화 연결이 끊어진 경우, 아마도 다음 시스템이 다시 시작될 때까지 여전히 실행 중인 프로그램에 대해 요금이 청구되는 것을 원하지 않을 것입니다. 반대로 시스템 관리자와 기타 사용자는 프로그램이 계속 실행되고 다른 전화 접속 사용자에게 할당될 수 있는 개념상 무료 터미널에 연결되는 것을 원하지 않았습니다.

그 이후로 많은 것이 바뀌었습니다. 우선, BSD 작업 제어는 끊김 신호 분포에 대한 변화와 중단 신호 개념 도입에 영감을 주었습니다.세션 리더로그인 세션 내의 작업을 담당하며, 해당 작업의 죽음은 해당 작업에 큰 타격을 주는 것으로 간주됩니다. 우리는 인터넷을 통해 원격 로그인을 얻었고,GUI 로그인 세션. 그리고 터미널 에뮬레이터 프로그램이 널리 보급되어 사람들은 이를 터미널과 혼동합니다.에뮬레이션.

그러나 터미널 세션이 종료되면 사용자 프로세스는 일반적으로 세션 리더의 중재를 통해서라도 종료된다는 근본적인 생각이 남아 있습니다.

답변2

방문하다터미널에서 백그라운드로 프로그램 실행또는터미널에서 프로그램을 시작하고 분리하는 가장 효율적인 방법은 무엇입니까?

& 옵션을 사용하여 터미널에서 백그라운드 프로그램을 시작하는 경우. 터미널을 닫으면 멈추나요?

gnome-terminal닫기 버튼을 클릭하여 닫으면 해당 프로그램이 중지/종료될 수 있습니다.하지만터미널을 닫으면exit프로그램보다 명령이 닫히거나 중지되거나 종료되지 않습니다.

답변3

예, 멈출 것입니다. 프로그램이 중지되는 것을 방지하려면 를 사용하십시오 nohup.

예를 들어, 는 nohup firefox > /dev/null 2>&1 &닫지 않고 백그라운드에서 Firefox를 실행할 수 있도록 허용하고 콘솔에 오류/출력이 표시되는 것을 방지합니다.

관련 정보