Skip to content
Sistema

Scanner não detectado no Ubuntu? Diagnostique primeiro SANE

Avatar illustré de Julien Macé 7 min read
Scanner USB ouvert et câble contrôlé devant un terminal Linux pendant un diagnostic SANE sous Ubuntu
Diagnostic d’un scanner non détecté sur Ubuntu

Você conecta o scanner, abre o Digitalizador de documentos, mas o dispositivo não aparece. Antes de instalar um driver encontrado por acaso, é preciso localizar a interrupção: o Ubuntu vê o dispositivo, o SANE o reconhece, ou a aplicação simplesmente não recebe a lista de scanners?

O diagnóstico abaixo segue essas camadas na ordem. Cada comando serve para escolher o seguinte, tanto com um scanner USB quanto com um modelo de rede no Ubuntu 22.04 ou 24.04.

Scanner USB aberto e cabo verificado diante de um terminal Linux durante um diagnóstico SANE no Ubuntu
O diagnóstico começa separando a detecção USB, SANE e a aplicação.

Separar o problema de hardware do problema SANE

Comece com um scanner USB. O comando lsusb interroga diretamente o barramento USB. Ele permite verificar se o sistema vê um dispositivo em termos de hardware. Se você precisar identificar mais precisamente os dispositivos e as portas USB, você também pode consultar nosso guia para listar as portas USB no Linux.

lsusb

Uma linha correspondente ao fabricante ou ao modelo do scanner indica que a conexão USB é visível pelo kernel. Se nada mudar ao conectar o dispositivo, teste outra porta, retire um eventual hub USB e verifique o cabo. Neste ponto, o Digitalizador de documentos e o SANE ainda não estão em causa.

Em seguida, verifique a detecção pelo recurso SANE:

sane-find-scanner

sane-find-scanner busca scanners SCSI e USB, assim como seus arquivos de dispositivo. Uma detecção aqui confirma que o dispositivo é acessível em termos de hardware. No entanto, não garante a presença de um backend SANE compatível. A documentação do Ubuntu sobre sane-find-scanner especifica que um dispositivo pode ser encontrado mesmo sem um backend utilizável.

A terceira verificação questiona a camada SANE que será utilizada pelas aplicações:

scanimage -L
Resultado Interpretação Ações recomendadas
lsusb não vê nada O problema está antes do SANE: cabo, porta, alimentação ou dispositivo USB. Corrija a conexão e relance os comandos.
lsusb e sane-find-scanner veem o dispositivo, mas scanimage -L permanece vazio O hardware responde, mas o SANE provavelmente não tem o backend apropriado, ou o acesso ao dispositivo está bloqueado. Proceda para o diagnóstico do backend e das permissões.
scanimage -L exibe um scanner SANE fornece um dispositivo utilizável para as aplicações. Teste o backend com scanimage -T, e então abra o Digitalizador de documentos.

Para um scanner de rede, lsusb não traz nada. O scanner deve estar ligado, conectado à mesma rede local que o computador e acessível sem isolamento entre os clientes Wi-Fi.

Instalar e verificar os recursos do Ubuntu

Em uma instalação mínima, os comandos de diagnóstico ou a aplicação podem estar ausentes. Instale os pacotes Ubuntu necessários para essa camada:

sudo apt update
sudo apt install sane-utils simple-scan

sane-utils fornece especialmente scanimage e sane-find-scanner. simple-scan instala o Digitalizador de documentos. A instalação desses pacotes não fornece um driver universal para todos os scanners. Ela prepara a ferramenta de diagnóstico, mas a compatibilidade depende então do backend SANE e do modelo utilizado.

Verifique as versões dos pacotes oferecidos pelos repositórios ativos:

apt policy sane-utils simple-scan

A saída exibe especialmente as versões Installed e Candidate. Uma versão candidata sem versão instalada significa que o pacote está disponível, mas ausente. Uma candidata vazia aponta mais para um problema de repositórios ou de configuração APT. Nesse caso, verifique as fontes do Ubuntu antes de procurar um pacote de terceiros.

Se sane-utils estiver instalado, relance scanimage -L. Se o dispositivo aparecer, a base de software está em ordem. Você poderá então se concentrar no Digitalizador de documentos ao invés de modificar desnecessariamente o sistema.

Quando sane-find-scanner vê o dispositivo, mas scanimage não

Essa diferença indica que a detecção USB funciona, mas o SANE ainda não sabe usar o scanner. Comece testando diretamente o backend:

scanimage -T

scanimage -T realiza um teste do backend SANE. Se o teste passar, a camada SANE responde corretamente. Se scanimage -L permanecer vazio apesar disso, a lista retornada pelo backend pode estar incompleta, especialmente para dispositivos de rede. A página de manual do scanimage descreve a diferença entre a lista de dispositivos e o teste do backend.

Você pode aumentar temporariamente as mensagens do carregador de bibliotecas SANE:

SANE_DEBUG_DLL=3 scanimage -L

O comando então exibirá informações adicionais sobre o carregamento dos backends. Procure por erro de biblioteca ausente, arquivo de configuração inacessível ou backend ignorado. Este nível de log é útil para diagnóstico pontual. Não corrige nada e não deve ser definido permanentemente em sua sessão.

