본문 바로가기

리눅스 헛다리/Ubuntu

우분투 systemd 데몬 사용 - 일정시간마다 동작처리

728x90

 

 

vi /etc/systemd/system/[서비스명].service

[Unit]

Description=[서비스] Schedule Task

After=network.target

[Service]

ExecStart=/usr/bin/php /home/[프로젝트]/spark schedule:your_schedule <<< ci4 cls 실행명령어

Restart=always ##<< 중요 항상

RestartSec=3 ##<< 중요 3초마다

User=[사용자]

WorkingDirectory=/home/[프로젝트]

StandardOutput=append:/var/log/[서비스명].log

StandardError=append:/var/log/[서비스명].log

------------------------------------------------------------------------------------------

vi /etc/systemd/system/[서비스명].timer

[Unit]

Description=Run [프로젝트 or 서비스] Schedule Every 3 Seconds <<< 설명

[Timer]

OnUnitActiveSec=3 ##<<< 시간설정

OnBootSec=10 ##<< 부팅후 3초뒤

Unit=[서비스명].service

[Install]

WantedBy=timers.target

------------------------------------------------------------------------------------------

# systemd 새로고침

sudo systemctl daemon-reload

# 타이머 자동 실행 등록

sudo systemctl enable [서비스명].timer

# 타이머 실행

sudo systemctl start [서비스명].timer

------------------------------------------------------------------------------------------

타이머가 실행되고 있는지 확인

sudo systemctl list-timers --all

서비스 실행 로그 확인

journalctl -u [서비스명].service -f

로그 파일 확인

cat /var/log/[서비스명].log

------------------------------------------------------------------------------------------

타이머를 중지

sudo systemctl stop [서비스명].timer

sudo systemctl disable [서비스명].timer

------------------------------------------------------------------------------------------

완전히 삭제

sudo rm /etc/systemd/system/[서비스명].timer

sudo rm /etc/systemd/system/[서비스명].service

sudo systemctl daemon-reload

------------------------------------------------------------------------------------------

728x90