Login
Login

O que é um daemon na computação?

O que é um daemon na computação?
Hostman Team
Redator técnico
O sistema Linux
23.10.2025
Reading time: 10 min

O termo daemon vem da mitologia grega antiga e referia-se a um ser imaterial que influenciava o mundo humano.

Na computação, especialmente em sistemas operacionais do tipo UNIX, um daemon é um processo em segundo plano que é executado sem interação direta do usuário. Ele não depende de um terminal ou interface gráfica e geralmente é iniciado junto com o sistema ou sob certas condições.

O que é um daemon

A principal função de um daemon é fornecer serviços específicos a outros processos ou usuários. Por exemplo, um daemon pode escutar portas de rede aguardando conexões, monitorar eventos do sistema e reagir quando determinadas condições são atendidas, gerenciar tarefas agendadas (como o cron), enviar e-mails (sendmail) e muito mais.

No Windows, o equivalente mais próximo de um daemon é um serviço (Service). A diferença está principalmente em como eles são iniciados, registrados, gerenciados e configurados dentro do sistema operacional. No entanto, o objetivo é o mesmo: garantir a operação contínua em segundo plano de certas funções ou serviços.

Principais características de um daemon

  • Executa em segundo plano: normalmente, o usuário não vê nenhuma interface do daemon; ele não escreve na saída padrão (ou a redireciona para logs) e não solicita entrada de teclado.

  • Autônomo: um daemon é iniciado na inicialização do sistema, quando é acionado por um sistema init (como o systemd), ou manualmente pelo usuário (via scripts, cron, etc.).

  • Longa duração: idealmente, um daemon é executado indefinidamente, a menos que ocorra um erro crítico ou ele receba um sinal de parada explícito.

  • Isolado: normalmente é executado sob uma conta de usuário ou grupo separado, com privilégios limitados, o que torna os serviços mais seguros e fáceis de gerenciar.

  • Registro: em vez de usar entrada/saída padrão, os daemons gravam informações em arquivos de log ou no registrador do sistema (journald, syslog, etc.), o que é útil para depuração e diagnóstico.

Daemons no Linux

Historicamente, quase todas as tarefas de segundo plano do sistema no Linux são implementadas como daemons. O sistema operacional inclui dezenas deles, cada um responsável por uma função específica. Alguns exemplos:

  • sshd (Secure Shell Daemon): escuta na porta 22 (por padrão) e permite que usuários remotos se conectem via SSH criptografado. Sem o sshd, o acesso remoto ao terminal seria praticamente impossível.

  • cron: um daemon de agendamento de tarefas. Ele verifica as entradas do crontab e executa scripts ou comandos em horários definidos, como limpeza de logs, envio de relatórios, verificações do sistema, etc.

  • syslogd / rsyslog / journald: daemons de registro do sistema que coletam mensagens do kernel, utilitários, outros daemons e aplicativos, salvando-as em arquivos de log ou no journal.

  • NetworkManager ou Wicd: daemons que gerenciam configurações de rede — automatizando conexões com redes com ou sem fio, alternância entre redes, configuração de VPNs e muito mais.

Esses daemons são iniciados junto com o sistema e registrados no gerenciador de serviços (por exemplo, systemd). Eles permanecem em execução até que o sistema seja desligado ou reiniciado. Os usuários interagem com eles indiretamente — por meio de arquivos de configuração, comandos de terminal (service, systemctl) ou solicitações de rede (se o daemon fornecer uma interface HTTP/S, SSH ou outra).

Como criar e gerenciar daemons

Para implementar um daemon, siga estas etapas:

  1. Criação do processo (fork): o processo pai chama fork() e continua a execução do código do daemon no processo filho.

  2. Desvincular do terminal de controle (setsid): para evitar interferência do usuário (por exemplo, fechar o terminal), o daemon chama setsid() para iniciar uma nova sessão e tornar-se o líder dela.

  3. Fechar descritores de entrada/saída padrão: como o daemon não deve escrever na tela nem aguardar entrada, stdin, stdout e stderr são fechados ou redirecionados para arquivos de log.

  4. Tratar sinais e registros: para permitir um desligamento limpo ou recarregamento de configuração, o daemon deve tratar sinais (SIGTERM, SIGHUP, etc.). O registro normalmente é feito via syslog ou arquivos.

  5. Loop principal: após a inicialização, o daemon entra em seu loop principal: aguarda eventos, os trata e repete até ser interrompido.

