systemd 서비스가 정상적으로 시작되지만 다시 시작한 후 중단됩니다.

systemd 서비스가 정상적으로 시작되지만 다시 시작한 후 중단됩니다.

이상한 문제가 있습니다. dotnet 프로젝트를 실행하는 사용자 지정 systemd 서비스를 설정했습니다. 시스템을 처음 시작하면 서비스도 정상적으로 시작되지만 다시 시작하면 중단됩니다.

시스템은 Azure의 Ubuntu 20.04입니다.

서비스 설명은 다음과 같습니다.

[Unit]
Description=Api

[Service]
WorkingDirectory=/home/aviad/Backend
ExecStart=/snap/bin/dotnet run -c AzureDev --launch-profile AzureDev
Restart=always
RestartSec=10
User=aviad

[Install]
WantedBy=multi-user.target

이는 다음의 결과입니다.sudo systemctl status api

● api.service - Api
     Loaded: loaded (/etc/systemd/system/api.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2021-09-14 15:51:50 UTC; 29min ago
   Main PID: 855 (dotnet)
      Tasks: 39 (limit: 9513)
     Memory: 314.2M
     CGroup: /system.slice/api.service
             ├─ 855 /snap/dotnet-sdk/120/dotnet run -c AzureDev --launch-profile AzureDev
             └─2408 /home/aviad/Backend/bin/AzureDev/net5.0/Backend

재시작 후 상태는 다음과 같습니다.

● api.service - Api
     Loaded: loaded (/etc/systemd/system/api.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2021-09-14 16:33:33 UTC; 7s ago
   Main PID: 8373 (dotnet)
      Tasks: 0 (limit: 9513)
     Memory: 460.0K
     CGroup: /system.slice/api.service
             ‣ 8373 /snap/dotnet-sdk/120/dotnet run -c AzureDev --launch-profile AzureDev

Sep 14 16:33:33 machine1 systemd[1]: Started Api.

나쁜 상태를 제외하고는 실제 프로젝트가 실제로 실행되지 않습니다.

몇 가지 더 시도했지만 동일한(나쁜) 결과가 나왔습니다.

  1. 서비스를 중지하고 잠시 기다린 후 시작하세요.
  2. 서비스를 비활성화하고 잠시 기다린 다음 활성화하십시오.
  3. 위의 작업을 전후에 수행하십시오.systemctl daemon-reload
  4. kill -9프로세스 ID에 a를 발행 하고 systemd다시 시작하도록 합니다.

관련 정보