CentOS에서 이러한 서비스가 어떻게 작동하는지 파악하는 데 문제가 있습니다. 이제 다음과 같은 서비스 파일이 있습니다.
[Unit]
Description=SomeDescription
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/script
[Install]
WantedBy=multi-user.target
이는 결코 반환되지 않는 실행 파일을 호출하는 스크립트를 시작합니다.
#!/bin/bash
export LD_LIBRARY_PATH=SOMEPATH && cd SOMEOTHERPATH && ./EXECUTABLE
실행 파일이 반환되지 않습니다. 서비스를 시작하면 잠시 동안 실행되다가 시간 초과로 인해 종료됩니다.
Job for selftester.service failed because a timeout was exceeded. See "systemctl status selftester.service" and "journalctl -xe" for details.
백그라운드에서 실행 파일을 실행하도록 스크립트를 명시적으로 변경하면 작동한다는 것을 알았습니다.
#!/bin/bash
export LD_LIBRARY_PATH=SOMEPATH && cd SOMEOTHERPATH && ./EXECUTABLE &
이것이 올바른 구현입니까? 미리 감사드립니다