Vamos ver como criar um daemon no Ubuntu 22.04 usando um servidor em nuvem da Hostman.

1. Escrever o daemon em C

Crie um arquivo chamado mydaemon.c e insira o seguinte código:

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <syslog.h>

int main() {
    // Abrir syslog
    openlog("mydaemon", LOG_PID, LOG_DAEMON);
    syslog(LOG_NOTICE, "Daemon started");

    // Loop infinito principal
    while (1) {
        // Suas tarefas em segundo plano: monitoramento, filas, etc.
        syslog(LOG_NOTICE, "Performing task...");
        sleep(60);
    }

    // Se o loop for encerrado
    syslog(LOG_NOTICE, "Daemon stopped");
    closelog();

    return 0;
}

2. Compilar o programa

Primeiro, atualize seus pacotes:

sudo apt update && sudo apt upgrade

Instale o compilador GCC, se ainda não estiver instalado:

sudo apt install gcc

Compile o daemon:

gcc mydaemon.c -o mydaemon

3. Mover o executável

Mova o binário para /usr/local/bin/, um local padrão para utilitários personalizados:

mv mydaemon /usr/local/bin/mydaemon

4. Criar um serviço systemd

Crie um arquivo de unidade chamado mydaemon.service:

sudo nano /etc/systemd/system/mydaemon.service

Insira o seguinte conteúdo:

[Unit]
Description=My Daemon
After=network.target

[Service]
Type=simple
ExecStart=/usr/local/bin/mydaemon
Restart=on-failure

[Install]
WantedBy=multi-user.target

Explicação dos campos:

  • Description: descrição exibida no systemctl status.
  • After=network.target: garante que o daemon inicie após a rede estar ativa.
  • Type=simple: o daemon não cria subprocessos, é executado como um único processo.
  • ExecStart: caminho para o executável do daemon.
  • Restart=on-failure: reinicia automaticamente se o daemon falhar.
  • WantedBy=multi-user.target: faz o serviço iniciar no ambiente multiusuário padrão.

5. Iniciar e monitorar o daemon

sudo systemctl daemon-reload          # Recarregar configuração do systemd
sudo systemctl start mydaemon         # Iniciar o daemon
sudo systemctl status mydaemon        # Verificar status

Se tudo estiver funcionando, o status mostrará active. Para visualizar os logs:

journalctl -u mydaemon.service -e

Exemplos de uso de daemons

  • Servidores web

Sua função é escutar em uma porta de rede (geralmente 80 ou 443), aceitar solicitações HTTP/HTTPS, gerar uma resposta (como uma página HTML, dados JSON etc.) e enviá-la de volta ao cliente. Na maioria dos casos, um servidor web é iniciado com o sistema e permanece em execução até o desligamento ou execução de um comando de parada (por exemplo, systemctl stop nginx).

  • Daemons de banco de dados

MySQL/MariaDB, PostgreSQL, MongoDB — todos são daemons. Eles são iniciados com o sistema e continuam rodando em segundo plano, aceitando solicitações de aplicativos clientes ou serviços web. Esses daemons registram atividades, suportam configuração por arquivos e são gerenciados por utilitários específicos (ou systemd).

  • Agendadores de tarefas (cron, atd)

O daemon cron verifica a tabela de agendamentos (crontab) e executa programas nos horários ou intervalos definidos pelo usuário. Isso permite automatizar backups, atualizações do sistema, verificações de integridade e muitas outras tarefas rotineiras.

O atd é um daemon semelhante, mas executa tarefas apenas uma vez em um horário específico (diferente do cron, que as executa regularmente).

  • Access and Control Services (sshd, xrdp)

sshd (Secure Shell Daemon) fornece acesso remoto via protocolo SSH. xrdp permite conexões de desktop remoto usando o protocolo RDP. Ele atua como um daemon que escuta conexões de rede em uma porta específica.

  • Init System Daemons (systemd, init, Upstart)

