A declaração Before=
refere-se ao início do serviço. De man systemd.unit
.
If a unit foo.service contains a setting Before=bar.service and both units are being started, bar.service's start-up is delayed until foo.service has finished starting up.
...
Note that when two units with an ordering dependency between them are shut down, the inverse of the start-up order is applied. i.e. if a unit is configured with After= on another unit, the former is stopped before the latter if both are shut down.
Portanto, você deseja configurar seu serviço com After=libvirt-guests.service
, pois o serviço é iniciado depois que libvirt-guests.service
é iniciado e seu serviço é interrompido antes que libvirt-guests.service
seja interrompido.