Agente de entrega virtual de Linux 2411

Mejores prácticas de impresión

Este artículo proporciona información sobre las mejores prácticas de impresión.

Instalación

El VDA de Linux requiere los filtros cups y foomatic. Los filtros se instalan al instalar el VDA. También puedes instalar los filtros manualmente según la distribución.

Configuración de directivas de impresión

Redirección de impresoras cliente

Esta configuración te permite determinar si las impresoras cliente se asignan a una sesión VDA. Por defecto, la asignación de impresoras cliente está permitida.

Creación automática de impresoras cliente

Esta configuración especifica las impresoras cliente que se pueden asignar a las sesiones VDA. Por defecto, está configurada como Crear automáticamente todas las impresoras cliente, lo que significa que todas las impresoras cliente se asignan a las sesiones VDA. Para obtener más información sobre esta configuración, consulta Creación automática de impresoras cliente en la documentación de Citrix Virtual Apps and Desktops.

-  ### Creación automática de la impresora universal PDF

-  Para usar la función de [impresión PDF](/es-es/linux-virtual-delivery-agent/2411/configure/printing/pdf-printing.html), configura esta directiva como **Habilitada**.

Asignación y compatibilidad de controladores de impresora

Citrix proporciona tres tipos de controladores de impresora universales (PostScript, PCL5 y PCL6). Sin embargo, es posible que el controlador de impresora universal no sea compatible con tu impresora cliente. En este caso, tu única opción en versiones anteriores era editar el archivo de configuración ~/.CtxlpProfile$CLIENT_NAME. A partir de la versión 1906, puedes optar por configurar la directiva Asignación y compatibilidad de controladores de impresora en Citrix Studio.

Para configurar la directiva Asignación y compatibilidad de controladores de impresora en Citrix Studio:

  1. Selecciona la directiva Asignación y compatibilidad de controladores de impresora.
      1. Haz clic en Agregar.
  2. Rellena Nombre del controlador con el nombre del controlador de la impresora cliente. Si usas la aplicación Citrix Workspace™ para Linux, rellena el nombre de la impresora en su lugar.
  3. Realiza las siguientes acciones según sea necesario:

    • Para permitir que la impresora cliente se redirija a la sesión VDA y use solo controladores de impresión universales, selecciona Permitir o Crear solo con controlador universal.
    • Para evitar que la impresora cliente con el nombre de controlador especificado se redirija a la sesión VDA, selecciona No crear.
    • Para dar a las aplicaciones del servidor acceso a la impresora cliente que tiene el mismo controlador que el servidor pero un nombre de controlador diferente, selecciona Reemplazar con y escribe la ruta absoluta del archivo del controlador en el VDA.

    Directiva de asignación y compatibilidad de controladores de impresora

Nota:

Solo se admiten archivos de controlador PPD.

Uso

Puedes imprimir tanto desde escritorios publicados como desde aplicaciones publicadas. Todas las impresoras cliente se pueden asignar a una sesión VDA. Los nombres de las impresoras son diferentes para escritorios y aplicaciones:

  • Para escritorios publicados: <client printer name>:$CLIENT_NAME:dsk$SESSION_ID

  • Para aplicaciones publicadas: <client printer name>:$CLIENT_NAME:app$SESSION_ID

Nota:

Si el mismo usuario abre un escritorio publicado y una aplicación publicada, ambas impresoras están disponibles para la sesión. La impresión en una impresora de escritorio en una sesión de aplicación publicada, o la impresión en una impresora de aplicación en un escritorio publicado, fallará.

Solución de problemas

No se puede imprimir

Cuando la impresión no funciona correctamente, comprueba el demonio de impresión ctxlpmngt y el marco de trabajo de CUPS.

El demonio de impresión ctxlpmngt es un proceso por sesión y debe estar ejecutándose durante toda la sesión. Ejecuta el siguiente comando para verificar que el demonio de impresión está en ejecución. Si ctxlpmngt no se está ejecutando, inicia ctxlpmngt manualmente desde la línea de comandos.

