Enlaces
Esta en:

documentos
Arriba
Bind-9
Bind-8
Ad+bind
Dhcp
Kdephp
Shell
Trucos
Php
Imagenes
Documentos
Cuestiones php
Fedora
Legal
Resumen
W2000 xp
COMOS
Errores dns
Foros
dns.bdat.net

Directorio

Configuración de impresión simple

A continuación vamos a mostrar una configuración de impresión simple. Si la compara con su propia configuración, puede hallar algunos parámetros adicionales que hayan sido sonfigurados por el vendedor de su SO. Más adelante se tratará el tema y la explicación de los parámetros. Este ejemplo no usa muchos parámetros, sin embargo en muchos entornos son suficientes para un fichero smb.conf que permita imprimir a todos sus clientes.

Ejemplo. Configuración simple con impresión BSD

[global]

printing = bsd

load printers = yes

[printers]

path = /var/spool/Samba

printable = yes

public = yes

writable = no

Este es sólo un ejemplo de configuración. Samba asigna valores preestablecidos a todos los parámetros de configuración. Estos valores son prudentes y sensatos. Cuando se especifica un parámetro en smb.conf, se modifica el valor preestablecido. La orden testparm, cuando se ejecuta como root muestra todos los valores utilizados por Samba, tanto los predeterminados como los especificados en el fichero de configuración, así como los posibles errores de configuración. La salida completa puede superar las 340 líneas, por lo que deberá paginarla para verla bien.

La sintaxis del fichero de configuración no es complicada, es muy tolerante con la sintaxis. Como se aprecia a lo largo del capítulo, Samba acepta ciertos errores de deletreo como browseable en lugar de browseable, y no distingue entre mayúsculas y minúsculas. Se puede usar Yes/No o True/False para valores lógicos. Las listas de nombres se pueden separar medainte comas, espacios o tabulaciones.

Verificar la configuración con testparm