Se o log mostrar um backend ausente, identifique primeiro o modelo exato e sua compatibilidade com o SANE. Alguns fabricantes distribuem um pacote oficial, mas é necessário verificar sua origem, versão do Ubuntu e arquitetura antes de qualquer instalação. Nunca adicione um repositório desconhecido apenas porque um resultado de pesquisa oferece um arquivo DEB.

Se o backend estiver carregado, mas o dispositivo continuar ausente, passe para as permissões. Um dispositivo visível por lsusb pode permanecer inutilizável pela sua sessão de usuário.

Corrigir uma permissão USB adequadamente

Observe os arquivos de dispositivo USB sem modificar seus direitos:

ls -l /dev/bus/usb/*/*

As entradas exibidas correspondem aos dispositivos do barramento. O proprietário, o grupo e os bits de permissão permitem visualizar se sua sessão pode acessá-los. Um erro de permissão no scanimage ou no log SANE confirma essa pista, mas a ausência do scanner na lista não é suficiente por si só.

Desconecte o scanner, aguarde alguns segundos e, em seguida, conecte-o diretamente ao computador. Depois, relance:

lsusb
sane-find-scanner
scanimage -L

Essa reconexão força a recriação do arquivo em /dev/bus/usb e permite verificar a regra udev aplicada ao dispositivo. Se o acesso funcionar apenas após uma reconexão ou apenas em uma sessão particular, verifique sua identidade e os grupos realmente associados à sessão:

id
groups

Uma alteração de grupo só é considerada após uma nova abertura de sessão, mas adicionar cegamente o usuário a um grupo nomeado scanner não é um método confiável. Esse grupo pode não existir, não ser utilizado pela regra do dispositivo ou não corresponder ao backend. Nunca conceda direitos globais com chmod 666 em um dispositivo USB.

Para ir mais longe, compare as regras udev fornecidas pelo Ubuntu ou pelo fabricante com as permissões realmente presentes. Os princípios de controle das permissões Linux se aplicam aqui: corrija a regra direcionada, então abra uma nova sessão e teste o acesso com seu usuário normal.

Scanner de rede: SANE, AirScan e descoberta mDNS

Um scanner de rede pode funcionar sem aparecer em lsusb. O Ubuntu deve descobrir um serviço eSCL/AirScan ou WSD na rede local. Instale o backend AirScan e o serviço Avahi:

sudo apt update
sudo apt install sane-airscan avahi-daemon

Verifique se o serviço de descoberta mDNS está ativo:

systemctl is-active avahi-daemon

A resposta esperada é active. Uma resposta inactive, failed ou a ausência do serviço indica uma etapa a ser corrigida antes de testar a detecção de rede.

Em seguida, interrogue os dispositivos AirScan detectáveis:

airscan-discover

O comando pode exibir os serviços encontrados com seu tipo e endereço. Uma lista vazia não prova que o scanner é incompatível. Ela pode sinalizar uma rede de convidados, um isolamento Wi-Fi, um firewall, Avahi inativo ou um scanner colocado em outra VLAN.

Verifique o perfil de rede utilizado pelo Ubuntu e certifique-se de que o computador não está conectado a uma rede de convidados:

nmcli connection show --active
nmcli device status

Nosso guia sobre como modificar um perfil de rede com nmcli ajuda a verificar a conexão ativa. O scanner e a estação devem poder se comunicar na mesma LAN. A descoberta mDNS usa anúncios de rede que nem sempre atravessam VLANs ou algumas configurações de ponto de acesso.

Depois dessa verificação, relance:

scanimage -L

Se o scanner de rede aparecer, o SANE encontrou o backend e o serviço de descoberta. O projeto sane-airscan dá suporte a scanners de rede eSCL/AirScan e WSD, com descoberta automática ou configuração manual. Se a descoberta automática falhar, embora o endereço IP do scanner seja conhecido, consulte sua documentação para a configuração manual do backend, sem inventar um nome de dispositivo ou URL.

Validar no Digitalizador de documentos

Quando scanimage -L lista o scanner, inicie a aplicação:

simple-scan

A lista visível no Digitalizador de documentos deve corresponder ao dispositivo fornecido pelo SANE. Inicie uma digitalização simples e verifique se a pré-visualização é carregada, se o documento é legível e se o salvamento funciona no formato escolhido.

  • USB ausente em lsusb: corrija primeiro o cabo, a porta ou a alimentação.
  • USB visível, mas ausente em scanimage -L: verifique o backend, os logs SANE e as permissões.
  • Scanner de rede ausente em airscan-discover: verifique o Avahi, a mesma LAN e o isolamento Wi-Fi.
  • Scanner listado, mas aplicação com erro: teste scanimage -T, e então relance o Digitalizador de documentos em sua sessão de usuário.

A validação é concluída quando scanimage -L lista o scanner e simple-scan realiza uma digitalização completa sem privilégios de administrador. Então, inicie um último scan com o documento realmente utilizado e verifique o arquivo salvo.

Share Facebook X WhatsApp LinkedIn Pinterest Reddit Email