Como usar o Systemd no Debian

Como usar o Systemd no Debian
A raiz na estrutura da árvore dos processos do kernel Linux é Systemd. Como resultado, pode ser usado para realizar atividades altamente úteis, como controlar automaticamente seus serviços e máquina, executando -os na inicialização. Veremos todas as atividades principais que se pode executar usando o Systemd. Começaremos com uma introdução e depois passaremos para a implementação. Vamos começar!

O que é Systemd?

O suíte de software Systemd fornece a base para o sistema operacional Debian. O processo raiz na árvore do processo do Linux é responsável pelo gerenciamento de outros processos e aplicativos e é usado para controlar aplicativos no modo de nível de kernel. Por exemplo, executando o Docker como um serviço.

Como usar o Systemd para várias tarefas

Listar arquivos da unidade

Systemd emprega a "unidade" para lidar com todos os serviços e processos do sistema. As unidades Systemd usam arquivos de configuração para governar suas diferentes atividades. Os arquivos de configuração da unidade são classificados em três tipos:

“Arquivos de configuração da unidade padrão” com arquivos de configuração contidos no diretório “/usr/lib/systemd/sistema

“Arquivos de configuração da unidade específicos do sistema” com arquivos de configuração de unidade específicos do sistema contidos em “/etc/Systemd/System
““
"Arquivo de configuração da unidade de tempo de execução" "com arquivos de configuração encontrados no diretório" "/run/systemd/sistema

Abaixo está o comando para listar arquivos da unidade junto com sua saída

$ Systemctl List-Unit-Files

Saída

Estado de arquivo da unidade
PROC-SYS-FS-BINFMT_MISC.estático automático
dev-hugePages.Monte estático
Dev-Mjeue.Monte estático
PROC-SYS-FS-BINFMT_MISC.Monte estático
Sys-Fs-Fuse-Connections.Monte estático
Sys-Kernel-Config.Monte estático
Sys-Kernel-Debug.Monte estático
TMP.Monte desativado
Brandbot.caminho desativado
SystemD-ASS-PASSWORD-Console.caminho estático
SystemD-ASS-PASSWORD-PLYMOUTH.caminho estático
SystemD-ASS-Password-Wall.caminho estático
sessão 1.escopo estático
ARP-ETHERS.serviço desativado
Auditd.serviço habilitado
[email protected]ço habilitado

Tente usar o comando linux grep para filtrar apenas serviços habilitados.

$ SystemCTL List-Unit-Files | Grep habilitado

Saída

Auditd.serviço habilitado
[email protected]ço habilitado
Crond.serviço habilitado
dbus-org.FedoraProject.Firewalld1.serviço habilitado
dbus-org.Freedesktop.NM-Dispatcher.serviço habilitado
Firewalld.serviço habilitado
[email protected]ço habilitado
Irqbalance.serviço habilitado
Kdump.serviço habilitado
LVM2-Monitor.serviço habilitado

Iniciar e interromper os serviços de um serviço

$ sudo systemctl start
$ sudo systemctl stop

Abaixo está um exemplo de execução de um contêiner do Docker como um serviço.

Para executar seu aplicativo (vamos chamá -lo de "x") como um serviço Systemd, crie o seguinte arquivo no diretório "/etc/systemd/system" e nomeie -o como
'Docker.Alguns_name.serviço' :

[Unidade]
Descrição = X contêiner
Depois = Docker.serviço
Quer = rede-online.Docker alvo.soquete
Requer = docker.soquete
[Serviço]
Reinicie = sempre
ExecStart =/usr/bin/docker start -a algum_name
Execstop =/usr/bin/docker parada -t 10 algum_name
[Instalar]
WantedBy = MultiUser.alvo

Para iniciar um serviço com uma inicialização do sistema, use o seguinte comando:

SystemCtl Ativar Docker.Alguns_name

Use os seguintes comandos para parar e iniciar o serviço manualmente:

SUDO Service Stop Docker.Alguns_name
SUDO Service Start Docker.Alguns_name

Verifique o status do serviço

Abaixo está o comando para verificar o status do serviço em execução.

$ sudo status Systemctl

Reinicie um serviço

Você também pode reiniciar um serviço sem precisar parar e iniciá -lo, o que requer mais esforço. Abaixo está o comando para executar esta tarefa.

$ sudo systemctl reiniciar firewalld

Reinicie e desligar

Abaixo estão os comandos para reiniciar e desligar o sistema, respectivamente. (Como administrador do sistema, você também deve saber como desligar o sistema usando uma linha de comando)

$ sudo systemctl reinicialização
$ sudo systemctl poweroff

Serviços iniciantes no tempo de inicialização

Serviços como o Docker precisam ser iniciados assim que sua máquina estiver ligada. Para realizá -lo, você pode mencionar o comando abaixo.

$ sudo systemctl Ativar firewalld

Tente inicializar sua máquina e você notará que o serviço começa automaticamente sem interação humana.

Conclusão

Neste post, vimos como Systemd pode executar tarefas comuns de administração e configuração com sua máquina. Um administrador do sistema pode usar os comandos acima para automatizar a configuração dos serviços em execução em sua máquina. Certifique -se de experimentar esses comandos com seus serviços personalizados e perceber o poder do Systemd.