Os horários mudam e as melhores práticas também.
A melhor maneira de fazer isso é executar systemctl edit myservice
, o que criará um arquivo de substituição para você ou permitirá a edição de um já existente.
Em instalações normais, isso criará um diretório /etc/systemd/system/myservice.service.d
e, dentro desse diretório, criará um arquivo cujo nome terminará em .conf
(normalmente, override.conf
), e nesse arquivo você poderá adicionar ou substituir qualquer parte de a unidade enviada pela distribuição.
Por exemplo, em um arquivo /etc/systemd/system/myservice.service.d/myenv.conf
:
[Service]
Environment="SECRET=pGNqduRFkB4K9C2vijOmUDa2kPtUhArN"
Environment="ANOTHER_SECRET=JP8YLOc2bsNlrGuD6LVTq7L36obpjzxd"
Observe também que, se o diretório existir e estiver vazio, seu serviço será desativado! Se você não pretende colocar algo no diretório, verifique se ele não existe.
Para referência, o jeito antigo era:
A maneira recomendada de fazer isso é criar um arquivo /etc/sysconfig/myservice
que contenha seu variáveis e, em seguida, carregue-as com EnvironmentFile
.
Para detalhes completos, veja a documentação do Fedora em como escrever um script systemd .