A seção [Install] é obrigatória para serviços de início automático no systemd?

1

Estou lendo o link e não consigo encontrar informações se [Install] section for necessário para o início automático do serviço.

    
por anatoly techtonik 27.11.2018 / 06:47

1 resposta

1

A maneira padrão de fazer algum programa executado na inicialização com systemd é criar .service arquivo para ele, colocar esse arquivo em diretório correspondente e execute systemctl enable <service> para ativar para a sequência de inicialização. A seção [Install] é obrigatória aqui, porque informa systemd no momento em que durante o processo de inicialização seu serviço deve ser iniciado. O processo deve estar vinculado a alguns objetivos de inicialização genéricos , como multi-user.target ou graphical.target , ou para um destino de finalidade especial (como network-online.target ) ou um destino local personalizado.

Exemplo:

[Install]
WantedBy=multi-user.target

Aqui systemd injetará seu serviço como uma dependência de multi-user.target . systemd iniciará seu serviço sempre que multi-user target for iniciado.

O systemd lê arquivos (ou links simbólicos) em seus diretórios de configuração para ver quais unidades devem ser iniciadas em que ordem. systemctl enable cria tais links simbólicos para serviços que já conhece e coloca esses links simbólicos nos pontos no processo de inicialização quando o serviço deve ser iniciado (por exemplo, no subdiretório especial multi-user.target.wants/ ).

Existe também outra maneira como o sistema operacional usa systemd para iniciar seus próprios serviços na inicialização. Não é algo que você deve fazer, mas como a questão é sobre [Install] section ...

Existem systemd unidades chamadas unidades "estáticas" e elas não são gerenciadas por systemctl enable (ou systemctl disable .) Elas são iniciadas na inicialização por meio de links simbólicos codificados em /usr/lib/systemd/system/ (em vez de /etc/systemd/system/ ) e se você encontrá-los enquanto olha para as unidades em seu sistema ... saiba que eles não têm [Install] seção.

(Você pode ver a discussão neste post no fórum para obter mais detalhes sobre unidades estáticas.)

    
por 27.11.2018 / 06:53

Tags