1.7. 사용자 지정 단위 파일 생성
처음부터 단위 파일을 만드는 몇 가지 사용 사례가 있습니다. 사용자 지정 데몬을 실행하고 sshd 서비스의 두 번째 인스턴스를 사용하여 사용자 지정 단위 파일 생성에서 로 일부 기존 서비스의 두 번째 인스턴스를만들 수 있습니다.
반면 기존 유닛의 동작을 수정하거나 확장하려는 경우 기존 장치 파일 수정 의 지침을 사용하십시오.
프로세스
-
사용자 지정 서비스를 생성하려면 서비스로 실행 파일을 준비합니다. 파일에는 사용자 정의 생성된 스크립트 또는 소프트웨어 공급자가 제공하는 실행 파일이 포함될 수 있습니다. 필요한 경우 사용자 지정 서비스의 기본 프로세스에 대해 일정한 PID를 보유하도록 PID 파일을 준비합니다. 환경 파일을 포함하여 서비스의 쉘 변수를 저장할 수도 있습니다.
chmod a+x를 실행하여 소스 스크립트가 실행 가능하고 대화형이 아닌지 확인합니다. /etc/systemd/system/디렉터리에 유닛 파일을 만들고 올바른 파일 권한이 있는지 확인합니다.root로 실행 :touch /etc/systemd/system/<name>.service chmod 644 /etc/systemd/system/<name>.service
# touch /etc/systemd/system/<name>.service # chmod 644 /etc/systemd/system/<name>.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow & lt;name >을 생성할 서비스 이름으로 바꿉니다. 파일을 실행할 필요가 없습니다.
생성된 <
;name> .service파일을 열고 서비스 구성 옵션을 추가합니다. 생성하려는 서비스 유형에 따라 다양한 옵션을 사용할 수 있습니다. 단위 파일 구조를 참조하십시오.다음은 네트워크 관련 서비스에 대한 단위 구성의 예입니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
<service_description >은 저널 로그 파일과
systemctl status명령의 출력에 표시되는 정보를 제공합니다. -
After설정을 사용하면 네트워크가 실행된 후에만 서비스가 시작됩니다. 공백으로 구분된 기타 관련 서비스 또는 대상 목록을 추가합니다. - path_to_executable 은 실제 서비스 실행 파일의 경로를 나타냅니다.
-
type=forking은 포크 시스템 호출을 수행하는 데몬에 사용됩니다. 서비스의 기본 프로세스는 path_to_pidfile 에 지정된 PID를 사용하여 생성됩니다. 중요한 [Service] 섹션 옵션에서 다른 시작 유형을 찾습니다. -
WantedBy는 서비스를 시작해야 하는 대상 또는 대상을 지정합니다. 이러한 목표를 이전 수준의 개념을 대체하도록 고려하십시오.
-
<service_description >은 저널 로그 파일과
새 <
name> . service파일이 있음을systemd에 알립니다.systemctl daemon-reload systemctl start <name>.service
# systemctl daemon-reload # systemctl start <name>.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow 주의새 장치 파일을 생성하거나 기존 장치 파일을 수정한 후 항상
systemctl daemon-reload명령을 실행합니다. 그렇지 않으면systemd상태와 실제 서비스 단위 파일의 상태가 일치하지 않아systemctl start또는systemctl enable명령이 실패할 수 있었습니다. 단위가 많은 시스템에서 각 장치의 상태를 직렬화하고 나중에 다시 로드하는 동안 역직렬화해야 하므로 시간이 오래 걸릴 수 있습니다.