![추가 읽기](https://linux55.com/image/13542/%EC%B6%94%EA%B0%80%20%EC%9D%BD%EA%B8%B0.png)
최근에 문제가 발생했습니다: init 1
입력하는 동안 오류가 발생했습니다: init: must be run as PID 1
. 들어와서 ps
발견했어요/sbin/init
1. 지금은 어떻게 사용할 수 있나요 init
?
답변1
을(를) 사용할 수 없습니다 init
. 해당 작업에 적합한 프로그램이 아닙니다.
init
일반적인 명령으로 호출할 수 있다는 생각은 잊어야 합니다 . init
이 조건이 존재하는 프로그램은 init
귀하가 소유한 프로그램이 아닙니다. 일반 명령으로 호출할 수 있는 프로그램이 4개 있는데 init
하나도 사용하지 않고 있습니다. 대신 init
시스템에서 프로세스 #1이 아닌 다른 것으로 호출된 것을 감지하면 메시지를 인쇄하고 종료하는 BusyBox를 사용하고 있습니다 . 프로세스 #1이 되는 것 외에 다른 기능은 없습니다.
telinit
BusyBox에서는 둘 다 사용할 수 없습니다. init
FIFO 기반 클라이언트/서버 인터페이스가 없습니다 .
종료하려면 궁극적으로 SIGPWR
, SIGUSR1
또는 SIGUSR2
프로세스SIGTERM
#1로 전송되는 작업을 수행해야 합니다. 다른 시스템 관리 도구 세트와 마찬가지로 "단일 사용자 모드"(1995년 이후 잘못된 명칭)는 종료 대상이 아닙니다. 사람들은 이 모델을 꺼리지 않았으며 BusyBox는 init
실제로 이 모델을 공식화하는 데 관여하지 않았습니다.
대조적으로 BusyBox 위에 OpenRC를 사용하는 시스템에서는 init
이 모드가 완전히 OpenRC 메커니즘의 범위 내에 속합니다. openrc single
잘못된 이름의 "단일" 모드로 변경합니다. (OpenRC를 사용하여내 자신의 init
, 당신에게는 그렇지 않습니다. shutdown
대화하라는 명령이 있습니다. 하지만 그건 단지꽤 우회적인 방법openrc single
결과적으로 달리고 있습니다. )
알파인 리눅스가 녹음 중입니다OpenRC는 오래되었습니다. OpenRC 자체에는 더 이상 single
디렉토리 가 없습니다 .이 콘텐츠는 2019년에 삭제되었습니다.. 또한,2014년부터 순서가 바뀌었습니다 rc
.openrc
.