Compartilhando uma impressora do Ubuntu para o Mac para que ela possa ser encontrada via navegação

0

Eu tenho um PC desktop server rodando Ubuntu 10.10, com uma impressora Canon MX350 Canon conectada via USB. Eu quero compartilhar a impressora para que eu possa imprimir a partir de um laptop MacBook Pro com o OS X 10.6.6 e, possivelmente, com vários outros clientes.

(Embora a impressora possa apresentar vários serviços de impressão na rede, de alguma forma isso funciona de maneira muito incerta para mim, então eu desliguei seus recursos de rede.)

O programa system-config-printer encontrou a impressora facilmente, e eu posso imprimir arquivos localmente em server . Ativei o compartilhamento de impressoras e adicionei a impressora ao Mac. Cliquei em Preferências do Sistema, Imprimir & Fax, +, IP. Selecionei IPP como o protocolo e server.home.gateway como o endereço, para o qual a caixa de diálogo respondeu "Endereço válido e completo". (Meu roteador ADSL serve esse endereço DNS para server ). Escrevi Canon como o nome da fila (e também tentei deixar o campo vazio), já que é isso que aparece como em server .

Quando tentei imprimir, a impressora ficou "pausada" no Mac. Ativei o log de depuração em cupsd.conf e notei mensagens de erro como esta:

Get-Printer-Attributes ipp://server.home.gateway:631/Canon
Get-Printer-Attributes client-error-not-found: The printer or class was not found.
Returning IPP client-error-not-found for Get-Printer-Attributes (ipp://server.home.gateway:631/Canon) from 192.168.0.2

(Se eu deixei o nome da fila vazio, a impressora não encontrada foi apenas ipp://server.home.gateway:631/ )

Após um monte de adivinhações e navegação na documentação do CUPS, mudei a fila para printers/Canon e a impressão começou a funcionar. Fico feliz que funcione, mas isso é claramente abaixo do ideal: não havia nenhuma indicação na GUI do Mac sobre as filas de impressoras disponíveis no servidor. Existe uma maneira de configurar o servidor de impressão para que o cliente possa simplesmente selecionar a impressora em uma lista de impressoras disponíveis e obter automaticamente o nome da fila correta?

    
por Jouni K. Seppänen 11.03.2011 / 12:15

2 respostas

2

Verifique o arquivo /etc/cups/cupsd.conf no servidor Ubuntu e procure as Browse entradas:

Browsing On
BrowseOrder allow,deny
BrowseAllow all
BrowseRemoteProtocols CUPS
BrowseAddress @LOCAL
BrowseLocalProtocols CUPS dnssd

Eles devem estar perto do topo do arquivo. Verifique se a opção Navegação está ativada e reinicie as xícaras:

# restart cups
    
por 11.03.2011 / 12:19
1

Eu tive essa luta um par de vezes com vários clientes IPP, eles simplesmente não parecem escolher o nome da fila de transmissão. Então, como você disse, quando você especifica manualmente o nome correto, tudo funciona bem.

Uma coisa que vale a pena verificar é o nome da fila que o servidor CUPS afirma:

spk@hedvig:~$ sudo tcpdump -nv -s 1500 -A -c1 port 631
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 1500 bytes
14:03:58.959617 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 217)
    192.168.0.252.631 > 192.168.0.255.631: UDP, length 189
E.....@[email protected] 3 ipp://192.168.0.252:631/printers/hp-color-LaserJet-2550-series "hedvig" "HP-Color" "HP Color LaserJet 2550 Series Postscript (recommended)" job-sheets=none,none lease-duration=300

O dump acima das declarações, em vez de um nome de fila longo, mas sim, há este / impressoras / entre. Eu me pergunto quem o idiota deu à minha impressora esse nome longo ... obviamente meu ambiente atual não precisa que ele seja inserido manualmente com muita frequência ;-)

    
por 11.03.2011 / 13:18