Eu também estava procurando uma explicação e as man-pages de uma imagem recente do Raspberry Pi Jessie me deram uma.
Eu olhei pela primeira vez aqui: man 7 systemd
o que então me leva a olhar:
man 5 systemd.unit
que forneceu o seguinte:
RequiresMountsFor=
Takes a space-separated list of absolute paths. Automatically adds dependencies of type
Requires=
andAfter=
for all mount units required to access the specified path.Mount points marked with noauto are not mounted automatically and will be ignored for the purposes of this option. If such a mount should be a requirement for this unit, direct dependencies on the mount units may be added (
Requires=
andAfter=
or some other combination).
Um pouco mais abaixo na página do manual,
ConditionArchitecture=
,ConditionVirtualization=
,ConditionHost=
,ConditionKernelCommandLine=
,ConditionSecurity=
,ConditionCapability=
,ConditionACPower=
,ConditionNeedsUpdate=
,ConditionPathExists=
,ConditionPathExistsGlob=
,ConditionPathIsDirectory=
,ConditionPathIsSymbolicLink=
,ConditionPathIsMountPoint=
,ConditionPathIsReadWrite=
,ConditionDirectoryNotEmpty=
,ConditionFileNotEmpty=
,ConditionFileIsExecutable=
,ConditionNull=
Before starting a unit verify that the specified condition is true. If it is not true, the starting of the unit will be skipped, however all ordering dependencies of it are still respected. A failing condition will not result in the unit being moved into a failure state. The condition is checked at the time the queued start job is to be executed.
Por que vale a pena, vou com ConditionPathIsMountPoint=
:
ConditionPathIsMountPoint=
is similar toConditionPathExists=
but verifies whether a certain path exists and is a mount point.