Linux设置 cockpit 自动开机启动

本文章向大家介绍CentOS7 设置 cockpit 自动开机启动,主要包括CentOS , Fedora , RedHat 设置 cockpit 自动开机启动使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

systemctl 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] 配置单元,即可解决问题。

参考链接:https://unix.stackexchange.com/questions/337860/service-in-arch-not-starting-on-pc-boot

Systemd 是Linux操作系统中的一个管理系统单元(Service Manager),它用于管理系统和服务的生命周期管理。其中的定时器功能允许你在特定时间执行命令或启动服务。 如果你想让一个Service的定时器在WantedBy字段为空的情况下启动,这意味着这个定时器不会直接由其他服务启动,而是在系统启动过程中作为独立的组件独立运行。为了实现这一点,你需要按照以下步骤配置: 1. **创建定时器**: 使用`systemctl`命令创建一个新的定时器,例如: ``` sudo systemctl timer create mytimer.interval --onboot=True --once=False --enabled=True ``` `mytimer.interval`是你自定义的定时器名称,`--onboot=True`表示开机启动,`--once=False`表示不是一次性任务,`--enabled=True`设置其为启用状态。 2. **关联脚本或服务**: 在`Timer`的定义文件`/etc/systemd/system/mytimer.timer`中,你可以添加`ExecStart=`选项指定要在定时器触发时执行的命令或启动的服务。例如,如果想在某个时间点启动名为`myservice.service`的服务,可以这样配置: ```bash [Unit] Description=My Service Timer [Timer] OnCalendar=...your specified time... # 定义时间周期 Persistent=true # 让timer在重启后保持激活 ExecStart=/bin/systemctl start myservice.service [Install] WantedBy=multi-user.target # 或者你想让它在哪个目标下启动,如graphical.target或console.target ``` 3. **启用定时器**: 创建并编辑完定时器配置后,使用`sudo systemctl enable mytimer.timer`使其开机自动启动,并使用`sudo systemctl start mytimer.timer`立即执行第一次。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值