Nos sistemas modernos, o papel do “daemon principal” é desempenhado pelo systemd (que substitui o antigo sistema SysV init). O systemd é o primeiro processo a ser iniciado após o kernel e é responsável por inicializar e gerenciar todos os outros serviços e processos. Ele os inicia em paralelo e gerencia suas dependências. Em resumo, o systemd é ele próprio um daemon que “orquestra” todos os outros do sistema.

Vantagens e desvantagens dos daemons

Vantagens:

  • Automação: os daemons permitem automatizar o comportamento do sistema — desde responder a solicitações de rede até agendar tarefas — sem intervenção do usuário.

  • Isolamento: por rodarem sob contas ou grupos separados e desvinculados do terminal, aumentam a segurança, limitando possíveis danos em caso de comprometimento.

  • Operação contínua: um daemon pode continuar prestando serviços (como um servidor web) sem interrupções, mesmo que o usuário saia ou feche o console.

  • Facilidade de gerenciamento: o Linux oferece ferramentas de sistema (como systemd e scripts init) para gerenciar todos os daemons de forma centralizada — iniciar, parar, reiniciar e registrar.

Desvantagens:

  • Complexidade de depuração: como os daemons rodam em segundo plano e não exibem saída no console, a depuração requer logs detalhados e configurações mais complexas (flags de debug, rastreamento, etc.).

  • Riscos de segurança: se um daemon for executado com privilégios elevados (por exemplo, como root), qualquer vulnerabilidade pode comprometer todo o sistema. É melhor executá-los com contas limitadas.

  • Gerenciamento de dependências: alguns daemons podem falhar se precisarem de acesso à rede antes que ela esteja ativa. Os sistemas init modernos resolvem isso, mas nos scripts SysV clássicos isso era comum.

  • Maior consumo de recursos: qualquer processo em execução contínua consome recursos do sistema (memória, CPU). Muitos daemons simultâneos podem impactar o desempenho, especialmente em sistemas com recursos limitados.

Conclusão

Os daemons são uma parte essencial da arquitetura dos sistemas operacionais Linux, oferecendo amplas capacidades de automação e serviços em segundo plano. Eles permitem que administradores configurem de forma flexível operações de rede, tarefas agendadas, logs, segurança e muito mais.

Escrever seu próprio daemon requer compreensão de processos, sinais, chamadas de sistema e atenção especial ao registro e à segurança.

Os sistemas init modernos (especialmente o systemd) simplificaram a gestão de daemons e a lógica de serviços, tornando a criação de serviços personalizados mais estruturada e flexível. No entanto, ainda é um campo complexo que exige design cuidadoso, depuração e manutenção contínua.

Se você busca uma solução confiável, de alto desempenho e econômica para seus fluxos de trabalho, a Hostman oferece opções de hospedagem VPS Linux, incluindo Debian VPS, Ubuntu VPS e VPS CentOS.

O sistema Linux
23.10.2025
Reading time: 10 min

Semelhante

O sistema Linux

Criando links simbólicos no Linux: um tutorial passo a passo

