⚡ 68 ferramentas de desenvolvimento, sempre atualizadas — cada nova versão upstream chega ao apt em poucas horas. Entre no Discord

🎁 O mirror apt exige assinatura. Teste todas as ferramentas grátis por 14 dias, sem cartão. Ver preços · 🆓 Existe um espelho grátis para sempre · 🔐 apt retornando 401?

🪵 Instalar o lnav mais recente no Ubuntu

The Logfile Navigator, um visualizador de logs para o terminal com consultas SQL

Última versão: 0.14.1 · atualizado em 2026-11-05
FonteVersão
deb.griffo.io0.14.1 ✅
Ubuntu oficial0.13.2 🛑
← Voltar ao início

O que é o lnav?

O lnav, the Logfile Navigator, é um visualizador de logs para o terminal que junta arquivos de log de várias fontes em uma única visão ordenada por timestamp. Aponte para alguns arquivos, um diretório ou um arquivo compactado e ele descobre os formatos sozinho (syslog, o journal do systemd, logs de acesso do Apache e do nginx, JSON lines e muitos outros), intercala as mensagens pelo horário, colore erros e avisos para que se destaquem e continua acompanhando os arquivos conforme crescem. A partir daí você filtra, pesquisa, pula de um erro para outro e, quando uma pergunta exige mais que uma busca, consulta as mensagens com SQL. Ele abre logs remotos por ssh tão facilmente quanto os locais. O lnav é escrito em C++ por Tim Stack, sob licença BSD-2-Clause.

🚀 Por que a versão mais recente importa: O lnav ganha formatos, funções SQL e recursos de visualização o tempo todo, e cada versão corrige como logs específicos são interpretados. O Ubuntu 26.04 está congelado no lnav 0.13.2, o Noble no 0.11.2 e o Jammy no 0.9.0, então um sistema padrão fica sem a versão atual e sem os formatos e correções que vieram com ela. Este repositório publica o lnav 0.14.1 com o mesmo nome de pacote, então ele substitui o lnav da distribuição no próximo apt upgrade.

⚡ Principais recursos do lnav

🔀 Uma linha do tempo única

Abra juntos o syslog, o log de um aplicativo e o de um servidor web, e o lnav intercala as linhas pelo timestamp: você lê o que aconteceu no sistema inteiro na ordem em que aconteceu.

🔍 Detecção automática de formato

syslog, o JSON do journald, logs de acesso do Apache e do nginx, JSON lines, logfmt e dezenas de outros são reconhecidos sem configuração; níveis, timestamps e campos são interpretados, e erros e avisos ficam destacados.

🗄️ SQL sobre os seus logs

Cada formato reconhecido é uma tabela. Aperte ; e rode consultas SELECT sobre as mensagens: conte erros por host, ache as requisições mais lentas, agrupe códigos de status, com os resultados na mesma janela.

🌐 Logs remotos por ssh

lnav user@host:/var/log/syslog abre um log em outra máquina usando a sua configuração e as suas chaves ssh de sempre, sem instalar nenhum agente no servidor.

📦 Arquivos compactados

Logs rotacionados em .gz e .bz2 abrem direto, assim como arquivos .zip e .tar, então um pacote de suporte pode ser lido sem descompactar antes.

👀 Acompanhar, filtrar e pesquisar

Os arquivos são acompanhados enquanto crescem, filtros escondem ou mantêm linhas por padrão, buscas destacam cada ocorrência e uma única tecla pula para o próximo erro ou aviso, para que nada importante passe batido.

🚀 Sempre à frente dos arquivos oficiais: Debian e Ubuntu congelam as versões dos pacotes quando lançam uma release — este repositório publica novas versões upstream normalmente em poucas horas. Um simples apt upgrade mantém você na versão mais recente.

📦 Instalação a partir do deb.griffo.io

Executar os comandos

Passo 1: Adicionar o repositório

sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(. /etc/os-release; echo ${DEBIAN_CODENAME:-${UBUNTU_CODENAME:-$VERSION_CODENAME}}) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt update
install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(. /etc/os-release; echo ${DEBIAN_CODENAME:-${UBUNTU_CODENAME:-$VERSION_CODENAME}}) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt update

🆓 Existe um espelho grátis para sempre. deb-free.griffo.io distribui pacotes grátis para sempre — sem conta, sem assinatura, no máximo 2 meses atrás do upstream, correções de segurança imediatas. Hoje ele traz cliamp, Ghostty, lazydocker, Oh My Posh, Uncloud e Zed; lnav não está entre elas, então o repositório acima é a única forma de instalar hoje — peça e ela pode ser adicionada.

Como funciona o espelho gratuito →

Passo 2: Instalar o lnav

# Instalar a versão mais recente do lnav (substitui o lnav mais antigo da distribuição)
sudo apt install lnav

# Verificar a instalação
dpkg -s lnav | grep Version
# Instalar a versão mais recente do lnav (substitui o lnav mais antigo da distribuição)
apt install lnav

# Verificar a instalação
dpkg -s lnav | grep Version

Passo 3: Primeira execução

# Os logs em /var/log podem ser lidos pelo root e pelo grupo adm
sudo lnav /var/log

# Ou leia o journal do systemd como JSON, com cada campo interpretado
journalctl -o json | lnav

# Os seus próprios logs não precisam de sudo; o formato é detectado
lnav ~/app/logs/

# Aperte ? dentro do lnav para a ajuda embutida, q para sair
# Os logs em /var/log podem ser lidos pelo root e pelo grupo adm
lnav /var/log

