Best Practices für den Druck
Dieser Artikel enthält Informationen zu Best Practices für den Druck.
Installation
Der Linux VDA erfordert sowohl cups- als auch foomatic-Filter. Die Filter werden bei der Installation des VDA installiert. Sie können die Filter auch manuell je nach Distribution installieren.
Druckrichtlinieneinstellungen
Clientdruckerumleitung
Diese Einstellung ermöglicht es Ihnen festzulegen, ob Clientdrucker einer VDA-Sitzung zugeordnet werden. Standardmäßig ist die Clientdruckerzuordnung zulässig.
Clientdrucker automatisch erstellen
Diese Einstellung gibt Clientdrucker an, die VDA-Sitzungen zugeordnet werden können. Standardmäßig ist sie auf Alle Clientdrucker automatisch erstellen festgelegt, was bedeutet, dass alle Clientdrucker VDA-Sitzungen zugeordnet werden. Weitere Informationen zu dieser Einstellung finden Sie unter Clientdrucker automatisch erstellen in der Citrix Virtual Apps and Desktops-Dokumentation.
- ### PDF Universal Printer automatisch erstellen
- Um die Funktion [PDF-Druck](/de-de/linux-virtual-delivery-agent/2411/configure/printing/pdf-printing.html) zu verwenden, setzen Sie diese Richtlinie auf **Aktiviert**.
Druckertreiberzuordnung und -kompatibilität
Citrix liefert drei Arten von Universal Printer Drivers (PostScript, PCL5 und PCL6). Der Universal Printer Driver ist jedoch möglicherweise nicht mit Ihrem Clientdrucker kompatibel. In früheren Releases bestand Ihre einzige Option in diesem Fall darin, die Konfigurationsdatei ~/.CtxlpProfile$CLIENT_NAME zu bearbeiten. Ab Version 1906 können Sie stattdessen die Richtlinie Druckertreiberzuordnung und -kompatibilität in Citrix Studio konfigurieren.
So konfigurieren Sie die Richtlinie Druckertreiberzuordnung und -kompatibilität in Citrix Studio:
- Wählen Sie die Richtlinie Druckertreiberzuordnung und -kompatibilität aus.
-
- Klicken Sie auf Hinzufügen.
-
- Geben Sie unter Treibername den Treibernamen des Clientdruckers ein. Wenn Sie die Citrix Workspace™-App für Linux verwenden, geben Sie stattdessen den Druckernamen ein.
-
Führen Sie bei Bedarf die folgenden Aktionen aus:
- Um die Umleitung des Clientdruckers an die VDA-Sitzung zu ermöglichen und nur universelle Druckertreiber zu verwenden, wählen Sie Zulassen oder Nur mit universellem Treiber erstellen.
- Um zu verhindern, dass der Clientdrucker mit dem angegebenen Treibernamen an die VDA-Sitzung umgeleitet wird, wählen Sie Nicht erstellen.
- Um Serveranwendungen Zugriff auf den Clientdrucker zu gewähren, der denselben Treiber wie der Server, aber einen anderen Treibernamen hat, wählen Sie Ersetzen durch und geben Sie den absoluten Pfad der Treiberdatei auf dem VDA ein.

