📜  服务没有 ExecStart=, ExecStop=, (1)

📅  最后修改于: 2023-12-03 15:26:31.073000             🧑  作者: Mango

服务没有 ExecStart=, ExecStop=

什么是 systemd 服务

systemd 是一种 Linux 启动系统和服务管理器,常见于大多数最新的 Linux 发行版。systemd 允许用户更容易地管理系统和服务,提高了启动速度和可维护性。

systemd 服务是一组系统进程,可以在系统启动时自动启动,也可以手动启动或停止。服务通常是由一个配置文件定义,并使用 systemd 命令进行管理。服务定义文件通常以“ .service” 结尾。

ExecStart= 和 ExecStop=

ExecStart= 和 ExecStop= 是 systemd 服务配置文件中定义的两个最重要的选项。ExecStart= 指定服务启动时要运行的命令或脚本。ExecStop= 指定在服务停止时运行的命令或脚本。

服务没有 ExecStart=, ExecStop=

如果服务配置文件中没有定义 ExecStart= 和 ExecStop=,则服务将不会启动或停止。这意味着用户将无法手动启动或停止服务,并且在系统启动时也不会自动启动。

以下是一个典型的 systemd 服务配置文件示例:

[Unit]
Description=My Service

[Service]
Type=simple
User=myuser
Group=mygroup
WorkingDirectory=/home/myuser/my-service

[Install]
WantedBy=multi-user.target

在这个例子中,ExecStart= 和 ExecStop= 选项都没有包括。服务将无法启动或停止。

总结

在 systemd 服务配置文件中,忘记定义 ExecStart= 和 ExecStop= 将导致服务无法启动或停止。务必在创建服务时包括这两个选项。

参考链接