ps –ef | grep ctxlpmngt
<!--NeedCopy-->

Si la impresión sigue sin funcionar, comprueba el marco de trabajo de CUPS. El servicio ctxcups se utiliza para la administración de impresoras y se comunica con el marco de trabajo de CUPS de Linux. Es un único proceso por máquina y se puede verificar ejecutando el siguiente comando:

systemctl status ctxcups
<!--NeedCopy-->

Pasos adicionales para recopilar registros de CUPS

Para recopilar registros de CUPS, ejecuta los siguientes comandos para configurar el archivo de servicio de CUPS. De lo contrario, los registros de CUPS no se podrán grabar en hdx.log:

sudo systemctl stop cups

sudo vi /etc/systemd/system/printer.target.wants/cups.service

PrivateTmp=false

sudo systemctl start cups 

-  sudo systemctl daemon-reload
<!--NeedCopy-->

Nota:

Esta configuración se realiza solo para recopilar el registro de impresión completo cuando surge un problema. En circunstancias normales, esta configuración no se recomienda porque rompe la seguridad de CUPS.

La salida de impresión está distorsionada

Un controlador de impresora incompatible puede causar una salida distorsionada. Hay disponible una configuración de controlador por usuario que se puede configurar editando el archivo de configuración ~/.CtxlpProfile$CLIENT_NAME:

[DEFAULT_PRINTER]

printername=

model=

ppdpath=

drivertype=
<!--NeedCopy-->

Importante:

printername es un campo que contiene el nombre de la impresora predeterminada actual del lado del cliente. Es un valor de solo lectura. No lo edites.

Los campos ppdpath, model y drivertype no se pueden configurar al mismo tiempo porque solo uno tiene efecto para la impresora asignada.

  • Si el controlador de impresora universal no es compatible con la impresora cliente, configura el modelo del controlador de impresora nativo usando la opción model=. Puedes encontrar el nombre del modelo actual de la impresora usando el comando lpinfo:

     lpinfo –m
    
     …
    
     xerox/ph3115.ppd.gz Xerox Phaser 3115, SpliX V. 2.0.0
    
     xerox/ph3115fr.ppd.gz Xerox Phaser 3115, SpliX V. 2.0.0
     xerox/ph3115pt.ppd.gz Xerox Phaser 3115, SpliX V. 2.0.0
    
     <!--NeedCopy-->
    

    Luego puedes configurar el modelo para que coincida con la impresora:

     model=xerox/ph3115.ppd.gz
     <!--NeedCopy-->
    
  • Si el controlador de impresora universal no es compatible con la impresora cliente, configura la ruta del archivo PPD del controlador de impresora nativo. El valor de ppdpath es la ruta absoluta del archivo del controlador de impresora nativo.

    Por ejemplo, hay un controlador PPD en /home/tester/NATIVE_PRINTER_DRIVER.ppd:

     ppdpath=/home/tester/NATIVE_PRINTER_DRIVER.ppd
     <!--NeedCopy-->
    
  • Citrix proporciona tres tipos de controladores de impresora universales (PostScript, PCL5 y PCL6). Puedes configurar el tipo de controlador según las propiedades de tu impresora.

    Por ejemplo, si el tipo de controlador de impresora predeterminado del cliente es PCL5, configura drivertype como:

     drivertype=pcl5
     <!--NeedCopy-->
    

El tamaño de la salida es cero

Prueba diferentes tipos de impresoras. Y prueba una impresora virtual como CutePDF y PDFCreator para averiguar si este problema está relacionado con el controlador de la impresora.

El trabajo de impresión depende del controlador de la impresora predeterminada del cliente. Es importante identificar el tipo de controlador activo actual. Si la impresora cliente usa un controlador PCL5 pero el VDA de Linux elige un controlador PostScript, puede ocurrir un problema.

