Como posso prever a ordem de encerramento do systemd?

9

Existe uma maneira de fazer com que systemd me diga a ordem aproximada na qual ela encerrará os serviços quando eu desligar todo o sistema corretamente? Como systemd encerrará as coisas paralelamente, eu aprecio que não há como saber a ordem exata, mas ainda seria muito útil saber quais restrições systemd imporão na sequência de desligamento, de preferência em algum tipo de visualização que é fácil de entender.

A motivação é que, para desenvolvimento e depuração de arquivos de serviço, seria muito mais conveniente obter essa lista prevista antecipadamente, em vez de ter que fazer um desligamento real e, em seguida, inicializar novamente e inspecionar os logs toda vez que eu quiser determinar o impacto que uma alteração em um arquivo de unidade de serviço ou algum outro aspecto da configuração do systemd terá na ordem de desligamento.

Eu esperava que algo como

systemctl list-dependencies --before shutdown.service

faria o trabalho, mas apenas emite:

shutdown.service
    
por Adam Spiers 18.03.2016 / 01:50

2 respostas

3

O seguinte pode ajudá-lo:

systemctl list-dependencies --before shutdown.target

Atenciosamente,

    
por 07.02.2017 / 10:26
1

A ordem de encerramento é geralmente o inverso da ordem de inicialização.

Dito isto, os daemons recebem um sinal de desligamento e demoram muito tempo para desligar e sair.

Deixando de lado o systemd, não acho viável prever quais serviços sairão em qual sequência. Além disso, as dependências controlam algumas seqüências.

    
por 18.03.2016 / 01:58