Como estou meio confuso sobre qual é a ideia por trás systemd
de 's system
e user
unidades ou serviços, gostaria de pedir uma explicação.
Especificamente, pensei que as unidades de sistema são para unidades que fazem parte do sistema operacional do fornecedor, enquanto as unidades de usuário são para complementos locais do cliente.
Mas parece que as unidades do usuário são tratadas de maneira diferente systemd
(por exemplo systemctl daemon-reload
, não afeta nenhuma unidade do usuário, enquanto a página do manual afirma: " Recarregue a configuração do gerenciador do systemd. Isso executará novamente todos os geradores (consulte systemd.generator(7)), recarregue todos os arquivos da unidade , e recrie toda a árvore de dependências. "), portanto, não é apenas uma estrutura organizacional, mas uma estrutura verdadeiramente semântica.
systemd
executa um gerenciador de serviços para o sistema e um gerenciador de serviços para usuários logados. As unidades do sistema só podem ser iniciadas/paradas pelo UID 0 e os serviços do sistema são executados como UID 0 (exceto se você definirUser=
), as unidades do usuário podem ser iniciadas/paradas pelo respectivo usuário e os serviços do usuário são executados como o respectivo usuário.Para falar com o gerente de serviço do usuário, use
systemctl --user
. No seu exemplo, você teria que ligarsystemctl --user daemon-reload
para recarregar as unidades do usuário.Observe que as unidades do usuário não podem depender das unidades do sistema e vice-versa.