asp.net-mvc - 服务权限被拒绝 - Fedora 31
问题描述
我目前正在开发一个使用本指南运行 .net 代码的网站:
https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-apache?view=aspnetcore-3.1
以及本安装 .net core SDK 的指南(我在故障排除时安装了 2.1 和 3.1):
https://docs.microsoft.com/en-ca/dotnet/core/install/linux-package-manager-fedora31
我正在尝试配置 apache 代理服务器以向 Kestrel 服务器发送请求,但我在 /etc/systemd/system/kestrel-helloapp.service 的服务存在问题。
我的服务代码是:
[Unit]
Description=Started service
[Service]
WorkingDirectory=/var/www/html/PublishedVersion
ExecStart=/usr/share/dotnet /var/www/html/PublishedVersion/Website.dll
KillSignal=SIGINT
SyslogIdentifier=dotnet-example
User=root
Enviroment=ASPNETCORE_ENVIROMENT=Production
[Install]
WantedBy=multi-user.target
服务状态为:
Mar 15 19:37:38 localhost.localdomain systemd[1]: Started service
Mar 15 19:37:38 localhost.localdomain systemd[1706]: kestrel-helloapp.service: Failed to execute command: Permission denied
Mar 15 19:37:38 localhost.localdomain systemd[1706]: kestrel-helloapp.service: Failed at step EXEC spawning /usr/share/dotnet: Permission denied
Mar 15 19:37:38 localhost.localdomain systemd[1]: kestrel-helloapp.service: Main process exited, code=exited, status=203/EXEC
Mar 15 19:37:38 localhost.localdomain systemd[1]: kestrel-helloapp.service: Failed with result 'exit-code'.
与指南代码相比,我的服务代码有三个主要区别:
第一:我已经删除了自动重启,所以它不会让我的机器陷入困境。
第二:我已将 更改ExecStart=/usr/local/dotnet
为ExectStart=/usr/shared/dotnet
,我这样做是因为我的 .net 安装不在那个位置,因为某些原因让我无法理解。
第三:我已更改为User=apache
尝试User=root
进行故障排除,我机器上的唯一用户是root,因为这台机器仅用于学校目的。
我还将我机器上的 SELinux 设置更改为允许并最终禁用以尝试进行故障排除。
我还是新手,在课堂上没有看到这些,所以放轻松。
感谢您的时间/答案。
解决方案
Systemd 对执行文件的位置有限制。我不是该领域的专家,但有解决此问题的方法。您可以编辑/etc/selinux/config
和更改行:
SELINUX=enforcing
与SELINUX=permissive
,
然后重新启动系统,systemd 的服务将启动。
推荐阅读
- java - 为多用户设计购物车的概念问题
- sql - 如何通过基本身份验证在 SSMS 中发送 http 请求并传递用户名和密码?
- r - 在 tidyr 版本 1.0.0 中,如何将嵌套列简化为列表?
- python-3.x - 为什么这个递归加法没有返回
- xcode - Swift UI 实时预览画布不适用于 macOS Catalina 和 Xcode 11.0
- python - 使用 .any() 后使用 np.where 返回错误
- jquery - 如何覆盖 WordPress 中的 jQuery 插件选项
- react-native - 为什么 react-native-svg-icons 给我一个错误,即 ttf 文件有一些重复项?
- python - 如何连续分解每个文档的顶部单词;熊猫数据框
- python-3.x - 'NoneType' 对象不可调用 - 带有 keras 和反向传播的 MDN