Como alterar níveis de execução (destinos) no SystemD
Systemd é um sistema de inicialização moderno para Linux: um gerenciador de sistemas e serviços compatível com o popular sistema de inicialização SysV e scripts de inicialização LSB. O objetivo era superar as deficiências do SysV init conforme explicado no artigo a seguir.
- A história por trás de ‘init’ e ‘systemd’: por que ‘init’ precisou ser substituído por ‘systemd’ no Linux
Em sistemas do tipo Unix, como o Linux, o estado operacional atual do sistema operacional é conhecido como runlevel; ele define quais serviços do sistema estão em execução. Em sistemas init populares como o SysV init, os níveis de execução são identificados por números. No entanto, no systemd os níveis de execução são chamados de alvos.
Leitura sugerida: Gerenciando processos e serviços de inicialização do sistema (SysVinit, Systemd e Upstart)
Neste artigo, explicaremos como alterar os níveis de execução (destinos) com o systemd. Antes de prosseguirmos, vamos examinar brevemente a relação entre números de níveis de execução e alvos.
- O nível de execução 0 é correspondido por poweroff.target (e runlevel0.target é um link simbólico para poweroff.target ).
- O nível de execução 1 é correspondido por rescue.target (e runlevel1.target é um link simbólico para rescue.target ).
- O nível de execução 3 é emulado por multi-user.target (e runlevel3.target é um link simbólico para multi-user.target ).
- Runlevel 5 é emulado por graphical.target (e runlevel5.target é um link simbólico para graphical.target ).
- Run level 6 é emulado por reboot.target (e runlevel6.target é um link simbólico para reboot.target ).
- Emergency é correspondido por emergency.target.
Como visualizar o alvo atual (nível de execução) no Systemd
Quando o sistema inicializa, por padrão o systemd ativa a unidade default.target. Seu trabalho principal é ativar serviços e outras unidades puxando-os por meio de dependências.
Para visualizar o destino padrão, digite o comando abaixo.
#systemctl get-default
graphical.target
Para definir o destino padrão, execute o comando abaixo.
systemctl set-default multi-user.target
Como alterar o destino (nível de execução) no Systemd
Enquanto o sistema está em execução, você pode alternar o destino (nível de execução), o que significa que apenas os serviços e as unidades definidas nesse destino serão executados no sistema.
Para mudar para o nível de execução 3, execute o seguinte comando.
systemctl isolate multi-user.target
Para alterar o sistema para nível de execução 5, digite o comando abaixo.
systemctl isolate graphical.target
Para obter mais informações sobre o systemd, leia estes artigos úteis:
- Como gerenciar serviços e unidades ‘Systemd’ usando ‘Systemctl’ no Linux
- Como criar e executar novas unidades de serviço no Systemd usando Shell Script
- Gerenciando processos e serviços de inicialização do sistema (SysVinit, Systemd e Upstart)
- Gerenciar mensagens de log no Systemd usando Journalctl [Guia abrangente]
Neste guia, mostramos como alterar os níveis de execução (destinos) com o systemd. Use o formulário de comentários abaixo para nos enviar quaisquer perguntas ou opiniões sobre este artigo.