Este é o comportamento padrão (e o único). Não é explicitamente documentado, mas está implícito na lógica de operação do systemd.
systemd.timer (5) diz:
For each timer file, a matching unit file must exist, describing the unit to activate when the timer elapses.
systemd (1) , por sua vez, descreve o conceito de estados unitários e transições entre eles:
Units may be "active" (meaning started, bound, plugged in, ..., depending on the unit type, see below), or "inactive" (meaning stopped, unbound, unplugged, ...), as well as in the process of being activated or deactivated, i.e. between the two states (these states are called "activating", "deactivating").
Isso significa que o acionamento de um timer leva à "ativação" da unidade correspondente, i. e. sua transição para o estado "ativo".
Se a unidade correspondente já estiver "ativa" no momento da "ativação" (para uma unidade de serviço, isso significa que "o processo principal ainda está em execução", a menos que a unidade de serviço tenha Type=oneshot
e RemainAfterExit=true
) deve ser óbvio que nenhuma ação será tomada.