새로운 시스템 서비스에서 대상을 구성하는 방법

새로운 시스템 서비스에서 대상을 구성하는 방법

systemd에서 사용할 새 서비스 파일을 구성해야 합니다. after아래 예와 같이 동일한 줄에 여러 대상을 넣을 수 있는지, 아니면 각 런레벨에 대한 서비스를 생성해야 하는지 알고 싶습니다.

예:

[Unit]
Description=New service 
After= runlevel2.target runlevel3.target runlevel4.target runlevel5.target

구분 기호가 필요한지 모르겠습니다.

이전 서비스에는 다음과 같은 chkconfig가 있었습니다.

chkconfig: 2345 91 11

답변1

해당 행 은 3개의 위치 인수(시작할 런레벨 목록, 시작 및 중지 우선순위)를 취하는 chkconfig에 대한 인수입니다. 따라서 이것은 상호 교환 가능한 목록이 아닙니다.update-rc.d

Systemd는 런레벨을 사용하지 않으므로 systemd 서비스로 변환할 때 정확하게 매핑하기가 어렵습니다. 다행스럽게도 거의 모든 사람이 2345또는 345런레벨 구성을 사용하고 있으며 이에 대한 직접적인 번역이 존재합니다.

  • 기본 구성의 런레벨 2-5는 다중 사용자 런레벨(즉, 사용자가 로그인할 수 있음)이므로 이는 multi-user.target.

  • 기본적으로 런레벨 2와 3이 다른 배포판에서는 런레벨 3이 X 서버를 시작하지만 런레벨 2는 X 서버를 시작하지 않습니다. 345드물게 나타나는 경우 graphical.target.

그런 다음 대상은 라인에서 참조됩니다 WantedBy=(예: ) WantedBy=multi-user.target.

관련 정보