Symlinks, também conhecidos como links simbólicos, funcionam como atalhos no mundo Linux. Eles permitem criar um novo nome (ou link) que aponta para outro arquivo, diretório ou qualquer objeto dentro do sistema de arquivos. Sua principal vantagem é reduzir redundâncias, evitando a necessidade de manter várias cópias do mesmo arquivo. Quando você usa um symlink, alterações feitas no arquivo original são refletidas em todos os seus links simbólicos. Isso elimina a necessidade de atualizar diversas cópias manualmente. Além disso, symlinks oferecem uma forma flexível de gerenciar permissões de acesso. Por exemplo, usuários diferentes, com diretórios apontando para subconjuntos de arquivos, podem limitar a visibilidade além do que as permissões padrão permitiriam. Em essência, symlinks são indispensáveis para uma gestão eficiente de arquivos e organização, simplificando atualizações e controle de acesso em sistemas complexos. Requisitos Para seguir este tutorial, você vai precisar de: Um servidor em nuvem, máquina virtual ou computador rodando um sistema operacional Linux. Na Hostman, você pode implantar um servidor com Ubuntu, CentOS ou Debian em menos de um minuto. Criando links simbólicos com o comando ln O comando ln é usado para criar links simbólicos no Linux. Siga estas etapas: Abra uma janela do terminal. Navegue até o diretório onde deseja criar o link simbólico. Use a seguinte sintaxe para criar um symlink: ln -s /path/to/source /path/to/symlink Substitua /path/to/source pelo caminho real do arquivo ou diretório que deseja vincular e /path/to/symlink pelo nome/local desejado para o link simbólico. Entendendo as opções do comando ln O comando ln oferece várias opções para personalizar a criação de symlinks:  -s: Cria um link simbólico.  -f: Sobrescreve um symlink existente.  -n: Trata o destino do symlink como um arquivo comum. Explore essas opções conforme suas necessidades de criação de links. Criando links simbólicos para arquivos Para criar um symlink para um arquivo, use o comando ln com a opção -s. Aqui está um exemplo de como criar um link simbólico para um arquivo usando o comando ln. O comando abaixo cria um link simbólico chamado symlink_file no diretório atual, apontando para o arquivo /path/to/file: ln -s /path/to/file /path/to/symlink_file Substitua /path/to/file pelo caminho real do arquivo e /path/to/symlink_file pelo nome desejado do symlink. Neste exemplo, o caminho é absoluto. Você também pode criar um symlink usando um caminho relativo. No entanto, lembre-se de que, para que o symlink funcione corretamente, qualquer processo que o acesse deve primeiro definir o diretório de trabalho correto; caso contrário, o link pode parecer quebrado. Criando links simbólicos para diretórios Você pode usar o comando ln para criar um link simbólico que aponta para um diretório. Por exemplo, o comando abaixo cria um symlink chamado symlink_directory no diretório atual, apontando para /path/to/directory: ln -s /path/to/directory /path/to/symlink_directory Esse comando cria um link simbólico chamado symlink_directory na sua localização atual, vinculando-o ao diretório /path/to/directory. Sobrescrever um link simbólico à força Você pode usar a opção -f com o comando ln. Por exemplo, se o caminho em um symlink estiver incorreto devido a um erro de digitação ou se o destino tiver sido movido, você pode atualizar o link assim: ln -sf /path/to/new-reference-dir symlink_directory Usar a opção -f garante que o conteúdo do symlink antigo seja substituído pelo novo destino. Ela também remove automaticamente quaisquer arquivos ou symlinks conflitantes. Se você tentar criar um symlink sem -f e o nome já estiver em uso, o comando falhará. Verificando links simbólicos Você pode exibir o conteúdo de um symlink usando o comando ls -l no Linux: ls -l symlink_directory A saída mostrará o symlink e seu destino: symlink_file -> /path/to/reference_file Aqui, symlink_file é o nome do link simbólico, e ele aponta para o arquivo /path/to/reference_file. ls -l /path/to/symlink A saída mostrará o symlink e seu destino. Boas práticas para links simbólicos Use nomes descritivos para os links simbólicos. Evite links circulares para prevenir confusão no sistema. Atualize os symlinks se o local de destino mudar. Casos de uso para links simbólicos Gerenciamento de arquivos de configuração: Vincular arquivos de configuração entre sistemas. Controle de versão: Vincular simbolicamente bibliotecas comuns para projetos de desenvolvimento. Backup de dados: Criar symlinks para diretórios de backup. Possíveis problemas e soluções Problemas de permissão: Certifique-se de que as permissões corretas estejam definidas para a origem e o symlink. Links quebrados: Atualize symlinks se arquivos de destino forem movidos ou excluídos. Links entre sistemas de arquivos: Symlinks podem não funcionar entre sistemas de arquivos diferentes. Conclusão Symlinks são valiosos para otimizar o gerenciamento de arquivos e a manutenção do sistema. Eles simplificam atualizações entre várias aplicações que compartilham um arquivo comum, reduzindo a complexidade de manutenção. Também oferecem uma alternativa a diretórios como /etc, que geralmente exigem acesso root para modificar arquivos. Desenvolvedores acham os symlinks úteis para alternar facilmente entre arquivos locais de teste e versões de produção. Seguindo este tutorial, você dominou o processo de criação de links simbólicos no Linux. Aproveite os symlinks para uma gestão eficiente de arquivos e maior personalização.
15 December 2025 · 6 min to read
O sistema Linux

Comandos systemctl reiniciar, recarregar e parar um serviço

