멍청해서 기록한다
리눅스 service 설정 본문
반응형
/etc/systemd/system/testtomcat.service 파일에 위와 같이 작성하였습니다.
systemd의 서비스등록은 위와 같은 서비스파일을 만들어 안에 작성하며 Unit, Service, Install 세션으로 나눠집니다.
각 세션 마다 사용하는 옵션이 있으며 위의 사진에서 사용되는 옵션에 대해 알아보겠습니다.
[Unit] 옵션
Description= | 작성하는 유닛의 설명 및 용도나 내용을 작성합니다 |
Before= , After= | 유닛 시작 시 전/후 유닛이 시작됩니다. Requires= 옵션을 같이 사용할 경우 이 옵션과 별개로 동작 합니다. |
Requires= | 이 옵션에 설정된 유닛(상위 유닛)이 정상 작동중일때 지금 작성중인 유닛이 작동됩니다. |
[Service]
Type= | 유닛의 타입을 설정합니다. 대표적으로 simple , forking 등이 있으며 simple은 기본값으로 유닛이 동작하며 forking의 경우 자식 프로세스까지 systemd데몬이 관리하며 부모프로세스 확인을 위해 PID 파일이 설정되어야 합니다. |
Environment= | 작성하는 유닛의 환경변수를 설정합니다. |
ExecStart= | 유닛이 동작될때 시작할 스크립트 파일을 설정합니다. |
ExecStop= | 유닛이 중지될때 동작될 스크립트 파일을 설정합니다. |
User= , Group= | 유닛이 실행될때 수행할 사용자와 그룹을 설정합니다. 서비스를 시작할 경우 해당 프로세스는 여기에 작성된 사용자와 그룹으로 동작하게 됩니다. |
UMask= | umask값을 설정합니다. 설정하지 않을 경우 0022 기본값으로 적용됩니다. |
RestartSec= | 유닛이 재시작될 경우 중지 후 다시 재시작되기까지 대기하는 시간을 설정합니다. 설정하지 않을 경우 100ms 입니다. 이 옵션을 사용할 경우 Restart=을 사용해야 적용됩니다. |
Restart= | 유닛이 장애 등으로 응답이 없을 경우 설정값대로 동작합니다. 기본값은 no이며 always의 경우 무조건 재시작 입니다. |
SyslogLevel= | 로그 레벨을 설정합니다. 설정 가능한 로그레벨로 notice, info, crit, alert, emerg 등이 있습니다. |
[Install]
WantedBy= | 유닛 활성화 등록 시(systemctl enable 서비스명) 등록에 필요한 유닛을 지정합니다. |
Alias= | 유닛의 Alias를 지정합니다. Alias의 이름은 유닛타입(서비스.service) 확장자를 가지고 있어야만 합니다. |
출처: https://gsk121.tistory.com/406
참고: https://www.freedesktop.org/wiki/Software/systemd/
반응형