Linux / Comando uptime: tempo de atividade e carga média
uptime é um comando que mostra o horário atual, o tempo que o sistema está em execução desde a última inicialização, o número de usuários logados e a média de carga dos últimos 1, 5 e 15 minutos, tudo em uma única linha. É usado como ponto de partida para verificar rapidamente quando o servidor foi reiniciado ou para determinar se a carga é temporária ou persistente.
uptime
No entanto, a carga média não é o mesmo que a utilização da CPU (unidade central de processamento). Ela representa o número médio de tarefas aptas a executar ou aguardando entrada/saída (E/S) em um estado não interrompível, então para uma interpretação precisa, você precisa considerar o número de CPUs, bem como o status do disco e da rede.
Como ler os itens de saída do uptime
O formato típico de saída é o seguinte. Os horários e números reais variam de sistema para sistema.
14:32:10 up 12 days, 3:41, 2 users, load average: 0.42, 0.51, 0.48
O manual oficial do procps-ng uptime explica que esta linha única consiste no horário atual, tempo de atividade, número de usuários logados e a carga média de 1, 5 e 15 minutos.
| Exemplo de saída | Significado | Pontos a serem observados ao interpretar |
|---|---|---|
14:32:10 |
Hora atual do sistema | Afetado pelo fuso horário e pelas configurações de sincronização de tempo. |
up 12 days, 3:41 |
Tempo decorrido desde a última inicialização | Em contêineres, o tempo de atividade do host pode ser exibido. |
2 users |
Número de sessões de login | Contagem baseada em registros de login, não em indivíduos únicos. |
0.42, 0.51, 0.48 |
Média de carga de 1 minuto, 5 minutos, 15 minutos | Não é uma percentagem normalizada pelo número de CPUs lógicas. |
Interprete cada item em detalhes
Horário atual
O primeiro valor é a hora atual reconhecida pelo sistema. Se não coincidir com a hora do registro, verifique o fuso horário e o status de sincronização com timedatectl.
timedatectl status
Tempo de atividade do sistema
Após up, é exibido o tempo decorrido desde a última inicialização. Se for menor do que o esperado, verifique os logs do sistema e registros de inicialização para reinicializações não planejadas, erros de kernel, problemas de energia ou tarefas administrativas.
uptime -p
uptime -s
-p mostra o tempo decorrido em um formato legível, e -s mostra o horário em que o sistema foi iniciado. As opções suportadas podem variar dependendo da versão do procps-ng instalada na sua distribuição, portanto, verifique com uptime --help.
Número de sessões conectadas
O número de usuários é calculado com base nas sessões atualmente conectadas. Se o mesmo usuário fizer login várias vezes via SSH e console, isso pode ser contado como múltiplas sessões. Para ver quem está logado, use w ou who.
w
who
O que é carga média?
Intervalos de tempo dos três números
Os três valores da carga média representam a carga nos últimos 1 minuto, 5 minutos e 15 minutos, respectivamente. Não é uma média aritmética simples, mas uma média móvel ponderada exponencialmente que dá mais peso aos estados recentes, portanto, não mostra diretamente o número de tarefas em um momento específico.
O cálculo dos coeficientes exponenciais está definido no código de cálculo da carga média do kernel Linux.
- Se o valor de 1 minuto for maior do que os valores de 5 e 15 minutos, isso pode indicar que a carga recente está aumentando.
- Se o valor de 1 minuto for menor, isso pode indicar que a carga anteriormente alta está diminuindo.
- Se todos os três valores forem igualmente altos, isso pode indicar que a carga está sustentada.
Compare com o número de CPUs disponíveis
A carga média não é normalizada pelo número de CPUs. Consulte primeiro as unidades de processamento disponíveis ao processo. Esse número pode ser menor que o total instalado, por causa de afinidade ou restrições do ambiente.
O manual de nproc do GNU Coreutils detalha a influência das variáveis de ambiente e das quotas de CPU de cgroups v2 nas versões que oferecem esse suporte.
nproc
Por exemplo, em um sistema com 4 CPUs lógicas, uma carga de 1,00 tem um significado diferente de 1,00 em um sistema com uma única CPU. Como uma regra prática simples, se a carga for semelhante ao número de CPUs lógicas, isso pode indicar que as tarefas estão usando uma parte significativa da capacidade de processamento, quando a carga é dominada por trabalho de CPU, mas isso sozinho não pode confirmar um gargalo.
Por que difere do uso da CPU
A carga média no Linux inclui não apenas as tarefas em execução ou esperando para serem executadas na CPU, mas também as tarefas esperando por E/S em um estado não interrompível. Portanto, mesmo que o uso da CPU seja baixo, a carga média pode aumentar devido a discos lentos ou armazenamento de rede.
Se a carga estiver alta, você precisa verificar o uso da CPU, a fila de execução, a espera de E/S, a memória e a swap juntos.
top
vmstat 1
iostat -xz 1
free -h
iostat geralmente está incluído no pacote sysstat e pode não estar instalado.
Opções mais usadas do uptime
Exiba o tempo de atividade em formato legível
uptime --pretty
-p ou --pretty exibem apenas o tempo de atividade em uma frase legível por humanos. Não é adequado para análise em scripts onde a frase pode ser afetada pelo idioma.
Consulte o horário de inicialização
uptime --since
-s ou --since exibem o horário de início do sistema no formato YYYY-MM-DD HH:MM:SS. Como esse valor é calculado com base no horário atual, verifique-o juntamente com os logs de inicialização em sistemas onde a configuração de horário foi alterada significativamente.
Consulte o contêiner e o formato bruto
O manual atual do procps-ng documenta a opção --container para solicitar o tempo de atividade do contêiner e a opção --raw para exibir o tempo atual e o tempo de atividade em segundos.
uptime --container
uptime --raw
Essas opções podem não estar disponíveis em distribuições mais antigas do procps-ng. Se o ambiente de execução do contêiner ou o kernel não fornecerem as informações relacionadas, os valores esperados podem não aparecer, então você deve verificar o suporte no ambiente real.
O que verificar quando a carga média estiver alta
Comece verificando as tendências e o número de CPUs
- Verifique se os valores de 1 minuto, 5 minutos e 15 minutos do
uptimeestão aumentando, diminuindo ou estáveis. - Use
nprocpara verificar as unidades de processamento disponíveis ao processo. - Use
topoupspara encontrar processos que estão usando muita CPU. - Use
vmstateiostatpara verificar a fila de execução e a espera de I/O. - Use
freepara verificar a memória disponível e o uso de swap.
Evite concluir que há uma falha com base em um único número
Pode ser normal que a carga de 1 minuto aumente brevemente devido a tarefas curtas de compressão ou backups. Por outro lado, se o valor de 15 minutos continuar a subir e os tempos de resposta se deteriorarem, é provável que seja um gargalo persistente. Os limites devem ser definidos não apenas com base na contagem de CPUs, mas também considerando o tráfego usual, tipos de tarefas, desempenho de armazenamento e latência do serviço.
Se a observação regular for necessária, colete as métricas de carga média, CPU, E/S, memória e aplicação em conjunto, usando um sistema de monitoramento, em vez de depender de uma saída única do uptime.
Pontos a observar em contêineres e máquinas virtuais
O uptime de uma máquina virtual geralmente indica o tempo de execução do sistema operacional convidado. Como os contêineres compartilham o kernel do host, dependendo da ferramenta e do ambiente, o tempo de atividade do host pode ser exibido. Verifique o suporte ao --container no procps-ng mais recente, a configuração de namespace do runtime de contêiner e a fonte de dados do sistema de monitoramento juntos.
Além disso, os limites de CPU atribuídos a um contêiner e os valores relatados pelo nproc podem nem sempre corresponder à capacidade esperada pelo administrador. Verifique também as solicitações e limites de CPU do orquestrador de contêiner e as métricas de limitação.
Perguntas frequentes
Uma média de carga de 1,00 significa 100% de uso da CPU?
Não. A média de carga reflete o número de tarefas em estados aptos a executar ou de espera de E/S não interrompível e não é normalizada pelo número de CPUs. O uso da CPU deve ser verificado separadamente usando ferramentas como top ou mpstat.
Por que o tempo de atividade de repente diminuiu?
Na maioria dos casos, o sistema foi reiniciado. Verifique se foi uma atualização planejada ou se houve problemas de energia ou erros de kernel usando journalctl --list-boots, registros do sistema e registros operacionais. Dependendo das configurações de retenção de log, registros de inicializações anteriores podem não existir.
Por que o número de usuários conectados é diferente do número real de pessoas?
Se uma única pessoa abrir múltiplas sessões SSH ou de console, cada uma pode ser contada separadamente, e pode haver casos em que os registros de login apareçam anormais. Verifique o terminal e o horário de login usando w ou who.
Como posso verificar o tempo de atividade continuamente?
Você pode executá-lo em intervalos regulares usando watch.
watch -n 5 uptime
Se você precisar de tendências de longo prazo e alertas, use um sistema de monitoramento em vez de assistir à tela de saída.
Resumo
uptime é o primeiro passo para verificar rapidamente se o sistema reiniciou e a tendência de carga. As três cargas médias na saída representam intervalos de 1 minuto, 5 minutos e 15 minutos, não o uso da CPU ou percentuais.
Quando a carga média estiver alta, verifique o número de CPUs lógicas, o uso da CPU, a fila de execução, a espera de E/S, a memória disponível e o uso de swap em conjunto. A interpretação dos itens de memória é explicada em Usando o comando free (em inglês).