For Linux operating systems, systemctl is a system and service manager that is mostly used to manage services and their configurations. It is a component of systemd, which also handles other system-level functions, process management, and system boot. Maintaining a reliable and effective system requires knowing how to manage services. restart, reload, and stop are among the most significant commands; each has a distinct function in managing services.  This tutorial will go through these commands in details, covering their syntax, use cases, and real-world examples to help users grasp them and manage systems more successfully.  Entendendo o gerenciamento de serviços com systemctl A maioria das distribuições modernas de Linux utiliza o systemctl como a principal ferramenta de administração de serviços do sistema, um componente essencial para manter um ambiente Linux estável. O systemctl, parte da suíte systemd, ajuda administradores a habilitar, desabilitar, monitorar e controlar serviços. Dominar o systemctl pode melhorar a resposta, o desempenho e a confiabilidade do sistema. Um serviço — ou um conjunto de processos que operam em segundo plano para fornecer funções do sistema, como rede, compartilhamento de arquivos ou hospedagem de aplicações — é chamado de serviço no ambiente Linux. Embora esses serviços possam ser controlados manualmente, eles normalmente são iniciados automaticamente quando o sistema é inicializado. Serviços críticos, como servidores web, bancos de dados e ferramentas de rede, precisam ser gerenciados corretamente para garantir sua disponibilidade e funcionamento eficiente. Administradores podem reduzir o tempo de inatividade recarregando ou reiniciando serviços usando os comandos do systemctl, sem interferir nas atividades do sistema. Garanta que os serviços estejam disponíveis após uma reinicialização usando os comandos enable/disable para automatizar sua inicialização. Monitore o status dos serviços e logs para diagnosticar rapidamente problemas. Devido à sua versatilidade, o systemctl é uma ferramenta indispensável para a administração de serviços em qualquer sistema Linux. Iniciar um serviço usando systemctl Iniciar um serviço no Linux com systemctl é uma tarefa simples, porém essencial, para controlar diferentes processos em segundo plano, como servidores web, bancos de dados ou serviços de rede. Um serviço deve ser iniciado pelo usuário e autorizado a executar sua função designada. Use o comando abaixo para iniciar um serviço. sudo systemctl start <nome_do_servico> Onde: sudo: concede os privilégios administrativos necessários para iniciar o serviço. systemctl: o comando do Linux para gerenciar serviços. start: o comando que instrui o sistema a iniciar o serviço. <nome_do_servico>: o nome do serviço (por exemplo: apache2, nginx, ssh) que o usuário deseja iniciar. Exemplo: sudo systemctl start apache2 Esse comando instrui o serviço Apache a iniciar. Se o serviço já estiver em execução, nada visível acontecerá. Caso não esteja em execução, o comando o iniciará. Reiniciar um serviço usando systemctl Para administradores de sistemas Linux, reiniciar um serviço usando o systemctl é fundamental, pois o serviço é interrompido e iniciado novamente. Isso é especialmente útil ao solucionar problemas de serviços ou após alterações de configuração ou atualizações de software. Reiniciar um serviço garante que ele utilize a configuração ou o código mais recente. Use o comando abaixo para reiniciar um serviço. sudo systemctl restart <nome_do_servico> Exemplo: sudo systemctl restart apache2 Esse comando primeiro interrompe o serviço Apache e depois o reinicia. Isso é especialmente útil quando o usuário modificou o arquivo de configuração e deseja aplicar as alterações. Reiniciar um serviço pode ajudar a resolver problemas temporários ou liberar recursos. Quando um serviço não está funcionando corretamente, reiniciá-lo geralmente resolve o problema. Recarregar a configuração de um serviço com systemctl No Linux, um serviço pode aplicar novas alterações de configuração sem precisar ser completamente interrompido e reiniciado, utilizando o comando de recarga do systemctl. Isso é especialmente útil quando pequenas alterações são feitas na configuração e não se deseja interromper o funcionamento do serviço. Use o comando abaixo para recarregar um serviço. sudo systemctl reload <nome_do_servico> Exemplo: sudo systemctl reload apache2 Esse comando aplica as alterações feitas no arquivo de configuração do Apache sem reiniciar completamente o servidor, minimizando interrupções para os usuários. Recarregar é uma opção mais suave do que reiniciar, pois não encerra conexões ativas nem processos em execução. Parar serviços com systemctl Execute o comando abaixo para parar um serviço em execução. Se um serviço estiver configurado para iniciar automaticamente na inicialização do sistema, pará-lo interromperá apenas suas operações atuais, mas não impedirá que ele seja iniciado novamente na próxima reinicialização. Esse simples comando systemctl stop permite ao usuário encerrar processos sem alterar o comportamento de inicialização, sendo útil para o gerenciamento de serviços. sudo systemctl stop <nome_do_servico> Exemplo: sudo systemctl stop apache2 Verificar o status de serviços usando systemctl Monitorar e verificar se os serviços estão funcionando corretamente é uma das tarefas mais importantes da administração de sistemas Linux. Com o comando systemctl, é possível visualizar informações detalhadas sobre o status de um serviço, como se ele está ativo, inativo ou se apresentou algum problema. Após reiniciar ou recarregar um serviço, verificar seu status ajuda a confirmar que ele voltou a funcionar como esperado. Use o comando abaixo para visualizar o status atual de um serviço. sudo systemctl status <nome_do_servico> Exemplo: sudo systemctl status apache2 O comando status fornece informações detalhadas sobre o serviço, geralmente incluindo: Active State:  mostra se o serviço está em execução (active), parado ou em falha. Loaded State:  indica se o arquivo de unidade (arquivo de configuração) do serviço está carregado na memória. Main PID:  mostra o ID do processo principal do serviço. Recent Logs: exibe as entradas de log mais recentes relacionadas ao serviço para auxiliar na solução de problemas. Solução de problemas comuns Diversos problemas podem ocorrer ao gerenciar serviços no Linux usando o systemctl, incluindo encerramentos inesperados, falhas ao iniciar ou erros de configuração. Resolver esses problemas de forma eficaz é essencial para manter o desempenho e a estabilidade do sistema. A seguir estão os problemas mais comuns e os passos recomendados para solucioná-los. O comando sudo systemctl start retorna um erro ou não inicia o serviço conforme esperado. Execute sudo systemctl status <nome_do_servico> para obter detalhes sobre a causa da falha do serviço. Utilize journalctl para visualizar os logs do sistema relacionados ao serviço e identificar possíveis problemas subjacentes. O comando systemctl status mostra a causa da falha. Procure mensagens como "Main PID exited" ou "Job for <nome_do_servico> failed" para entender o problema. Muitas vezes, reiniciar o serviço pode corrigir falhas temporárias. Um serviço não inicia automaticamente após reiniciar o sistema. Certifique-se de que o serviço está configurado para iniciar automaticamente. Execute sudo systemctl is-enabled. Se ele não estiver habilitado, ative-o com systemctl enable <nome_do_servico>. O serviço não inicia ou não executa ações devido a erros de permissão. Verifique se o serviço possui permissões adequadas para acessar os arquivos e diretórios necessários. Por exemplo: servidores web precisam de permissão de leitura para arquivos de configuração e diretórios web. Confirme também que o serviço está sendo executado com o usuário ou grupo correto. Alguns serviços precisam ser executados por um usuário específico definido no arquivo de unidade. O serviço inicia com configuração incorreta ou alterações feitas no arquivo de unidade não são aplicadas. Execute sudo systemctl daemon-reload após modificar um arquivo de unidade para recarregar a gestão do systemd. Certifique-se de que o arquivo de unidade corresponde à configuração esperada e está localizado em /lib/systemd/system/ ou /etc/systemd/system/. Esses procedimentos podem ajudar a resolver a maioria dos problemas comuns relacionados a serviços gerenciados pelo systemctl no Linux. A estabilidade e a integridade do sistema podem ser preservadas revisando regularmente os logs e o status dos serviços. Conclusão Em conclusão, administradores de sistemas devem estar familiarizados com o uso do systemctl para gerenciar serviços no Linux. Ele oferece um conjunto de ferramentas avançadas para controlar, monitorar e solucionar problemas de serviços de forma eficiente. Compreender os comandos fundamentais — incluindo recarregar, parar, reiniciar e verificar o status de serviços — permite garantir que as funções essenciais do sistema operem corretamente. Seja ao gerenciar serviços de rede, bancos de dados ou servidores web, dominar o systemctl ajuda a manter um ambiente Linux estável e eficiente. Além disso, a habilidade de resolver problemas comuns, como falhas de serviços, erros de permissão ou problemas de configuração, contribui para reduzir o tempo de inatividade e preservar a confiabilidade do sistema. A integração do systemctl com o journalctl possibilita uma análise completa de logs, facilitando diagnósticos rápidos e soluções eficazes. Você pode testar nosso VPS Linux confiável para seus projetos. 
11 December 2025 · 9 min to read
O sistema Linux

