相关疑难解决方法(0)

如何生成“默认”systemd .service 文件?

TL; 博士

如何从旧的 system-V 服务生成“可编辑”的 systemd .service 文件?

最近,我们遇到了一个问题,我们的本土“服务器管理器”无法在“Ubuntu 16.04.1”服务器上启动服务,因为所述服务处于“活动(退出)”状态,而不是“非活动”状态。谷歌搜索告诉我我可以在服务文件中添加这样的内容:

Restart=always
RestartSec=3
Run Code Online (Sandbox Code Playgroud)

但是调用“systemctl edit myservice”会得到一个空文件。显然,systemd 会根据“/etc/init.d/myservice”文件生成一些默认的 .service 文件。使用find,我发现在“/run/systemd/generator.late/myservice.service”下有一个生成的文件。但它包含很多内容,可能是特定于这次“运行”的内容,例如“Before=”和“After=”,我不确定是否应该将其用作基础。

我不想从头开始编写 .service 文件,因为我对 systemd .service 格式一无所知,而且这是一个 24/7 全天候运行的高效服务器(没有我可以用来“练习”的测试服务器克隆)。

systemd services

3
推荐指数
2
解决办法
1942
查看次数

创建一个延迟 30 分钟的 systemd 启动脚本

我尝试创建一个 systemd 启动脚本,它在我的笔记本电脑系统启动后 30 分钟启动 rkhunter 扫描,如下所示:

[Unit]
Description=starts rkhunter and displays any findings with zenity

[Service]
ExecStartPre=/bin/sleep 1800
ExecStart=/usr/local/sbin/rkhunter-check

[Install]
WantedBy=default.target

Run Code Online (Sandbox Code Playgroud)

但这失败并出现超时错误

Job for rkhunter.service failed because a timeout was exceeded.
Run Code Online (Sandbox Code Playgroud)

ExecStartPre 似乎不是这样工作的。

我该如何解决这个问题?

一个完美的解决方案是:

  • 开机后首次运行 30 分钟
  • 每 48 小时重复一次(以防您从不关闭笔记本电脑)

sleep systemd rkhunter

1
推荐指数
1
解决办法
1万
查看次数

标签 统计

systemd ×2

rkhunter ×1

services ×1

sleep ×1