Como listar todos os serviços em execução no Systemd no Linux

Como listar todos os serviços em execução no Systemd no Linux

Um sistema Linux fornece uma variedade de serviços de sistema (como gerenciamento de processos, Conecte-se, syslog, cron, etc.) e serviços de rede (como login remoto, e-mail, impressoras, hospedagem na web, armazenamento de dados, transferência de arquivos, resolução de nomes de domínio (usando DNS), atribuição dinâmica de endereço IP (usando DHCP) e muito mais).

Tecnicamente, um serviço é um processo ou grupo de processos (comumente conhecido como Daemons) Correndo continuamente em segundo plano, aguardando os pedidos (especialmente de clientes).

O Linux suporta diferentes maneiras de gerenciar (iniciar, parar, reiniciar, ativar o início automático na inicialização do sistema, etc.) Serviços, normalmente por meio de um processo ou gerente de serviço. A maioria, senão todas as distribuições modernas do Linux, agora usa o mesmo gerenciador de processos: Systemd.

Leia também: A história por trás de 'init' e 'Systemd': por que 'init' precisava ser substituído por 'Systemd' no Linux

Systemd é um sistema e gerente de serviço do Linux; uma substituição de entrega para o iniciar processo, que é compatível com Sysv e LSB scripts init e o comando systemctl é a ferramenta principal para gerenciar Systemd.

Neste guia, demonstraremos como listar todos os serviços em execução em Systemd em Linux.

Listando serviços em execução no Systemd no Linux

Quando você executa o Comando SystemCTL Sem argumentos, ele exibirá uma lista de todas as unidades Systemd carregadas (leia a documentação do Systemd para obter mais informações sobre unidades do SystemD), incluindo serviços, mostrando seu status (ativo ou não).

# SystemCtl 

Para listar todos os serviços carregados em seu sistema (ativo; em execução, saiu ou falhou, use o List-unidades Subcomando e --tipo Mudar com um valor de serviço.

# systemctl list-units --type = serviço ou # systemctl --type = serviço 
Liste todos os serviços em Systemd

E para listar todos os serviços carregados, mas ativos, em execução e aqueles que saíram, você pode adicionar o --estado opção com um valor de ativo, do seguinte modo.

# systemctl list-units --type = service--state = ativo ou # systemctl --type = serviço-state = ativo 
Liste todos os serviços de execução ativos no Systemd

Mas para obter um rápido olhar de todos os serviços em execução (eu.e todos os serviços carregados e ativamente em execução), execute o seguinte comando.

# systemctl list-units --type = service--state = em execução ou # systemctl --type = serviço-state = executando 
Lista de serviços em execução no Systemd

Se você frequentemente usa o comando anterior, pode criar um comando de alias em seu ~/.Bashrc arquivo como mostrado, para invocar facilmente.

# vim ~///.Bashrc 

Em seguida, adicione a seguinte linha sob a lista de aliases, como mostrado na captura de tela.

Alias ​​Running_services = "SystemCtl List-units --Type = Service-State = Running" 
Crie um alias para um comando longo

Salve as mudanças no arquivo e feche -o. E a partir de agora, use o “Running_services”Comando para visualizar uma lista de todos os serviços carregados e executados ativamente em seu servidor.

# Running_services #Use a conclusão da guia 
Veja todos os serviços em execução

Além disso, um aspecto importante dos serviços é a porta que eles usam. Para determinar a porta que um processo daemon está ouvindo, você pode usar o netstat ou ss ferramentas como mostrado.

Onde a bandeira -eu significa imprimir todos os soquetes de escuta, -t Exibe todas as conexões TCP, -você mostra todas as conexões UDP, -n significa imprimir números numéricos de porta (em vez de nomes de aplicativos) e -p significa mostrar o nome do aplicativo.

# netstat -ltup | grep zabbix_agentd ou # ss -ltup | Grep zabbix_agentd 

A quinta coluna mostra o soquete: endereço local: Porta. Nesse caso, o processo zabbix_agentd está ouvindo no porto 10050.

Determinar a porta do processo

Além disso, se o seu servidor tiver um serviço de firewall em execução, que controla como bloquear ou permitir o tráfego ou a partir de serviços ou portas selecionadas, você pode listar serviços ou portas que foram abertas no firewall, usando o Firewall-CMD ou comando ufw (dependendo das distribuições Linux que você está usando) como mostrado.

# firewall-cmd-list-services [firewalld] # firewall-cmd-list-ports $ sudo ufw status [ufw firewall] 
Liste serviços abertos e portos no firewall

É tudo por agora! Neste guia, demonstramos como visualizar serviços em execução em Systemd em Linux. Também abordamos como verificar a porta que um serviço está ouvindo e como visualizar serviços ou portas abertas no System Firewall. Você tem alguma adição para fazer ou perguntas? Se sim, chegue -nos usando o formulário de comentário abaixo.