Systemd는 서비스를 실행하기 위해 app.service에 지정된 사용자를 사용하지 않습니다. 무엇이 잘못되었을 수 있습니까?

Systemd는 서비스를 실행하기 위해 app.service에 지정된 사용자를 사용하지 않습니다. 무엇이 잘못되었을 수 있습니까?

시스템 서비스로 실행하려는 .Net Core 3 애플리케이션이 있습니다.

[Unit]
Description=app-prod

[Service]
WorkingDirectory=/var/www/app-prod
ExecStart=/usr/bin/dotnet /var/www/app-prod/app
Restart=always
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=dotnet-app-prod
User=www-data
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false

[Install]
WantedBy=multi-user.target

내가 사용하고 있는 서비스 구성에서 볼 수 있듯이 User=www-data애플리케이션 경로에 대한 권한은 이미 해당 사용자가 소유하고 있습니다. 하지만 서비스를 시작하면 폴더를 확인하고 폴더 생성을 시도하지만 예외가 발생합니다.

mar 07 14:15:14 void dotnet-app-prod[8004]: System.UnauthorizedAccessException: Access to the path '/var/www/.
mar 07 14:15:14 void dotnet-app-prod[8004]:  ---> System.IO.IOException: Permission denied
mar 07 14:15:14 void dotnet-app-prod[8004]:    --- End of inner exception stack trace ---
mar 07 14:15:14 void dotnet-app-prod[8004]:    at System.IO.FileSystem.CreateDirectory(String fullPath)

보시다시피 서비스를 실행하는 데 사용되는 사용자는 void해당 환경에 로그인한 일반 사용자일 뿐입니다.

필요한 서비스 대신 잘못된 사용자가 서비스를 실행하도록 하려면 내가 무엇을 잘못했을 수 있습니까 www-data?

관련 정보