Impresión desde Windows a impresora compartida Ubuntu

0

Tengo dos impresoras, una Dell V715w y una HP LaserJet P2015, conectadas por USB a una computadora con Ubuntu para compartir con CUPS todas las computadoras portátiles de mi casa. Instalé ambas impresoras localmente en la computadora Ubuntu, configuré CUPS, lo inicié y probé la impresión localmente, sin problemas.

Me conecté bien a la impresora HP en todas las computadoras portátiles y probé la impresión desde todas ellas, también sin problemas.

Intenté conectarme a la impresora Dell en dos de las cuatro computadoras portátiles, ejecutando Vista, sin éxito. Se equivoca con:

Windows no puede conectarse a la impresora. Asegúrese de haber escrito el nombre correctamente y de que la impresora esté conectada a la red.

La impresora Dell tiene una red inalámbrica incorporada, pero preferiría usar USB. Estoy casi seguro de que lo instalé correctamente, porque imprime, pero no a través de la red. La computadora "servidor" y una de las computadoras portátiles que he probado están conectadas directamente a mi enrutador inalámbrico a través de Ethernet. ¿Hay algo que pueda estar causando que salga mal?

tazas de registro de errores, según lo solicitado:

E [13/Jun/2011:16:23:06 -0400] Unable to remove temporary file "/var/spool/cups/tmp/.hplip" - Is a directory
E [13/Jun/2011:16:33:22 -0400] Unable to remove temporary file "/var/spool/cups/tmp/.hplip" - Is a directory
E [13/Jun/2011:16:46:31 -0400] [cups-driverd] Bad driver information file "/usr/share/cups/drv/sample.drv"!
E [13/Jun/2011:17:01:42 -0400] [cups-driverd] Bad driver information file "/usr/share/cups/drv/sample.drv"!
W [13/Jun/2011:17:25:41 -0400] Duplicate listen address "0.0.0.0" ignored!
W [13/Jun/2011:17:25:41 -0400] Duplicate listen address "::" ignored!
E [13/Jun/2011:17:25:42 -0400] Unable to remove temporary file "/var/spool/cups/tmp/.hplip" - Is a directory
E [13/Jun/2011:17:25:42 -0400] Unable to bind socket for address 0.0.0.0:631 - Address already in use.
E [13/Jun/2011:17:25:42 -0400] Unable to bind socket for address :::631 - Address already in use.
E [13/Jun/2011:17:25:42 -0400] Unable to bind broadcast socket - Address already in use.
W [13/Jun/2011:17:26:28 -0400] Duplicate listen address "0.0.0.0" ignored!
W [13/Jun/2011:17:26:28 -0400] Duplicate listen address "::" ignored!
E [13/Jun/2011:17:26:28 -0400] Unable to remove temporary file "/var/spool/cups/tmp/.hplip" - Is a directory
E [13/Jun/2011:17:26:28 -0400] Unable to bind socket for address 0.0.0.0:631 - Address already in use.
E [13/Jun/2011:17:26:28 -0400] Unable to bind socket for address :::631 - Address already in use.
E [13/Jun/2011:17:26:28 -0400] Unable to bind broadcast socket - Address already in use.
E [13/Jun/2011:17:27:22 -0400] Missing printer-uri, job-uri, or ppd-name attribute!
E [13/Jun/2011:17:27:22 -0400] Returning IPP client-error-bad-request for windows-ext (no URI) from 192.168.1.2
E [13/Jun/2011:17:30:20 -0400] Missing printer-uri, job-uri, or ppd-name attribute!
E [13/Jun/2011:17:30:20 -0400] Returning IPP client-error-bad-request for windows-ext (no URI) from 192.168.1.6
E [13/Jun/2011:17:33:39 -0400] Missing printer-uri, job-uri, or ppd-name attribute!
E [13/Jun/2011:17:33:39 -0400] Returning IPP client-error-bad-request for windows-ext (no URI) from 192.168.1.3
E [13/Jun/2011:17:37:16 -0400] Missing printer-uri, job-uri, or ppd-name attribute!
E [13/Jun/2011:17:37:16 -0400] Returning IPP client-error-bad-request for windows-ext (no URI) from 192.168.1.5
E [13/Jun/2011:18:01:11 -0400] [cups-driverd] Bad driver information file "/usr/share/cups/drv/sample.drv"!
E [13/Jun/2011:18:02:08 -0400] [cups-driverd] Bad driver information file "/usr/share/cups/drv/sample.drv"!
E [13/Jun/2011:18:03:25 -0400] [cups-driverd] Bad driver information file "/usr/share/cups/drv/sample.drv"!
E [13/Jun/2011:18:57:20 -0400] [Job 3] 
E [13/Jun/2011:18:57:25 -0400] [Job 3] 
W [13/Jun/2011:18:58:45 -0400] Duplicate listen address "0.0.0.0" ignored!
W [13/Jun/2011:18:58:45 -0400] Duplicate listen address "::" ignored!
E [13/Jun/2011:18:58:45 -0400] Unable to remove temporary file "/var/spool/cups/tmp/.hplip" - Is a directory
E [13/Jun/2011:18:58:45 -0400] Unable to bind socket for address 0.0.0.0:631 - Address already in use.
E [13/Jun/2011:18:58:45 -0400] Unable to bind socket for address :::631 - Address already in use.
E [13/Jun/2011:18:58:45 -0400] Unable to bind broadcast socket - Address already in use.
E [13/Jun/2011:19:01:54 -0400] [cups-driverd] Bad driver information file "/usr/share/cups/drv/sample.drv"!
E [13/Jun/2011:19:06:25 -0400] Missing printer-uri, job-uri, or ppd-name attribute!
E [13/Jun/2011:19:06:25 -0400] Returning IPP client-error-bad-request for windows-ext (no URI) from 192.168.1.2

