在 systemd 服务定义文件中,
[Unit]
Description=My service...
After=zookeeper.service
和
[Unit]
Description=My service...
After=zookeeper.target
.service
zookeeper是在另一个服务文件中定义的另一个服务,但是扩展名vs的意义是什么.target
。有区别吗?
答案1
是的。请参阅man systemd.service
和man systemd.target
了解每种单位类型的文档systemd
。
在您的 systemd 上,您可以找到这些文件并查看systemd
它们包含的指令(假设两者都存在):
locate zookeeper.service
locate zookeeper.target
答案2
服务:
以 .service 结尾的单元配置文件包含有关由 systemd 控制和监督的进程的信息。
目标:
以“.target”结尾的单元配置文件编码了有关 systemd 目标单元的信息,用于对单元进行分组以及作为启动期间的已知同步点。
这些都是指unit configuration files
:
单元配置文件对有关服务,套接字,设备,挂载点,自动挂载点,交换文件或分区,启动目标,监视的文件系统路径,由 systemd(1) 控制和监督的计时器,资源管理切片或一组外部创建的进程的信息进行编码。
systemd.service
参考: 、systemd.target
和的手册页systemd.unit
。
此外,就配置文件本身而言,服务需要:
服务文件必须包含“[服务]”部分,其中包含有关该服务及其监督的进程的信息。
配置文件不存在这样的要求target
。事实上,目标没有特定于目标的选项;项目在通用[Unit]
和[Install]
部分中配置。