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

Desarrollos de impresión desde Samba-2.2

Antes de Samba-2.2.x, el soporte de impresión para clientes Windows estaba limitado a las llamada de impresión LanMan. Este es el mismo nivel de protocolo que ofrece Windows 9x/Me cuando comparte sus impresoras. Al comienzo de la edición 2.2.0 Samba comenzó a admitir los mecanismos nativos de Windows NT. Estos se concretan mediante MS-RPC (RPC = Remote Procedure Calls ). MS-RPC usan la tubería con nombre SPOOLSS para todas las impresiones.

La funcionalidad adicional que prpporciona el nuevo soporte SPOOLSS support incluye:

  • Soporte para descarga de controladores de impresora bajo demanda para clientes Windows 95/98/NT/2000 (Point'n'Print).

  • Subida de controladores de impresora mediante Asistente para agregar impresoras (APW) o la herramienta Imprints.

  • Soporte para llamadas de impresión MS-RPC nativas como StartDocPrinter, EnumJobs(), y otras. (Ver MSDN documentation para más información sobre las API de impresión Win32).

  • Soporte para Access Control Lists (ACL) en Windows NT para objetos de impresión.

  • Mejoras en la manipualción de la cola mediante el uso de bases de datos internas para las información de los trabajo encloados (implementado mediante varios ficheros *.tdb).

Como ventaja de la actualización a Samba-3 es la posibildiad de publicar las impresoras para Active Directory (o LDAP).

Existe una diferencia de operación fundamental entre los ervidores de impresión MS Windows y los servidores Samba. Windows NT permite la instalación de impresoras locales que no estén compartidas. Esto es consecuencia del hecho de que cualquier Windows NT (servidor o cliente) se puede usar como estación de trabajo. Samba publica todas sus impresoras disponibles, bien de forma predeterminada o bien con una declaración específica.

Los clientes NT/200x/XP Profesional no tienen que usar el servicio printer SMB; pueden imprimir directamente en la impresora de cualquier otro Windows NT host usando MS-RPC. Esto, desde luego, supone que el cliente tienn los privilegios necesarios en el host remoto sobre el recurso de imporesión. Los permisos predeterminados asignados por Windows NT otorgan el permiso de impresión al conocido grupo "Todos".

Controladores bajo demanda en servidores Samba

Hay mucha confusión sobre qué ignifica esto. La pregunta se hace con frecuencia,¿Es o no necesario que los controladores de impresora estén instalados en el host Samba para que puedan imprimir los clientes Windows?. La respuesta es no o bien no es necesario.

Los clientes Windows NT/2000 por supuesto que pueden también ejecutar el asistente para instalar los controladores localmente (que después conectan con una cola en Samba). Este el el mismo método que usan los clientes Windows 9x/Me. Sin embargo hay un bug en Samba 2.2.0 que hace que los clientes Windows NT/2000 necesitan que el servidor Samba pase un controlador adecuado apra la impresora. Esto está corregido desde Samba 2.2.1.

Pero hay una nueva posibilidad para instalar los controladores de impresora en el servicio [print$] de un servidor Samba. Entonces all los clientes, incluyendo 95/98/ME obtienen el controlador instalado cuando se coenctan por primera vez al servicio. La carga del controlador en este servicio [print$] y el enlace de este controlador se puede realizar de diferentes formas:

  • Ejecutando el asistente en un cliente NT/200x/XP Profesionalt (esto no funciona en clientes 95/98/ME).

  • Utilizar la herramienta Imprints.

  • Usar en una shell smbclient y rpcclient.

  • Usando cupsaddsmb (sólo funciona con el sistema de impresión CUPS, no en LPR/LPD, LPRng u otros).

Samba no utiliza de ninguna forma estos controladores para procesar los ficheros de la cola. Estos controladores sólo los utilizan los clientes que los descargan e instalan mediante el mecanismo Point'n'Print qu admite Samba. Los clientes usan estor drivers para generar ficheros de impresión en el formato prpio de la imperesora (o del sistema Unix). Los ficheros de impresion que recibe Samba se gestionan mediante el sistema de impresión UNIX, que es responsable del resto del proceso pendiente

La sección [printer$] obsoleta

Las versiones previas a 2.2 hacían posible utilizar un servicio llamado [printer$]. Este nombre lo toma del servicio del mismo nombre que crean los clientes Windows 9x/Me cuando comparten una impresora . Los servidores de impresión Windows 9x/Me siempre tienen un servicio [printer$] con acceso de sólo lectura (sin contraseña) que admite descarga de controladores. Sin embargo la implementación inicial de Samba permitía que este pámetro llamado printer driver location se usara en un servicio. Este especifica la ubicación del controlador asocido con esta impresora. Otro parámetro llamado printer driver proporcionaba una forma de definir el nombre del controlador de imppresión ue se le envía al cliente.

Estos parámetros, incluyendo printer driver file han sido eliminados y no pueden usarse en instalaciones de Samba-3. El servicio llamado [print$] ahora se usa pra la ubicación de los controladores descargables. Este servicio se toma del sl servicio [print$] que crea Windows NT cuando comparten una impresora. Los servidores de impresión Windows NT siempre tienen un servicio [print$] con acceso de lecura-escritura (en el conexto de la ACL) para permitir la carga y descrga de controladores. Esto no implica que los clientes 9x/Me que den apartados, pueden usar el [print$] correctamnte.

Creando el servicio [print$]