cupsd.conf, también según lo solicitado:

LogLevel warn
MaxLogSize 0
SystemGroup lpadmin
# Allow remote access
Port 631
Listen /var/run/cups/cups.sock
Listen 631
# Share local printers on the local network.
Browsing On
BrowseOrder allow,deny
BrowseRemoteProtocols
BrowseAllow all
BrowseAddress @LOCAL
BrowseLocalProtocols CUPS dnssd
DefaultAuthType Basic
<Location />
  # Allow shared printing...
  Order allow,deny
  Allow @LOCAL
</Location>
<Location /admin>
  # Restrict access to the admin pages...
  Order allow,deny
</Location>
<Location /admin/conf>
  AuthType Default
  Require user @SYSTEM
  # Restrict access to the configuration files...
  Order allow,deny
</Location>
<Policy default>
  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job CUPS-Get-Document>
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>
  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default CUPS-Get-Devices>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>
  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After CUPS-Accept-Jobs CUPS-Reject-Jobs>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>
  <Limit Cancel-Job CUPS-Authenticate-Job>
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>
  <Limit All>
    Order deny,allow
  </Limit>
</Policy>
<Policy authenticated>
  <Limit Create-Job Print-Job Print-URI>
  AuthType Default
  Order deny,allow
</Limit>
  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job CUPS-Get-Document>
AuthType Default
Require user @OWNER @SYSTEM
Order deny,allow
  </Limit>
  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default>
  AuthType Default
  Require user @SYSTEM
  Order deny,allow
    </Limit>
  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After CUPS-Accept-Jobs CUPS-Reject-Jobs>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
      </Limit>
  <Limit Cancel-Job CUPS-Authenticate-Job>
      AuthType Default
      Require user @OWNER @SYSTEM
      Order deny,allow
        </Limit>
  <Limit All>
        Order deny,allow
          </Limit>
