Answers:
unmask
当系统中除了符号链接以外没有其他任何单位文件时,该命令似乎失败/dev/null
。如果mask
一个服务,然后创建一个新的符号链接/dev/null
在/etc/systemd/system
哪里systemd长相在引导单元文件加载。在这种情况下,没有实际的单位文件。
x11-common.service
在我的系统上也被屏蔽。您可以这样解决:
首先检查该单位文件是否是指向的符号链接 /dev/null
file /lib/systemd/system/x11-common.service
它应该返回:
/lib/systemd/system/x11-common.service: symbolic link to /dev/null
在这种情况下,将其删除
sudo rm /lib/systemd/system/x11-common.service
由于更改了单位文件,因此需要运行以下命令:
sudo systemctl daemon-reload
现在检查状态:
systemctl status x11-common
如果未显示已加载并正在运行(如果圆圈仍为红色),请重新安装该软件包:
sudo apt-get install --reinstall x11-common
然后重新加载守护程序
sudo systemctl daemon-reload
并再次检查状态
systemctl status x11-common
现在它是绿色的,并且正在运行:)该服务没有systemd单位文件,但是systemd高兴地在其中使用了脚本/etc/init.d
。
/etc/init/
...中有一个文件)。您可能想问一个新问题。我所做的没有明显变化,只有服务显示为已加载,已启用,已停止(启动时处于活动状态)(绿色),而不是已加载的已屏蔽的死机(红色)。我应该阅读我的日志...
/dev/null
吗?你对我的回答是正确的。我将这种解决方案称为解决方案,以解决systemd的令人困惑的行为
可能是您的服务有一个空的覆盖文件,如下所示:
●redis-server.service-高级键值存储已加载:已加载(/lib/systemd/system/redis-server.service;已屏蔽;供应商预设:已启用)嵌入式:/ etc / systemd / system / redis-server .service.d└─limit.conf
检查limit.conf是否为空文件。如果是这样,请删除它。然后应取消屏蔽服务。