Para admitir la carga y descarga de controladores de impresión, primero tiene que configurar un servicio de ficheros llamado [print$]. El nombre público de este recurso es fijo e inamovible en los clientes MS Windows. No se puede renombrar ya que los clientes Windows están programados para buscar un servicio que tenga exactamente ese nombre para recoger los ficheros de los controladores.

Debería modificar el fichero de configuración para añadir los parámetros globales y crear el servicio de ficheros [print$]. Por supuesto el valor de ciertos parámetros como path son arbitrarios y deberían sustituirse por los valores adecuados.

Ejemplo: [print\$]

[global]

# members of the ntadmin group should be able to add drivers and set

# printer properties. root is implicitly always a 'printer admin'.

printer admin = @ntadmin

...

[printers]

...

[print$]

comment = Printer Driver Download Area

path = /etc/Samba/drivers

browseable = yes

guest ok = yes

read only = yes

write list = @ntadmin, root

Por supuesto, necesita asegurarse de que el diectorio indicado en path existe en el sistema Unix.

Parámetros de la sección [print$]

[print$] es una sección especial de smb.conf. Contiene valores relativos a las posibilidades descarga de copntroladores y lo utilizan los clientes Windows para las instalaciones locales de sus impresoras. Normalmente se necesitan los siguientes parámetros:

comment = Printer Driver Download Area

El comentario que aparece junto al nombre del servicio cuado un cliente muestra la lista de servicios (normalmente los clientes Windows no lo verán, pero también aparce en lsa salida de smbclient -L Sambaserver ).

path = /etc/Samba/printers

Es la ruta donde de almacenan los controladores Windows desde el punto de vista UNIX.

browseable = no

Hace invisible el servicio [print$] para los clientes en el entorno de red. Sin embargo puede montarlo desde cualquier cliente usando net use g:\\Sambaserver\print$ en una ventana DOS o asociando una unidad de red en el explorer.

guest ok = yes

Da acceso de sólo lectura a esta servicio a todos los usuarios invitados. El acceso se puede obtener para descargar e instalar controladres en los clientes. Los requisitos para guest ok = yes dependen de como esté configurado su sitio. Si cada usuario tiene una cuenta en el servidor Samba, entonces esta no e la forma.

Observación

Si todos los usuarios de Windows NT se tienen que validar en el servidor Samba, por ejemplo si Samba autentica mediante un servidor de dominio NT y el usuario ya ha sido validado por el DC para iniciar una sesión, entonces el acceso de invitado no es necesario. Por supuesto, en un entorno de grupo de trabajo, dond quire imprimir sin preocuparse de esas tonterías de cuentas y seguridad, entonces configure el servicio para acces ode invitados. Piense quei puede añadir map to guest = Bad User en la sección [global] también. Asegúrese de entender qué significa este parámetro antes de usarlo.

read only = yes

Como no queremos que cualquiera pueda subur controladores o cambiar las configuración del controlador marcamos este parámetro como de no escritura.

write list = @ntadmin, root

En el anterior parámetro pusimos [print$] como sólo lectura, ahora debemos crear una lista de escritura también. Podemos incluir grupos de unix (indicados con un carácter @). Los usuarios listados aquí tienen permiso de escritura (una excepción al acceso general de sólo lectura) que necesitan para actualiar ficheros en el servicio. Habitualmente sólo debería incluir usuario con permisos de administración. Compruebe los permisos del sistema para asegurarse de que estas cuentas pueden copiar ficheros en el servicio. Si una cuenta no root, entonces la cuenta también tendría que incluirse en el parámetro printer admin]. Consulte la página de manual de smb.conf para más detalles.


El directorio del servicio [print$]

Para que un servidor de impresión Windows NT admita la descarga de controladores para múltiples arquitecturas, puede crear varios subdirectorios en el servicio [print$] (i.e. el directorio UNIX hacian donde apunta el parámetro path). Cada uno de ellos se corresponde con una arquitectura cliente. Samba sigue este modelo también. En el servicio [print$] los subdirectorios tienen que ser exactamente los nombres listados abajo. Puede dejar los directorios de las plataformas que no le interesen.

Por tanto, cree una estructura de directorios como la de más abajo en el servicio [print$] con las arquitecturas que desee:


[print$]--+
          |--W32X86           # serves drivers to Windows NT x86
          |--WIN40            # serves drivers to Windows 95/98
          |--W32ALPHA         # serves drivers to Windows NT Alpha_AXP
          |--W32MIPS          # serves drivers to Windows NT R4000
          |--W32PPC           # serves drivers to Windows NT PowerPC

Permisos necesarios

Para agregar un nuevo controlador a su host Samba, una de las dos siguientes condiciones tiene que ser cierta:

  • La cuenta usada para conectarse a Samba tiene un UID 0 (i.e., una cuenta root).

  • La cuenta usada para conectar al host Samba está incluida en la lista de printer admin.

Además la cuenta de acceso tienen que tener permiso de escritrua en los subdirectorios de [print$]. Recuerde que todos los serviciso de ficheros están configurados de forma predeterminada como sólo read-only.

Una vez que haya creado el servicio [print$] y los subdirectios asociados vaya a una estación de trabajo cliente Windows NT 4.0/200x/XP. Abra el entorno de red o mis sitios de red. Cuando haya localizado al servidor vaya a la carpeta de impresoras y faxes. Debería ver una lista inicial de impresoras que concuerda con la lista de servicios de impresión definidos en Samba.


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