Para ver, si no todos, la mayoría de los valores asociados a la configuración de impresión, incluyendo los valores implícitos intente con la orden del siguiente ejemplo. La orden busca todas las apariciones de lp, print, spool, driver, ports y [ en la salida de testparms. Con esta orden podemos ver el estado activo de la configuración de impresión en el proceso smbd en ejecución. Esta orden no muestra los servicios de impresión creados de forma individual ni las rutas de impresión que utilizan. Esta es la salida de mi configuración Samba:


root# testparm -s -v | egrep "(lp|print|spool|driver|ports|\[)"

 Load smb config files from /etc/Samba/smb.conf
 Processing section "[homes]"
 Processing section "[printers]"
 
 [global]
        smb ports = 445 139
        lpq cache time = 10
        total print jobs = 0
        load printers = Yes
        printcap name = /etc/printcap
        disable spoolss = No
        enumports command =
        addprinter command = 
        deleteprinter command = 
        show add printer wizard = Yes
        os2 driver map =
        printer admin =
        min print space = 0
        max print jobs = 1000
        printable = No
        printing = bsd
        print command = lpr -r -P'%p' %s
        lpq command = lpq -P'%p'
        lprm command = lprm -P'%p' %j
        lppause command =
        lpresume command =
        printer name =
        use client driver = No

 [homes]

 [printers]
        path = /var/spool/Samba
        printable = Yes

Puede comprobar con facilidad qué valores añade Samba de forma implícita. Recuerde: puede ser importante en su futuro trabajo con Samba.

Observación

testparm tiene un comportamiento diferente en Samba-3 y en 2.2.x: si se usa sin -v, sólo muestra los valores efectivos especificados. Para ver todos los valores agregue -v cuando ejecute testparm.

Configuración rápida de validación

En el momento que tenga problemas de impresión, vuelva a este punto y primero verifique si testparm muestra los parámetros correctos. Como aviso por la experiencia personal, intente con el comentario de la línea del parámetro load printers. Si su sistema 2.2.x se comporta como el mío verá esto:


root# grep "load printers" /etc/Samba/smb.conf
        #  load printers = Yes
        # This setting is commented out!!
 
root# testparm -v /etc/Samba/smb.conf | egrep "(load printers)"
        load printers = Yes

Supongo que comentando este valor evito que Samba publique las impresoras, pero lo sigue haciendo. Resulta que como éste es el valor preestablecido del parámetro, aunque le pongamos un comentario seguirá teniendo el valor "Yes". Ya no caigo más, al menos en esta tontería.


root# grep -A1 "load printers" /etc/Samba/smb.conf
        load printers = No
        # The above setting is what I want!
        #  load printers = Yes
        # This setting is commented out!

root# testparm -s -v smb.conf.simpleprinting | egrep "(load printers)"
        load printers = No

Sólo cuando el parámetro está explícitamente con el valor load printers = No hará que Samba actúe según mis intenciones, por tanto mi encarecido aviso es:

  • Nunca base un comportamiento en el comentario de un parámetro.

  • Ponga siempre el valor explícito del comportamiento que desea.

  • Use testparm para descubrir valores de configuración ocultos que puede que no reflejen sus intenciones.

A continuación la configuración mímima posible:


root# cat /etc/Samba/smb.conf-minimal
        [printers]

Este ejemplo pretende mostrar como puede usar testparm para comprobar cualquier fichero de configuración Samba. Le aconsejo encarecidamente que not cambie una configuración en funcionamiento, salvo que sepa exactamente qué está haciendo. No suponga que los cambios sólo son efectivos cuando reinicie smbd. Este no es el caso, Samba relee este fichero cada 60 segundos y en cada nueva conexión de un cliente. Es estas condiciones podría modificar una configuración para sus clientes sin ser consciente. Y ahora una nueva cosa muy interesante, testparm is útil para identificar la configuración de impresión mínima de Samba si usa el anterior fichero de configuración mínima. Eeto es lo que puede encontrar:


root# testparm -v smb.conf-minimal | egrep "(print|lpq|spool|driver|ports|[)"
 Processing section "[printers]"
 WARNING: [printers] service MUST be printable!
 No path in service printers - using /tmp

        lpq cache time = 10
        total print jobs = 0
        load printers = Yes
        printcap name = /etc/printcap
        disable spoolss = No
        enumports command =
        addprinter command =
        deleteprinter command =
        show add printer wizard = Yes
        os2 driver map =
        printer admin =
        min print space = 0
        max print jobs = 1000
        printable = No
        printing = bsd
        print command = lpr -r -P%p %s
        lpq command = lpq -P%p
        printer name =
        use client driver = No

 [printers]
        printable = Yes

testparm miestra dos avisos:

  • No especificamos la sección [printers] como printable.

  • No le dijimos a Samba que directorio usamos para la cola.

Sin embargo no son errores determinantes y Samba asigna los valores predeterminados. Por favor, no confíe en el ejemplo, se ha incluido para resaltar que tenga cuidado con el diseño y especifique en su configuración todos aquellos valores que definen sus necesidades. El caso concreto de su sistema puede tener algunas diferencias que dependerán de las opciones con las que se haya compilado Samba. Advertencia: no ponga ningún símbolo de comentarional final de una línea válida, por que esto tiene el efecto de ignorar el parámetro como si se hubiera puesto al principio. Al principio creí que era un bug de mi versión de Samba, pero la página del manual dice claramente: Los espacios internos en el valor de un parámetro se guardan literales. Esto sgnifica que una línea como:

# This defines LPRng as the printing system

printing = lprng #

guarda toda la cadena tras el signo = como el valor que se quiere asignar al parámetro. Como este valor del parámetro es inválido se le asigna el valor predeterminado.


Página Principal
Google

Web
dns.bdat.net

Visita nuestro proveedor:
www.bdat.net

Publicidad:
Alquiler de motos en Ibiza.

ISO 9000 documentación y asesoría

Impresenteibols:Humor Jazz, música en vivo