Como listar usuários no Linux

Administrar e proteger um sistema Linux exige monitoramento e gerenciamento cuidadoso dos usuários. Saber quem está utilizando o sistema e quais ações estão sendo executadas é fundamental para manter a segurança e a eficiência de servidores e computadores Linux. Este guia apresenta vários métodos para verificar usuários no Linux, incluindo o uso do terminal e da interface gráfica (especificamente, o Gnome). Os métodos descritos ajudam você a obter informações sobre contas de usuário, suas atividades, histórico de login e muito mais. Existem diversas maneiras de listar contas de usuário. A seguir, mostramos como acessar a lista de usuários do Linux pelo terminal e pela interface gráfica. Terminal Nesta seção, exploraremos métodos para exibir usuários no Linux usando a linha de comando. Arquivo /etc/passwd O arquivo /etc/passwd contém informações sobre todos os usuários registrados no sistema. Cada linha representa uma conta de usuário e inclui: nome, senha, UID (ID do usuário), GID (ID do grupo), informações adicionais (GECOS), diretório home e shell de login. Para visualizar seu conteúdo: cat /etc/passwd Você também pode abrir o arquivo em um editor de texto como nano ou vim. Se você estiver usando um servidor em nuvem da Hostman com um usuário não administrador, o arquivo pode parecer assim: (Exemplo visual no documento original) As senhas aparecem como x por motivos de segurança. Elas são armazenadas no arquivo /etc/shadow. Para exibir apenas os nomes dos usuários: sed 's/:.*//' /etc/passwd Comando who O comando who mostra uma lista dos usuários ativos, incluindo nome, terminal, data e hora de login e, quando disponível, o endereço IP: who Se você precisa apenas dos nomes dos usuários atualmente conectados: users Diferença: who → fornece informações detalhadas users → lista apenas os nomes Comando w O comando w mostra uma visão detalhada dos usuários ativos, incluindo: atividades atuais, tempo de login, carga do sistema. Execute: w Comando last O comando last exibe o histórico de logins, incluindo datas, horários e origem das conexões. É útil para auditoria e segurança: last Comando lastlog O comando lastlog mostra o último login de cada usuário: lastlog Interface gráfica Para quem prefere trabalhar com interface gráfica, veja como verificar usuários em sistemas com o ambiente Gnome. Ferramentas semelhantes não são mais suportadas no KDE Plasma. Existem pelo menos duas formas de acessar a lista de usuários no Gnome. Menu “Usuários” Abra Configurações pelo menu do sistema. Procure e abra a aba Usuários. Clique em Desbloquear (canto superior direito) para liberar todas as funções. Na parte superior, você verá a lista de usuários existentes; abaixo, os detalhes e configurações de cada conta. Utilitário “Users” Você também pode instalar o utilitário adicional gnome-system-tools: sudo apt install gnome-system-tools (Em outras distribuições use dnf, pacman, etc.) Depois de instalado: Abra o menu de busca. Digite Usuários. Selecione o utilitário recém-instalado. A janela permitirá visualizar e editar contas, tipos de usuário, senhas e outras configurações. Resumo Se você usa o terminal, estes comandos são úteis: /etc/passwd — lista todas as contas existentes who — lista usuários ativos com detalhes w — mostra atividades atuais dos usuários last — mostra o histórico de logins lastlog — exibe o último login de cada usuário Se utiliza Linux com Gnome, você pode usar: o menu Usuários, ou o utilitário gnome-system-tools. Entender quem acessa seu sistema e quais ações executam ajuda a detectar problemas rapidamente e melhora a administração do sistema. Escolha o método que mais se adapta às suas necessidades.
11 December 2025 · 4 min to read

Tem perguntas,
comentários ou preocupações?

Nossos profissionais estão disponíveis para ajudá-lo a qualquer momento,
seja para assistência ou apenas se você não souber por onde começar.
Envie-nos um e-mail
Hostman's Support