Seu computador Linux depende de muitas tarefas de fundo chamadas serviços ou daemons. Em distribuições baseadas no SystemD, você possui comandos internos que permitem ver quais serviços estão em execução, desativados ou falhados.
Serviços e daemons
Serviços e daemons são tarefas de fundo que são executadas sem uma interface do usuário, não exigem interação humana e geralmente são iniciadas como o computador inicializa.
Ao mesmo tempo, os serviços foram lançados por
iniciar
, que foi o primeiro processo a ser lançado. Os detalhes dos serviços foram mantidos em uma coleção de scripts localizados no diretório "/etc/init/d". Nas distribuições não-Systemd, esse ainda é o caso.
No mundo do sistema, os serviços são lançados por
Systemd
que é o primeiro processo agora a ser lançado. Os detalhes dos serviços são armazenados em
arquivos da unidade
Localizado no diretório "/usr/lib/systemd".
De acordo com sua página de homem,
Systemd
é um sistema e gerente de serviço. Você pode usar o
SystemCtl
comando para inspecionar e controlar diferentes aspectos do sistema Systemd, incluindo serviços e daemons.
Como estamos analisando comandos específicos do Systemd aqui, a primeira coisa que você precisa saber é se está executando um baseado em sistemas distribuição ou não.
RELACIONADO: Por que o Systemd do Linux ainda é divisivo depois de todos esses anos
init ou systemd baseado?
A grande maioria das distribuições Linux usa o Systemd, incluindo arco, Red Hat e Debian, e muitas das distribuições derivadas delas. Isso inclui o Ubuntu família de distribuições, Fedora e seus giros, e Manjaro e as outras distribuições baseadas em arco.
No entanto, existem garfos ou sabores de algumas dessas distribuições que foram criadas especificamente para evitar ter que usar o Systemd. Não apenas isso, mas existem outros sistemas init que alguém poderia escolher usar em vez do que veio por padrão em sua distribuição, como executá-lo ou s6-linux-init .
Se você precisar administrar um computador Linux que você não configurou, a única maneira de ter certeza se está usando o Systemd ou não, é verificar. Podemos fazer isso olhando para a árvore de processo com o
PSTEE
comando. Precisamos ver apenas o topo da árvore - estamos procurando o primeiro processo que é executado, afinal - para que canalizemos a saída através do
cabeça
comando e peça as cinco primeiras entradas.
Nós podemos ver isso
Systemd
é o primeiro processo que é executado após a inicialização, então estamos definitivamente em uma instalação do Linux baseada no SystemD.
RELACIONADO: Como gerenciar processos do terminal Linux: 10 comandos que você precisa saber
Usando o SystemCTL para listar os serviços
O comando para listar serviços e daemons é
SystemCtl
. Podemos refinar o
SystemCtl
comando com o
tipo
e
estado
opções. Estamos perguntando
SystemCtl
relatar serviços que estão no estado de corrida.
Uma tabela de informações é gerada. Se for muito largo ou longo para a janela do terminal, é exibido no seu visualizador de arquivo padrão, o que provavelmente será
menos
.
Para ver a extremidade direita da tabela, pressione a tecla de seta direita. Para retornar à visualização usual, pressione a tecla de seta esquerda.
Pressione a tecla Q para sair de menos. As colunas exibidas são:
-
Unidade
: O nome do serviço ou daemon. A coluna é intitulada "Unit" porque o que quer que esteja nesta coluna foi lançado usando informações
Systemdencontrado em um arquivo de unidade. - Carregar : O estado de carga do serviço ou daemon. Pode ser carregado, não achado, ruim, erro ou mascarado.
- Ativo : O estado geral em que o serviço ou daemon está entrando. Pode ser ativo, recarregando, inativo, falhado, ativando ou desativando.
- SUB : O sub-estate do serviço ou daemon. Pode ser morto, saiu, falhou, inativo ou em execução.
- Descrição : Uma breve descrição da unidade.
Podemos colocar a saída de
SystemCtl
através
grep
Se queremos focar em um único serviço. Este comando isola a entrada da tabela para o
ssh
serviço.
Até agora, filtramos o conteúdo da tabela, fornecendo o
estado = execução
opção. Podemos usar qualquer um dos valores possíveis do subestado: Dead, saiu, falhou, inativo ou em execução.
Combinações de sub-estados podem ser usadas. Digite-os como uma lista separada por vírgula. Certifique -se de não incluir espaço em branco entre as opções. Observe que isso encontra serviços que correspondem qualquer estado.
Pressionar a tecla de seta à direita para examinar as colunas off-telra mostra que temos uma mistura de serviços de saída e falha na lista.
Por padrão,
SystemCtl
Listos processos - serviços e daemons - que foram lançados por
Systemd
porque
Systemd
Encontrou um arquivo de unidade que continha um arquivo de unidade válido para eles. É por isso que o termo abreviado para todo esse processo é "unidades".
Existe uma opção para solicitar explicitamente
SystemCtl
Para listar as unidades, mas como é a ação padrão, ela não é usada com frequência.
Usando o SystemCTL para listar arquivos da unidade
Podemos expandir o escopo do
SystemCtl
comando incluindo o
Files de listagem
opção. Isso não relata apenas serviços e daemons que foram lançados, também lista todos os
arquivos da unidade
instalado no seu computador.
Removendo o
estado
a opção remove a filtragem. A saída conterá todos os arquivos da unidade instalados, independentemente de seu estado.
A saída conterá muito mais entradas do que os resultados dos comandos anteriores.
Em nosso computador de teste, a lista de resultados é quase quatro vezes mais que a saída de nossos comandos anteriores.
Se você quiser usar o
estado
Opção, você pode usar vários estados com ele como vimos anteriormente. As mesmas regras se aplicam. Forneça as opções como valores separados por vírgula e não inclua espaço em branco.
Este comando listará todos os arquivos da unidade que estão desativados ou falharam no lançamento.
Um número reduzido de resultados é mostrado, filtrado de acordo com as seleções que você fez com a opção de estado.
Olhando para um serviço em detalhes
Se algo sobre um serviço ou daemon despertar seu interesse e merece um mergulho mais profundo, você pode analisá -lo em detalhes usando a opção de status SystemCTL.
Vamos dar uma olhada no Daemon SSH, SSHD. Tudo o que precisamos fazer é usar a opção de status e o nome do serviço ou daemon.
- O nome do serviço junto com uma breve descrição. Um ponto com código de cores mostra se está em execução ou não. Verde significa que está funcionando, vermelho significa que não é.
- O que foi carregado, incluindo o caminho para o arquivo da unidade.
- Há quanto tempo está funcionando.
-
Onde a documentação está localizada no
homemmanual. - O ID do processo da instância em execução.
- Quantas instâncias simultâneas deste serviço estão em execução. Geralmente este será um.
- Quanta memória está sendo consumida.
- Quanto tempo de CPU foi consumido.
- O grupo controle ao qual o serviço pertence.
As entradas relevantes do log do sistema também são mostradas. Normalmente, esses são eventos como a inicialização do serviço. Isso pode ser informativo se você estiver investigando um serviço ou daemon que não foi lançado corretamente.
RELACIONADO: Como usar o JournalCTL para ler logs do sistema Linux
Os sistemas autonômicos
Serviços e daemons fornecem muitas ações automáticas do seu sistema operacional, por isso são vitais. Isso significa que a saúde deles também é vital.
Obter uma visualização de seus serviços, daemons e arquivos da unidade é fácil e informativo. É também uma etapa valiosa de solução de problemas se um serviço ou daemon se recusar a iniciar.
RELACIONADO: Como resolver o erro "muitos arquivos abertos" no Linux
- › Como executar um programa Linux no Startup com o Systemd
- › Wyze está baixo, não é só você
- › Como bloquear ou desbloquear alguém em tiktok
- › Os melhores fones de ouvido para os fãs do iPhone apenas atingem o preço mais baixo
- › A Microsoft está transformando o Bing em um mecanismo de pesquisa de IA
- › O OnePlus 11 está aqui, mas com um começo difícil
- › Microsoft Edge está recebendo bate -papo de IA e uma nova aparência no Windows