我正在为 CentOS 7 下的 minidlnad(DLNA 服务器)编写 systemd 的 .service 文件。由于我的媒体文件集合托管在 RAID 阵列上,因此我需要在启动 minidlnad 服务器之前安装该阵列。RAID 阵列和 minidlnad 都应该在启动时启动。有没有办法在 systemd 中做到这一点?
答案1
您需要调整.serviceUnit
部分中的依赖项:
在 centos 上:
Requires=mdmonitor.service local-fs.target
After=mdmonitor.service local-fs.target
在其他发行版上,它可能是:
Requires=mdadm.service local-fs.target
After=mdadm.service local-fs.target
RAID 服务文件应该执行/sbin/mdadm --monitor --scan
来源:http://www.freedesktop.org/software/systemd/man/systemd.unit.html
答案2
systemd
针对这种情况有一个特定指令,称为RequiredMountsFor
;参见man systemd.directives
。
用法为RequiresMountsFor=[mountpoint]
,例如RequiresMountsFor=/var
。