参数详解
Unit模块
[Unit] 部分
Description:简短描述
Documentation:文档地址
Requires:当前 Unit 依赖的其他 Unit,如果它们没有运行,当前 Unit 会启动失败
Wants:与当前 Unit 配合的其他 Unit,如果它们没有运行,当前 Unit 不会启动失败
BindsTo:与Requires类似,它指定的 Unit 如果退出,会导致当前 Unit 停止运行
Before:如果该字段指定的 Unit 也要启动,那么必须在当前 Unit 之后启动
After:如果该字段指定的 Unit 也要启动,那么必须在当前 Unit 之前启动
Conflicts:这里指定的 Unit 不能与当前 Unit 同时运行
Condition...:当前 Unit 运行必须满足的条件,否则不会运行
Assert...:当前 Unit 运行必须满足的条件,否则会报启动失败
+-------------------+ +---------------------+
|After->Condition...| -> |Requires -> Assert...| ->
+-------------------+ +---------------------+
+-----+ +-------+ +------+
-> |Wants| -> |BindsTo| -> |Before| -> ...
+-----+ +-------+ +------+
Service模块
Type:定义启动时的进程行为。它有以下几种值。
Type=simple:(默认值)启动一个子进程运行命令,用于不会退出的程序
Type=forking:fork一个字进程,等待命令完成后退出,多用于后台进程
Type=oneshot:systemctl 等待命令完成再往下执行,像在控制台执行一个命令一样
Type=dbus:当前服务通过D-Bus启动