7.1.5 Probando la Impresión.

Ahora veremos como puedes probar la impresión desde tu servidor Samba, consideremos el caso mas complejo y usando una cuenta de invitado. Primero, se ejecuta la orden testparm en el fichero de configuración que contiene los recursos de impresión. Como hicimos en el capitulo 2, Instalando Samba en un Sistema Unix, Esto te dirá si hay problemas de sintaxis en el fichero de configuración. Por ejemplo, esto es lo que verias si hubiesemos quitado la opción path del ejemplo anterior:

# testparm
Load smb config files from /usr/local/samba/lib/smb.conf
Processing configuration file "/usr/local/samba/lib/smb.conf"
Processing section "[global]"
Processing section "[homes]"
Processing section "[data]"
Processing section "[printers]"
No path in service printers - using /tmp
Loaded services file OK.
Press enter to see a dump of your service definitions

Global parameters: 
  load printers: Yes
  printcap name: /etc/printcap

Default service parameters:
  guest account: ftp
  min print space: 0
  print command: lpr -r -P%p %s
  lpq command: lpq -P%p
  lprm command: lprm -P%p %j
  lppause command:
  lpresume command:

Service parameters [printers]:
  path: /tmp
  print ok: Yes
  read only: true
  public: true

Segundo, prueba la orden testprns printername. Este orden comprueba que printername se encuentra disponible en tu fichero printcap. Si el fichero printcap no está en el sitio habitual, puedes especificar su ruta como segundo parámetro de testprns:

# testprns lp /etc/printcap
Looking for printer lp in printcap file /etc/printcap
Printer name lp is valid.

Después, inicia sesión como usuario invitado, vete al directorio donde se almacenan las colas de impresión, y asegurate de que puedes imprimir usuando la misma orden que testprns dice que Samba usará. Como se comentó antes, esto te dirá si necesitas cambiar la cuenta de invitado, como la cuenta por defecto, puede no tener permisos para imprimir.

Para terminar, imprime algo a través de smbclient y comprueba que ocurra lo siguiente:

Si {\tt smbclient} no es capaz de imprimir, puedes redefinir la orden de impresión para recojer información de depurado:

print command = /bin/cat %s >>/tmp/printlog; rm %s

o

print command = echo "printed %s on %p" >>/tmp/printlog

Un problema común con la configuración de impresoras con samba es olvidar usar las rutas completas a las ordenes a usar; muchas veces una orden suelta no funciona porque el PATH del usuario invitado no la incluye, otro problema común es no tener los permisos adecuados en los directorios de colas de impresión.

Hay mas información acerca del depurado en la documentación de Samba Printers.txt. Además los sistemas de impresión bajo Unix son tratados en detalle en el libro de AEleen Frisch, Essential Systems Administration, (publicado por O'Reilly).

TLDP-ES 03/11/2002