
나는 go 프로젝트를 가지고 있고 그것을 컴파일할 때 일반적인 바이너리를 얻습니다. 충분한 입력을 사용하여 명령줄에서 직접 바이너리를 호출하면 정상적으로 실행됩니다. 나는 이 프로그램이 systemd 생태계의 일부가 되기를 원합니다. 아래는 내 Binary.service입니다.
[Unit]
Description=Run Go Service
[Service]
WorkingDirectory=/path/to/directory/
ExecStart=/path/to/directory/binary --config /full/path/to/service.conf
Restart=always
[Install]
WantedBy=multi-user.target
일반적인 호출을 사용하여 서비스를 시작하고 중지할 수 있습니다 sudo service application start
. 오류 메시지는 나오지 않지만 확인해보니 journalctl -xe
시작 실패라고 나오며 이유는 자세히 설명되지 않았습니다. systemd 대신 명령줄을 통해 똑같은 명령을 실행하면 응용 프로그램이 제대로 실행됩니다. 이 문제를 어떻게 해결할 수 있나요?