Product Documentation

Drucken

Jul 06, 2017

Dieser Artikel enthält Informationen zu bewährten Druckmethoden.  

Installation

Der Linux VDA erfordert die Filter cups und foomatic. Führen Sie, je nach Linux-Distribution, die folgenden Befehle aus:

Druckunterstützung für RHEL 7

command Kopieren

sudo yum –y install cups

sudo yum -y install foomatic-filters

Druckunterstützung für RHEL 6

command Kopieren

sudo yum –y install cups

sudo yum -y install foomatic

Verwendung

Der Linux VDA funktioniert für veröffentlichte Desktops und veröffentlichte Anwendungen. Der Druckername ist bei Desktops und Anwendungen unterschiedlich. Beachten Sie Folgendes:

  • Veröffentlichte Desktops:

    CitrixUniversalPrinter:$CLIENT_NAME:dsk$SESSION_ID
  • Veröffentlichte Anwendungen:

    CitrixUniversalPrinter:$CLIENT_NAME:app$SESSION_ID

Hinweis

Wenn ein Benutzer einen veröffentlichten Desktop und eine veröffentlichte Anwendung öffnet, stehen in der Sitzung beide Drucker zur Verfügung. Das Drucken auf einem Desktopdrucker in einer veröffentlichten Anwendung und auf einem Anwendungsdrucker über einen veröffentlichten Desktop schlägt fehl.

Problembehandlung

Fehler beim Drucken

Sie können verschiedene Elemente überprüfen, wenn der Druckvorgang nicht richtig funktioniert. Der Druck-Daemon ist ein pro Sitzung ausgeführter Vorgang und muss für die gesamte Dauer der Sitzung ausgeführt werden. Prüfen Sie, ob der Druck-Daemon ausgeführt wird.

command Kopieren

ps –ef | grep ctxlpmngt

Wenn der Prozess ctxlpmngt nicht ausgeführt wird, starten Sie ctxlpmngt manuell über eine Befehlszeile. Wenn der Druck immer noch nicht funktioniert, überprüfen Sie das CUPS-Framework. Der Dienst ctxcups dient zur Druckerverwaltung und kommuniziert mit dem Linux CUPS-Framework. Dies ist ein Prozess pro Maschine und kann mit folgendem Befehl überprüft werden:

command Kopieren

service ctxcups status

Zusätzliches Protokoll beim CUPS-Druck

Als Komponente des Linux-VDA ist die Methode zum Abrufen des Protokolls einer Druckkomponente anderen Komponenten ähnlich.

Bei RHEL sind einige zusätzliche Schritte erforderlich, um die CUPS-Dienstdatei zu konfigurieren. Andernfalls werden einige Protokolle nicht in hdx.log protokolliert:

command Kopieren

sudo service cups stop

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

PrivateTmp=false

sudo service cups start

sudo systemctl daemon-reload

Hinweis

Das vollständige Druckprotokoll sollte mit dieser Konfiguration nur bei einem Problem abgerufen werden. Normalerweise wird diese Konfiguration nicht empfohlen, da sie die CUPS-Sicherheit verletzt.

Druckausgabe ist fehlerhaft

Eine fehlerhafte Ausgabe kann durch einen nicht kompatiblen Druckertreiber verursacht werden. Pro Benutzer ist eine Treiberkonfiguration verfügbar und kann durch das Bearbeiten der Konfigurationsdatei ~/.CtxlpProfile$CLIENT_NAME konfiguriert werden.

config Kopieren

[DEFAULT_PRINTER]

printername=

model=

ppdpath=

drivertype=

Important

Das Feld printername enthält den Namen des aktuellen Clientstandarddruckers. Dieser Wert ist schreibgeschützt und darf nicht bearbeitet werden.

Nehmen Sie nicht gleichzeitig Eingaben in die Felder ppdpath, model und drivertype vor, da nur eines für den zugeordneten Drucker wirksam ist.

Wenn der universelle Druckertreiber mit dem Clientdrucker nicht kompatibel ist, konfigurieren Sie das Modell des nativen Druckertreibers mit der Option model=. Sie finden den aktuellen Modellnamen des Druckers mit dem Befehl lpinfo:

command Kopieren

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

Sie können dann das Modell gemäß dem Drucker festlegen:

config Kopieren

Model=xerox/ph3115.ppd.gz

Wenn der universelle Druckertreiber nicht mit dem Clientdrucker kompatibel ist, konfigurieren Sie den PPD-Dateipfad für den nativen Druckertreiber. Der Wert von ppdpath ist der absolute Pfad der nativen Druckertreiberdatei.

Beispielsweise ist ein PPD-Treiber unter /home/tester/NATIVE_PRINTER_DRIVER.ppd vorhanden.

config Kopieren

ppdpath=/home/tester/NATIVE_PRINTER_DRIVER.ppd

Citrix bietet drei universelle Druckertreibertypen: postscript, pcl5 und pcl6. Diese können als Treibertyp konfiguriert werden, wenn kein nativer Druckertreiber verfügbar ist. 

