A maioria das distribuições Linux modernas utiliza o Systemd, um sistema de inicialização que gerencia serviços através da ativação e desativação de arquivos de “serviço”. Se você precisa listar esses arquivos, o comando systemctl
é a ferramenta essencial.
Este guia detalha diversas maneiras de listar arquivos de serviço do Systemd no Linux. Para começar, certifique-se de que seu sistema Linux utiliza o Systemd. Em seguida, abra um terminal e vamos explorar os comandos necessários.
Listando Serviços Ativos com Systemd
Ao trabalhar com o Systemd, é comum querer saber quais serviços estão em execução. Listar serviços ativos é simples com o comando systemctl --type=service --state=running
.
Este comando exibe uma tabela com todos os serviços ativos e suas descrições. Para executar, abra um terminal e digite:
systemctl --type=service --state=running
Se você busca um serviço específico, a saída pode ser extensa. O systemctl
pode ser usado com grep
para filtrar os resultados. Por exemplo, para verificar se o serviço snapd.service
está ativo, use:
systemctl --type=service --state=running | grep 'snapd'
Para salvar a lista de serviços ativos em um arquivo, use:
systemctl --type=service --state=running > ~/servicos-ativos.txt
E para visualizar o arquivo:
cat ~/servicos-ativos.txt
Listando Serviços Inativos
Além dos serviços ativos, você pode precisar verificar quais estão inativos. Para isso, use o comando systemctl
com o parâmetro --state=inactive
.
Abra o terminal e execute:
systemctl --type=service --state=inactive
Este comando lista todos os serviços inativos. Assim como com os serviços ativos, você pode filtrar a saída usando grep
. Por exemplo, para verificar se updatedb.service
está inativo:
systemctl --type=service --state=inactive | grep 'updatedb.service'
Para salvar a lista de serviços inativos em um arquivo:
systemctl --type=service --state=inactive > ~/servicos-inativos.txt
E para visualizá-lo:
cat ~/servicos-inativos.txt
Listando Todos os Serviços Instalados
Para visualizar todos os serviços instalados, ativos ou não, use o comando systemctl list-unit-files --type=service
. Este comando exibe uma lista completa, sem filtrar por estado.
Execute no terminal:
systemctl list-unit-files --type=service
Você pode usar grep
para encontrar um serviço específico. Por exemplo, para encontrar um serviço chamado meu-servico
:
systemctl list-unit-files --type=service | grep 'meu-servico'
Para salvar a lista em um arquivo de texto:
systemctl list-unit-files --type=service > ~/arquivos-servico.txt
E para visualizar o arquivo:
cat ~/arquivos-servico.txt
Visualizando o Status de um Serviço Individual
Além de listar todos os serviços, é útil verificar o status de um serviço específico. Use o comando systemctl status
seguido do nome do serviço.
No terminal, para verificar o status de NetworkManager.service
, execute:
systemctl status NetworkManager
Para salvar o status em um arquivo:
systemctl status MeuServico > ~/MeuServico-status.txt
E para visualizá-lo:
cat ~/MeuServico-status.txt