Hinweis:
Es werden nur PPD-Treiberdateien unterstützt.
Verwendung
Sie können sowohl von veröffentlichten Desktops als auch von veröffentlichten Anwendungen drucken. Alle Clientdrucker können einer VDA-Sitzung zugeordnet werden. Die Druckernamen unterscheiden sich für Desktops und Anwendungen:
-
Für veröffentlichte Desktops:
<client printer name>:$CLIENT_NAME:dsk$SESSION_ID -
Für veröffentlichte Anwendungen:
<client printer name>:$CLIENT_NAME:app$SESSION_ID
Hinweis:
Wenn derselbe Benutzer sowohl einen veröffentlichten Desktop als auch eine veröffentlichte Anwendung öffnet, stehen beide Drucker der Sitzung zur Verfügung. Das Drucken auf einem Desktopdrucker in einer veröffentlichten Anwendungssitzung oder das Drucken auf einem Anwendungsdrucker in einem veröffentlichten Desktop schlägt fehl.
Fehlerbehebung
Drucken nicht möglich
Wenn der Druck nicht ordnungsgemäß funktioniert, überprüfen Sie den Druckdaemon ctxlpmngt und das CUPS-Framework.
Der Druckdaemon ctxlpmngt ist ein sitzungsbezogener Prozess und muss für die Dauer der Sitzung ausgeführt werden. Führen Sie den folgenden Befehl aus, um zu überprüfen, ob der Druckdaemon ausgeführt wird. Wenn ctxlpmngt nicht ausgeführt wird, starten Sie ctxlpmngt manuell über die Befehlszeile.
ps –ef | grep ctxlpmngt
<!--NeedCopy-->
Wenn der Druck immer noch nicht funktioniert, überprüfen Sie das CUPS-Framework. Der Dienst ctxcups wird für die Druckerverwaltung verwendet und kommuniziert mit dem Linux CUPS-Framework. Es handelt sich um einen einzelnen Prozess pro Maschine, der mit dem folgenden Befehl überprüft werden kann:
systemctl status ctxcups
<!--NeedCopy-->
Zusätzliche Schritte zum Sammeln von CUPS-Protokollen
Um CUPS-Protokolle zu sammeln, führen Sie die folgenden Befehle aus, um die CUPS-Dienstdatei zu konfigurieren. Andernfalls können CUPS-Protokolle nicht in hdx.log aufgezeichnet werden:
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-->
Hinweis:
Diese Konfiguration dient nur zum Sammeln des vollständigen Druckprotokolls, wenn ein Problem auftritt. Unter normalen Umständen wird diese Konfiguration nicht empfohlen, da sie die CUPS-Sicherheit beeinträchtigt.
Druckausgabe ist fehlerhaft
Ein inkompatibler Druckertreiber kann zu einer fehlerhaften Ausgabe führen. Eine treiberspezifische Konfiguration pro Benutzer ist verfügbar und kann durch Bearbeiten der Konfigurationsdatei ~/.CtxlpProfile$CLIENT_NAME vorgenommen werden:
[DEFAULT_PRINTER]
printername=
model=
ppdpath=
drivertype=
<!--NeedCopy-->
Wichtig:
Der Druckername ist ein Feld, das den Namen des aktuellen clientseitigen Standarddruckers enthält. Es ist ein schreibgeschützter Wert. Bearbeiten Sie ihn nicht.
Die Felder ppdpath, model und drivertype können nicht gleichzeitig festgelegt werden, da nur eines für den zugeordneten Drucker wirksam wird.
-
Wenn der Universal Printer Driver nicht mit dem Clientdrucker kompatibel ist, konfigurieren Sie das Modell des nativen Druckertreibers mit der Option model=. Den aktuellen Modellnamen des Druckers finden Sie mit dem Befehl 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-->Sie können das Modell dann an den Drucker anpassen:
model=xerox/ph3115.ppd.gz <!--NeedCopy--> -
Wenn der Universal Printer Driver nicht mit dem Clientdrucker kompatibel ist, konfigurieren Sie den PPD-Dateipfad des nativen Druckertreibers. Der Wert von ppdpath ist der absolute Pfad der nativen Druckertreiberdatei.
Beispiel: Es gibt einen PPD-Treiber unter /home/tester/NATIVE_PRINTER_DRIVER.ppd:
ppdpath=/home/tester/NATIVE_PRINTER_DRIVER.ppd <!--NeedCopy--> -
Citrix liefert drei Arten von Universal Printer Drivers (PostScript, PCL5 und PCL6). Sie können den Treibertyp basierend auf Ihren Druckereigenschaften konfigurieren.
Wenn der Standard-Druckertyp des Clients beispielsweise PCL5 ist, setzen Sie drivertype auf:
drivertype=pcl5 <!--NeedCopy-->
Ausgabegröße ist Null
Probieren Sie verschiedene Druckertypen aus. Und versuchen Sie es mit einem virtuellen Drucker wie CutePDF und PDFCreator, um herauszufinden, ob dieses Problem mit dem Druckertreiber zusammenhängt.
Der Druckauftrag hängt vom Druckertreiber des clientseitigen Standarddruckers ab. Es ist wichtig, den Typ des aktuell aktiven Treibertyps zu identifizieren. Wenn der Clientdrucker einen PCL5-Treiber verwendet, der Linux VDA jedoch einen PostScript-Treiber wählt, kann ein Problem auftreten.
Wenn der Druckertreibertyp korrekt ist, können Sie das Problem durch Ausführen der folgenden Schritte identifizieren:
- Melden Sie sich bei einer veröffentlichten Desktopsitzung an.
- Führen Sie den Befehl vi ~/.CtxlpProfile$CLIENT_NAME aus.
-
Fügen Sie das folgende Feld hinzu, um die Spool-Datei auf dem Linux VDA zu speichern:
deletespoolfile=no <!--NeedCopy--> -
Melden Sie sich ab und wieder an, um die Konfigurationsänderungen zu laden.
-
Drucken Sie das Dokument, um das Problem zu reproduzieren. Nach dem Drucken wird eine Spool-Datei unter
/var/spool/cups-ctx/$logon_user/$spool_filegespeichert. -
Überprüfen Sie, ob der Spool leer ist. Wenn die Spool-Datei null ist, stellt dies ein Problem dar. Wenden Sie sich an den Citrix Support (und stellen Sie das Druckprotokoll bereit), um weitere Unterstützung zu erhalten.
-
Wenn die Spool-Größe nicht null ist, kopieren Sie die Datei auf den Client. Der Inhalt der Spool-Datei hängt vom Druckertreibertyp des clientseitigen Standarddruckers ab. Wenn der zugeordnete (native) Druckertreiber PostScript ist, kann die Spool-Datei direkt im Linux-Betriebssystem geöffnet werden. Überprüfen Sie, ob der Inhalt korrekt ist.
Wenn die Spool-Datei PCL ist oder wenn das Client-Betriebssystem Windows ist, kopieren Sie die Spool-Datei auf den Client und drucken Sie sie auf dem clientseitigen Drucker mit einem anderen Druckertreiber.
-
Ändern Sie den zugeordneten Drucker, um einen anderen Druckertreiber zu verwenden. Das folgende Beispiel verwendet den PostScript-Clientdrucker als Beispiel:
-
Melden Sie sich bei einer aktiven Sitzung an und öffnen Sie einen Browser auf dem Client-Desktop.
-
Öffnen Sie das Druckverwaltungsportal:
localhost:631 <!--NeedCopy-->
-
-
Wählen Sie den zugeordneten Drucker
CitrixUniversalPrinter:$ClientName:app/dsk$SESSION_IDund Drucker ändern. Dieser Vorgang erfordert Administratorrechte. -
Behalten Sie die cups-ctx-Verbindung bei, und klicken Sie dann auf Weiter, um den Druckertreiber zu ändern.
-
Wählen Sie in den Feldern Hersteller und Modell einen anderen Druckertreiber als den Citrix UPD-Treiber aus. Wenn beispielsweise der virtuelle CUPS-PDF-Drucker installiert ist, wählen Sie den Treiber „Generic CUPS-PDF Printer“ aus. Speichern Sie die Änderung.
- Wenn dieser Vorgang erfolgreich ist, konfigurieren Sie den PPD-Dateipfad des Treibers in
.CtxlpProfile$CLIENT_NAME, damit der zugeordnete Drucker den neu ausgewählten Treiber verwenden kann.
Bekannte Probleme
Die folgenden Probleme wurden beim Drucken auf dem Linux VDA identifiziert:
CTXPS-Treiber ist nicht mit einigen PLC-Druckern kompatibel
Wenn Sie eine Beschädigung der Druckausgabe feststellen, stellen Sie den Druckertreiber auf den nativen Treiber des Herstellers ein.
Langsame Druckleistung bei großen Dokumenten
Wenn Sie ein großes Dokument auf einem lokalen Clientdrucker drucken, wird das Dokument über die Serververbindung übertragen. Bei langsamen Verbindungen kann die Übertragung lange dauern.
Drucker- und Druckauftragsbenachrichtigungen aus anderen Sitzungen sichtbar
Linux hat nicht dasselbe Sitzungskonzept wie das Windows-Betriebssystem. Daher erhalten alle Benutzer systemweite Benachrichtigungen. Sie können diese Benachrichtigungen deaktivieren, indem Sie die CUPS-Konfigurationsdatei ändern: /etc/cups/cupsd.conf.
Suchen Sie den aktuell in der Datei konfigurierten Richtliniennamen:
DefaultPolicy default
Wenn der Richtlinienname default lautet, fügen Sie die folgenden Zeilen zum XML-Block der Standardrichtlinie hinzu:
<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-->