Beispiel: Der Standarddruckertreibertyp des Client ist PCL5.

config Kopieren

drivertype=pcl5

Ausgabegröße ist Null

Versuchen Sie es mit anderen Druckertypen. Versuchen Sie es außerdem mit einem virtuellen Drucker wie CutePDF oder PDFCreator, um zu ermitteln, ob das Problem mit dem Druckertreiber zusammenhängt.

Der Druckauftrag hängt vom Druckertreiber und dem Standarddrucker des Clients ab. Es ist wichtig, den Typ des aktuell aktiven Treibers zu identifizieren. Wenn der Clientdrucker einen PCL5-Treiber verwendet, der Linux VDA jedoch einen PostScript-Treiber auswählt, tritt ein Problem auf.

Wenn der Druckertreibertyp richtig ist, können Sie das Problem mit folgenden Schritten finden:

Problemdiagnose

  1. Melden Sie sich bei dem ICA-Sitzungsdesktop an.
  2. vi ~/.CtxlProfile$CLIENT_NAME
  3. Fügen Sie auf dem Linux VDA das folgende Feld hinzu, um die Spooldatei zu speichern:
config Kopieren

deletespoolfile=no

4.  Melden Sie sich ab und wieder an, um die Konfigurationsänderungen zu laden.

5.  Drucken Sie das Dokument zum Reproduzieren des Problems. Nach dem Druckvorgang wird unter /var/spool/cups-ctx/$logon_user/$spool_file eine Spooldatei gespeichert.

6.  Prüfen Sie, ob die Spooldatei leer ist. Wenn die Spooldatei NULL ist, liegt ein Problem vor. Wenden Sie sich mit dem Druckprotokoll an den Citrix Support.

7.  Wenn die Spooldatei nicht NULL ist, kopieren Sie die Datei auf den Client. Der Inhalt der Spooldatei hängt vom Druckertreibertyp und dem Standarddrucker des Clients ab. Wenn der zugeordnete (native) Druckertreiber ein PostScript-Treiber ist, kann die Spooldatei direkt im Linux-Betriebssystem geöffnet werden. Prüfen Sie den Inhalt auf Korrektheit.

Bei einer PCL-Spooldatei oder einem Windows-Betriebssystem auf dem Client kopieren Sie die Spooldatei auf den Client und drucken Sie sie auf dem clientseitigen Drucker. Testen Sie sie anschließend mit dem anderen Druckertreiber.

8. Zum Wechseln des zugeordneten Druckers zu einem anderen Drittanbieter-Druckertreiber verwenden Sie den PostScript-Clientdrucker als Beispiel:

a. Melden Sie sich bei einer aktiven Sitzung an und öffnen Sie einen Browser auf dem Clientdesktop.

b. Öffnen Sie das Druckverwaltungsportal:

config Kopieren

localhost:631

Wählen Sie den zugeordneten Drucker CitrixUniversalPrinter:$ClientName:app/dek$SESSION_ID und dann Modify Printer. Hierfür sind Administratorprivilegien erforderlich.

c. Behalten Sie die cups-ctx-Verbindung bei und klicken Sie auf "Continue", um den Druckertreiber zu ändern.

d. Wählen Sie auf der Seite "Make and Model" einen anderen PostScript-Treiber als den Citrix UPD-Treiber aus (z. B. Citrix Universal Driver Postscript). Wenn beispielsweise der virtuelle CUPS-PDF-Drucker installiert ist, wählen Sie den Drucker "Generic CUPS-PDF Printer". Speichern Sie die Änderung.

e. Wenn der Vorgang Erfolg hat, konfigurieren Sie den PPD-Dateipfad des Treibers in .CtxlpProfile$CLIENT_NAME so, dass der zugeordnete Drucker einen Drittanbietertreiber verwenden darf.

Bekannte Probleme

Die folgenden Probleme beim Drucken mit dem Linux VDA sind bekannt:

CTXPS-Treiber ist mit einigen PLC-Druckern nicht kompatibel

Wenn Sie Druckausgabestörungen bemerken, legen Sie als Druckertreiber den nativen Druckertreiber des Herstellers fest.

Langsame Druckleistung bei großen Dokumenten

Wenn Sie ein großes Dokument auf einem lokalen Clientdrucker drucken, wird die zu druckende Datei über die Serververbindung übertragen. Bei langsamen Verbindungen kann dies sehr lange dauern.

Drucker- und Druckauftragsbenachrichtigungen aus anderen Sitzungen werden angezeigt

Linux hat nicht das gleiche Sitzungskonzept wie das Windows-Betriebssystem. Daher erhalten alle Benutzer systemweite Benachrichtigungen. Durch Ändern der CUPS-Konfigurationsdatei /etc/cups/cupsd.conf können Sie diese Benachrichtigungen deaktivieren.

Suchen Sie den aktuellen, in der Datei konfigurierten Richtliniennamen:

DefaultPolicy default

Wenn der Richtlinienname default lautet, fügen Sie dem XML-Block der Standardrichtlinie die folgenden Zeilen hinzu:

config Kopieren

<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>