</Policy>
Miguel
fuente
El Missing printer-uri, job-uri, or ppd-name attribute!error indica que Windows está intentando conectarse a una impresora que no existe. ¿Está seguro de que la URL de la impresora coincide exactamente, mayúsculas y todo? Cuando navega a localhost: 631 / impresoras y hace clic en la impresora, la URL que aparece en su barra de direcciones es exactamente la que debe ingresarse en Windows.
Parches
Lo siento por la respuesta tardía. He intentado eso, y el registro de errores me da esto:W [15/Jun/2011:07:50:29 -0400] Duplicate listen address "0.0.0.0" ignored! W [15/Jun/2011:07:50:29 -0400] Duplicate listen address "::" ignored! E [15/Jun/2011:07:50:29 -0400] Unable to bind socket for address 0.0.0.0:631 - Address already in use. E [15/Jun/2011:07:50:29 -0400] Unable to bind socket for address :::631 - Address already in use. E [15/Jun/2011:07:50:29 -0400] Unable to bind broadcast socket - Address already in use.
Mike
eso parece estar mal en su configuración de CUPS. ¿Puedes publicar /etc/cups/cupsd.conf?
Parches
Bien, ese error es porque Listen 631es redundante. Port 631se encarga de eso. (Mi cupsd.confno lo tenía y obtengo ese error cuando lo agrego). Pero, en teoría, eso no tiene absolutamente nada que ver con su problema. Como parece que estás haciendo todo bien, esto me huele a error. Es posible que desee ejecutar apport-bug cupspara informarlo a los desarrolladores de Ubuntu y ver qué pueden hacer con él.
Parches

Respuestas:

3

Intentar imprimir sobre Samba siempre me ha dado más que dolores de cabeza. Le sugiero que utilice el Protocolo de impresión de Internet (IPP) en su lugar.

Primero asegúrese de tener IPP habilitado en CUPS en su servidor de impresión:

  1. Vaya a http: // localhost: 631 / en la máquina del servidor de impresión.
  2. Vaya a la pestaña Administración .
  3. Asegúrese de que Compartir impresoras conectadas a este sistema y Permitir la impresión desde Internet estén marcados.
  4. Haga clic en el botón Cambiar configuración .
  5. CUPS se reiniciará para permitir que sus cambios surtan efecto.

Luego, configure las impresoras en las máquinas Vista de este modo:

  1. Vaya a Inicio> Dispositivos e impresoras.
  2. Haga clic en Agregar una impresora en la barra de herramientas.
  3. Haga clic en Agregar una impresora de red, inalámbrica o Bluetooth
  4. Haga clic en La impresora que quiero no está en la lista
  5. Seleccione Seleccione una impresora compartida por nombre
  6. Ingrese http://<hostname>:631/printers/<printer-name>dónde <hostname>está el nombre de host o la dirección IP de su máquina Ubuntu que aloja la impresora y <printer-name>es el nombre de la cola revelado por la interfaz de administración de CUPS.
  7. Windows debería conectarse a su impresora.
  8. Ahora se le pedirá que seleccione un controlador para su impresora. Puede seleccionar el fabricante genérico y el controlador de impresora de editor de imágenes MS Publisher , que solo hará que Windows envíe trabajos de impresión a CUPS en formato PostScript y permita que CUPS use su controlador, o seleccione el controlador para su impresora si necesita usar cualquier función avanzada Ofrece. (El primero generalmente funciona mejor, en mi humilde opinión).
  9. Haz clic en Aceptar .
  10. Windows verifica que haya instalado correctamente la impresora. Haga clic en Siguiente .
  11. Se le da la opción de imprimir una página de prueba para verificar que todo funcione si lo desea.
Parches
fuente
He hecho todo eso. El paso 7 (la conexión real) en el lado de Vista de la configuración no ocurre, y arroja el error en la pregunta original.
Mike
@ Mike: si ha habilitado la impresión por Internet en CUPS como expliqué, su firewall podría estar interfiriendo. Intente ejecutar sudo ufw allow 631en una terminal para desbloquear el puerto CUPS.
Parches del
¿Sería ese el problema si una de las impresoras imprime pero la otra no? Porque ese es el caso.
Mike
La impresora HP conectada a través de CUPS imprime bien. El Dell no lo hace.
Mike
@ Mike: Ah, me perdí esa parte. Vaya a la interfaz de administración de CUPS y en la pestaña Administración haga clic en Administrar impresoras . Haga clic en la impresora y luego en su página seleccione el menú desplegable Administración y elija Modificar impresora . Haga clic en Continuar en la primera página que aparece, luego en la segunda página asegúrese de que la casilla Compartir esta impresora esté marcada. Luego haga clic en Continuar nuevamente y haga clic en Modificar esta impresora para que los cambios surtan efecto. Si no se comprobó el uso compartido, debería funcionar ahora.
Parches