Cockpit 自动开机启动时异常问题处理

来自Linux78|wiki
Bob讨论 | 贡献2020年6月16日 (二) 17:59的版本 (创建页面,内容为“ystemctl enable cockpit 时,会出现如下错误: The unit files have no installation config (WantedBy, RequiredBy, Also, Alias settings in the [Install] sec…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

ystemctl enable cockpit 时,会出现如下错误:

The unit files have no installation config (WantedBy, RequiredBy, Also, Alias
settings in the [Install] section, and DefaultInstance for template units).
This means they are not meant to be enabled using systemctl.
Possible reasons for having this kind of units are:
1) A unit may be statically enabled by being symlinked from another unit's
  .wants/ or .requires/ directory.
2) A unit's purpose may be to act as a helper for some other unit which has
  a requirement dependency on it.
3) A unit may be started when needed via activation (socket, path, timer,
  D-Bus, udev, scripted systemctl call, ...).
4) In case of template units, the unit is meant to be enabled with some
  instance name specified.

修改cockpit.service 文件为如下所示:

cat /usr/lib/systemd/system/cockpit.service 
[Unit]
Description=Cockpit Web Service
Documentation=man:cockpit-ws(8)
Requires=cockpit.socket
 
[Service]
ExecStartPre=/usr/sbin/remotectl certificate --ensure --user=root --group=cockpit-ws --selinux-type=etc_t
ExecStart=/usr/libexec/cockpit-ws
PermissionsStartOnly=true
User=cockpit-ws
Group=cockpit-ws
 
[Install]
WantedBy=multi-user.target

添加 [Install] 配置单元,然后执行下面代码,即可解决问题。

systemctl enable --now cockpit.socket