# Ou leia o journal do systemd como JSON, com cada campo interpretado
journalctl -o json | lnav

# Os seus próprios logs não precisam de sudo; o formato é detectado
lnav ~/app/logs/

# Aperte ? dentro do lnav para a ajuda embutida, q para sair

🎯 Exemplos básicos de uso

Lendo e acompanhando logs:

# Logs rotacionados e compactados abrem direto, assim como arquivos
lnav /var/log/nginx/access.log.2.gz support-bundle.tar.gz

# Várias fontes, juntas em uma linha do tempo por timestamp
lnav /var/log/nginx/ ~/app/logs/app.log

# Um log em outra máquina, pela sua configuração ssh de sempre
lnav user@host:/var/log/syslog

Filtros e SQL:

# Dentro do lnav: e / E pulam para o erro seguinte / anterior, w / W para os avisos
# :filter-in error         manter só as linhas que casam
# :filter-out healthcheck  esconder as linhas que casam
# ;SELECT c_ip, count(*) AS hits FROM access_log GROUP BY c_ip ORDER BY hits DESC

# A mesma consulta sem a interface, para scripts
lnav -n -c ';SELECT sc_status, count(*) FROM access_log GROUP BY sc_status' /var/log/nginx/access.log

Mantendo em dia:

# O lnav é atualizado junto com o resto do sistema
sudo apt update && sudo apt upgrade

# Qual versão está instalada e qual é a mais recente disponível
apt policy lnav

# Remover
sudo apt remove lnav
# O lnav é atualizado junto com o resto do sistema
apt update && apt upgrade

# Qual versão está instalada e qual é a mais recente disponível
apt policy lnav

# Remover
apt remove lnav

🔧 Integrações

O lnav lê tudo que produz texto: arquivos, pipes e outras máquinas:

  • ssh: caminhos remotos como user@host:/var/log/syslog passam pela sua configuração e pelas suas chaves ssh; o pacote recomenda o openssh-client para isso
  • Journal do systemd: mande journalctl -o json (com -f para acompanhar) para o lnav e todo campo do journal fica pesquisável e consultável
  • Contêineres: docker logs -f app 2>&1 | lnav ou kubectl logs -f pod | lnav dão à saída dos contêineres o mesmo destaque e o mesmo SQL
  • Área de transferência: marque linhas e aperte c para copiá-las; o pacote sugere wl-clipboard ou xclip para Wayland e X11
  • Formatos próprios: descreva um formato de log interno num arquivo JSON e instale com lnav -i myformat.json; a partir daí ele ganha detecção, destaque e a sua própria tabela SQL
  • Scripts e CI: lnav -n -c roda comandos e consultas sem interface, então o mesmo SQL que responde uma pergunta de forma interativa pode rodar num cron ou num pipeline
  • Documentação: a página man vem com o pacote (man lnav), e o manual completo está em docs.lnav.org

🚀 Por que escolher o deb.griffo.io?

📊 Comparativo de repositórios:
  • Ubuntu oficial: traz o lnav 0.13.2 no 26.04, o 0.11.2 no Noble e o 0.9.0 no Jammy, cada um congelado por toda a vida da sua versão
  • Downloads do upstream: um zip com um binário estático na página de releases do GitHub, copiado na mão para o seu PATH, sem a página man, e a ser baixado de novo a cada versão
  • Compilar do código-fonte: uma toolchain C++ mais os pacotes de desenvolvimento de SQLite, PCRE2, ncurses, libarchive e libcurl, e uma compilação longa
  • deb.griffo.io: versão mais recente com atualizações automáticas

📦 Repositório de build do pacote

Os pacotes Ubuntu são construídos e mantidos automaticamente neste repositório do GitHub:

🔗 Pacotes relacionados

Também disponíveis no deb.griffo.io:

🎯 Ideal para: administradores de sistemas e SREs caçando um incidente em vários serviços, desenvolvedores lendo os logs do aplicativo ao lado dos do servidor web, quem responde perguntas sobre logs com grep, sort e uniq e preferiria escrever uma única consulta SQL, e quem precisa ler logs em servidores que só alcança por ssh.

📦 Últimos lançamentos deste repositório

❓ Perguntas frequentes

O lnav está nos repositórios oficiais do Ubuntu?

Sim, mas o arquivo oficial do Ubuntu traz lnav 0.13.2, enquanto este repositório oferece lnav 0.14.1, recompilado poucas horas após cada lançamento upstream.

Como instalo o lnav mais recente no Ubuntu?

Adicione o repositório deb.griffo.io uma única vez com as instruções acima e execute: sudo apt install lnav. Novos lançamentos chegam pelo sudo apt upgrade normal.

Os pacotes são assinados e como são construídos?

Cada pacote é assinado com a chave GPG do repositório (EA0F721D231FDD3A0A17B9AC7808B4DD62C41256) e construído a partir de lançamentos upstream em repositórios públicos do GitHub que qualquer pessoa pode inspecionar.

Quais versões do Ubuntu são suportadas?

Ubuntu 22.04 Jammy, 24.04 Noble, 25.10 Questing e 26.04 Resolute.

Comece seu teste grátis de 14 dias

Informe seu email e enviaremos suas credenciais do apt em poucos minutos. Sem cartão.

Ele será seu login do apt. Se ficar, pague com o mesmo endereço e nada muda nas suas máquinas.

Um teste por endereço de email. Dois dias antes do fim enviamos um link para manter o acesso. Se você não fizer nada, o acesso termina e nada é cobrado.