我想了解什么是屏蔽服务,以及必要时如何取消屏蔽。
我一直尝试使用以下命令在 Ubuntu 16.04-LTS 上启动 PostgreSQL
systemctl start postgresql.service.
分别作为具有管理权限的用户以及 root 身份。
不幸的是,我
Failed to start postgresql.service: Unit postgresql.service is masked.
在两种情况下均打印。
答案1
答案2
我遇到了 mysql/mariadb 服务突然停止然后被屏蔽的问题。运行
journalctl -xe
通常会向您显示某项服务被禁用/屏蔽/无法启动等原因。通常都是有充分理由的。
在我的情况下,它正在安装一个新的存储库(用于不相关的服务),而该存储库恰好有一个降级的 mariadb-server 版本。
当我运行 apt upgrade 时,mariadb 被降级,并且该服务被“屏蔽”
就我而言,将 mariadb 升级到正确的版本解决了这个问题,并取消了服务本身的屏蔽,仅仅取消服务屏蔽可能会导致 mysql dbs 中的数据损坏......所以基本上,不要盲目地取消某些东西 - 弄清楚原因。
答案3
我发现此错误消息是由于服务创建过程中的错误导致的。例如,文件名称不是 .service,而是 .sevrice。
我试图创建一个服务,在设置它时,我有时会调换文件扩展名中的字母。结果,ubuntu 21.10 上的 systemd 报告我的服务已被屏蔽,当我取消屏蔽服务时,ubuntu 会删除服务文件,就像它是一个被取消屏蔽的小偷一样 :^)。我困惑了几分钟,直到我看到了调换的字母。
答案4
就我而言,这对我有用:
sudo apt install php8.1-fpm
sudo systemctl enable php8.1-fpm
sudo systemctl start php8.1-fpm