Si el tipo de controlador de impresora es correcto, puedes identificar el problema realizando los siguientes pasos:

  1. Inicia sesión en una sesión de escritorio publicado.
  2. Ejecuta el comando vi ~/.CtxlpProfile$CLIENT_NAME.
  3. Agrega el siguiente campo para guardar el archivo de cola en el VDA de Linux:

    deletespoolfile=no
    <!--NeedCopy-->
    
  4. Cierra la sesión y vuelve a iniciarla para cargar los cambios de configuración.

  5. Imprime el documento para reproducir el problema. Después de imprimir, se guarda un archivo de cola en /var/spool/cups-ctx/$logon_user/$spool_file.

  6. Comprueba si la cola está vacía. Si el archivo de cola es cero, representa un problema. Ponte en contacto con el Soporte de Citrix (y proporciona el registro de impresión) para obtener más orientación.

  7. Si el tamaño de la cola no es cero, copia el archivo al cliente. El contenido del archivo de cola depende del tipo de controlador de la impresora predeterminada del cliente. Si el controlador de la impresora asignada (nativa) es PostScript, el archivo de cola se puede abrir directamente en el sistema operativo Linux. Comprueba si el contenido es correcto.

    Si el archivo de cola es PCL, o si el sistema operativo cliente es Windows, copia el archivo de cola al cliente e imprímelo en la impresora del lado del cliente usando un controlador de impresora diferente.

  8. Cambia la impresora asignada para usar un controlador de impresora diferente. El siguiente ejemplo usa la impresora cliente PostScript como ejemplo:

    1. Inicia sesión en una sesión activa y abre un navegador en el escritorio del cliente.

    2. Abre el portal de administración de impresión:

      localhost:631
      <!--NeedCopy-->
      
  9. Elige la impresora asignada CitrixUniversalPrinter:$ClientName:app/dsk$SESSION_ID y Modificar impresora. Esta operación requiere privilegios de administrador.

  10. Mantén la conexión cups-ctx, luego haz clic en Continuar para cambiar el controlador de la impresora.

  11. En los campos Fabricante y Modelo, elige un controlador de impresora diferente al controlador UPD de Citrix. Por ejemplo, si la impresora virtual CUPS-PDF está instalada, selecciona el controlador de impresora genérico CUPS-PDF. Guarda el cambio.

  12. Si este proceso se realiza correctamente, configura la ruta del archivo PPD del controlador en .CtxlpProfile$CLIENT_NAME para permitir que la impresora asignada use el controlador recién seleccionado.

Problemas conocidos

Se han identificado los siguientes problemas al imprimir en el VDA de Linux:

El controlador CTXPS no es compatible con algunas impresoras PLC

Si encuentras corrupción en la salida de impresión, establece el controlador de la impresora en el nativo proporcionado por el fabricante.

Rendimiento de impresión lento para documentos grandes

Cuando imprimes un documento grande en una impresora cliente local, el documento se transfiere a través de la conexión del servidor. En conexiones lentas, la transferencia puede tardar mucho tiempo.

Notificaciones de impresora y trabajos de impresión visibles desde otras sesiones

Linux no tiene el mismo concepto de sesión que el sistema operativo Windows. Por lo tanto, todos los usuarios reciben notificaciones en todo el sistema. Puedes deshabilitar estas notificaciones cambiando el archivo de configuración de CUPS: /etc/cups/cupsd.conf.

Busca el nombre de la política actual configurado en el archivo:

DefaultPolicy default

Si el nombre de la política es default, agrega las siguientes líneas al bloque XML de la política predeterminada:

<Policy default>

     # Job/subscription privacy...

     JobPrivateAccess default

     JobPrivateValues default

     SubscriptionPrivateAccess default

     SubscriptionPrivateValues default

     … …

     <Limit Create-Printer-Subscription>

          Require user @OWNER

          Order deny,allow

     </Limit>

     <Limit All>

          Order deny,allow

     </Limit>

</Policy>
<!--NeedCopy-->