Eu escrevi cerca de meia dúzia de .service
arquivos para as diferentes partes que compõem o sistema no qual estou trabalhando. É útil poder iniciar o sistema inteiro aos poucos, mas eu também gostaria de ter uma única unidade que inicie o sistema inteiro em uma chamada para systemctl
.
Qual é a melhor forma de fazer isso?
WantedBy
chave na[Install]
seção e anotar um destino já existente. Por exemplo, se você deseja que seus serviços sempre sejam inicializados antes que outros usuários possam efetuar login, usemulti-user.target
.Wants=
listagem de todos os serviços parece suficiente para iniciar , no entanto, não consigo encontrar nenhuma maneira de fazer parar e reiniciar o trabalho usando um tipo de destino. Existe um tipo que permita isso?.target
pode ser feito usandoStopWhenUnneeded=yes
em cada um dos.service
arquivos. superuser.com/questions/470153/….target
e para parar, eu usosystemctl stop foo.\*
(já que todos os serviços envolvidos têm arquivos de serviço começando com o witfoo.
).Você já tentou usar
PartOf
as subunidades do grupo-alvo, alémWants
do alvo? Ex:PartOf=foo.target
dentrofoo-sub1.service
eWants=foo-sub1.service foo-sub2.service
dentrofoo.target
. Eu apenas tentei isso e fui capaz de iniciar e parar todas as minhas subunidades apenas iniciando e parando o alvo.fonte