Alvos Sistêmicos

Descreve como os alvos systemd são mapeados para executar níveis e como inspecionar ou alterar o estado do sistema.

Usando alvos, você pode controlar systemd para que ele inicie apenas os serviços necessários para uma finalidade específica.

Por exemplo, você define o destino padrão como multi-user.target em um servidor de produção para que a interface gráfica do usuário não seja usada quando o sistema for inicializado. Em um caso em que você precise diagnosticar e solucionar problemas ou executar diagnósticos, talvez considere definir o destino como rescue.target, em que apenas root faz log-in no sistema para executar o número mínimo de serviços.

Cada nível de execução define os serviços que o systemd interrompe ou inicia. Como exemplo, systemd inicia serviços de rede para multi-user.target e o Sistema X Window para graphical.target e interrompe os dois serviços para rescue.target.

Destinos de Estado do Sistema e Destinos de Nível de Execução Equivalentes mostra os alvos de estado do sistema comumente usados e os alvos de nível de execução equivalentes.

Alvos de Estado do Sistema e Alvos de Nível de Execução Equivalentes

Alvos do Estado do Sistema

Alvos em Nível de Execução Equivalentes

Descrição

graphical.target

runlevel5.target

Configure um sistema multiusuário com rede e gerenciador de exibição.

multi-user.target

runlevel2.target

runlevel3.target

runlevel4.target

Configure um sistema multiusuário não gráfico com rede.

poweroff.target

runlevel0.target

Desligue e desligue o sistema.

reboot.target

runlevel6.target

Desligue e reinicialize o sistema.

rescue.target

runlevel1.target

Configure uma concha de resgate.

Observe que os destinos runlevel* são implementados como links simbólicos.

Para obter mais informações, consulte a página do manual systemd.target(5).

Exibindo Alvos Padrão e Ativos do Estado do Sistema

Mostra como consultar o alvo padrão do sistema e listar todos os alvos ativos com systemctl.

Para exibir o destino de estado do sistema padrão, use o comando systemctl get-default:

systemctl get-default
graphical.target

Para exibir os destinos ativos em um sistema, use o comando systemctl list-units --type target:

systemctl list-units --type target [--all]
UNIT                   LOAD   ACTIVE SUB    DESCRIPTION                
basic.target           loaded active active Basic System               
cryptsetup.target      loaded active active Local Encrypted Volumes    
getty.target           loaded active active Login Prompts              
graphical.target       loaded active active Graphical Interface        
local-fs-pre.target    loaded active active Local File Systems (Pre)   
local-fs.target        loaded active active Local File Systems         
multi-user.target      loaded active active Multi-User System          
network-online.target  loaded active active Network is Online          
network-pre.target     loaded active active Network (Pre)              
network.target         loaded active active Network                    
nfs-client.target      loaded active active NFS client services        
nss-user-lookup.target loaded active active User and Group Name Lookups
paths.target           loaded active active Paths                      
remote-fs-pre.target   loaded active active Remote File Systems (Pre)  
remote-fs.target       loaded active active Remote File Systems        
rpc_pipefs.target      loaded active active rpc_pipefs.target          
rpcbind.target         loaded active active RPC Port Mapper            
slices.target          loaded active active Slices                     
sockets.target         loaded active active Sockets                    
sound.target           loaded active active Sound Card                 
sshd-keygen.target     loaded active active sshd-keygen.target         
swap.target            loaded active active Swap                       
sysinit.target         loaded active active System Initialization      
timers.target          loaded active active Timers                     

LOAD   = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB    = The low-level unit activation state, values depend on unit type.

24 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.

A saída de um sistema com o destino graphical ativo mostra que esse destino depende de outros destinos ativos, incluindo network e sound para a funcionalidade de rede e som.

Use a opção --all para incluir destinos inativos na lista.

Para obter mais informações, consulte as páginas do manual systemctl(1) e systemd.target(5).

Alterando Alvos Padrão e Ativos do Estado do Sistema

Explica como alternar o destino de inicialização padrão e isolar outro destino enquanto o sistema está em execução.

Use o comando systemctl set-default para alterar o destino de estado do sistema padrão:

sudo systemctl set-default multi-user.target
Removed /etc/systemd/system/default.target. 
Created symlink /etc/systemd/system/default.target → /usr/lib/systemd/system/multi-user.target
Observação

Este comando altera o alvo ao qual o alvo padrão está vinculado, mas não altera o estado do sistema.

Para alterar o destino atual do sistema ativo, use o comando systemctl isolate, por exemplo:

sudo systemctl isolate multi-user.target

Para obter mais informações, consulte a página do manual systemctl(1).