Das Drucken auf einen Cups-Server ohne Verwendung des lokalen CUPS funktioniert seit OS X Lion nicht mehr

Mit unserem neuen 21,5"-iMac haben wir das erste Mac-System für unser Windows/Linux-orientiertes Büro gekauft. Daher haben wir noch nicht viel Erfahrung im Umgang mit Mac OS X.

Ich habe angefangen alles einzurichten und es lief soweit ganz gut bis ich bei der Konfiguration unserer Netzwerkdrucker angelangt bin. In unserem Unternehmen verwenden wir ein Linux-System, auf dem ein CUPS-Server läuft. Dieser Server enthält die Konfiguration aller Warteschlangen. Dort werden alle Änderungen bzgl. Einstellungen oder auch zusätzlicher Drucker vorgenommen.

Da wir nicht auf jedem Client-System Änderungen vornehmen wollen, wenn neue Drucker in die Infrastruktur kommen, leiten wir alle Druckaufträge an den entfernten CUPS-Druckserver weiter. Dies spart viel Zeit, anstatt Drucker über IPP oder gleichwertig zu konfigurieren.

Damit dies unter Mac OS X funktioniert, habe ich einen Link mit den benötigten Informationen gefunden: http://hints.macworld.com/article.php?story=2004011920201534

Die .cupsrc-Datei (versteckte Datei) im Home-Verzeichnis, die die Zeile enthält

ServerName <myserver>

weist das lokale CUPS-System an, entfernte Druckwarteschlangen von unserem Druckserver zu empfangen.

Nach dem Speichern der Datei zeigt das GUI-Konfigurationstool für Drucker in Mac OS X (Systemeinstellungen… -> Drucken & Faxen) alle Remote-Warteschlangen an, die auf dem zentralen CUPS-Server laufen.

Aber nachdem ich auf Mac OS X 1.7 „Lion“ aktualisiert habe, zeigt die GUI die Warteschlangen nicht mehr an. Ich habe keine Ahnung, was ich tun soll, und selbst der Apple Support (registrierter Besitzer des CUPS-Systems) konnte mir dabei nicht helfen. Sie verwiesen nur auf die CUPS-Konfigurationsdatei (/etc/cups/cupsd.conf), aber ich kenne dort nicht die richtige Einstellung zum Drucken in Remote-Warteschlangen. Auch das Webinterface, das auf localhost:631 läuft, konnte mir nicht helfen ... Irgendwelche Ideen?

Antworten (4)

Die Versionshinweise für CUPS 1.5 erwähnen dies

CUPS unterstützt die alten Dateien ~/.cupsrc oder ~/.lpoptions von CUPS 1.1.x nicht mehr. Die mit CUPS 1.2 eingeführten Dateien ~/.cups/client.conf und ~/.cups/lpoptions müssen nun verwendet werden.

Haben Sie versucht, die Linie zu setzen

ServerName print-server

hinein ~/.cups/client.conf?

Ja, ich habe versucht, die Datei „client.conf“ in das Verzeichnis „.cups/“ in meinem Home-Verzeichnis zu verschieben. Scheint nicht zu funktionieren! Gibt es eine mögliche zentrale Einstellung für alle Benutzer, die diese Maschine ausführen?
Ja, ich habe das gleiche Problem, und ich hatte bereits den richtigen Dateinamen. Was meiner Meinung nach unser besonderes Problem ist, ist, dass unser alter Linux-CUPS-Server mit v1.1 nicht mehr mit dem CUPS 1.5-Client auf den Lion-Rechnern arbeiten kann.

Richten Sie /etc/cups/client.conf korrekt für Ihre Umgebung ein, sodass die Cups-Drucker im Druckkonfigurationsdialog angezeigt werden.

Damit die Warteschlangen in den Anwendungen als Auswahl angezeigt werden, machen Sie jeden Drucker einmal zum Standarddrucker. Verteilen Sie die resultierende com.apple.print.favorites.plist an Benutzer mit mcx oder kopieren Sie sie nach ~/Library/Preferences

Es verwendet die PPDs auf dem Server. Keine Client-Konfiguration notwendig!

Dies ist eine alte Frage, aber ich stehe gerade vor dem gleichen Problem, ohne eine schnelle Lösung zu finden.

Die CUPS-Dokumentation weist darauf hin, dass die Verwendung von ServerName „unter OS X 10.7 oder höher nicht funktioniert, da Sandbox-Anwendungen nicht immer direkten Netzwerkzugriff haben“. :'(

Eine mögliche Problemumgehung besteht darin, das Terminal zu verwenden und die Jobs mit dem Befehl lp/lpstat an den Server zu senden . Sie müssen den Server mit der Option -h angeben . Beachten Sie, dass dies für grafische Anwendungen nicht funktioniert.

So listen Sie die Drucker auf:

$ lpstat -h <SERVER ADDRESS> -a

So drucken Sie eine PDF-Datei:

$ lp -h <SERVER ADDRESS> -d <PRINTER QUEUE> <PDF TO PRINT>

Sie können alles in zwei Skripte packen: lptb und lptbstat .

lptb :

#!/bin/sh

LP_COMMAND=$(which lp)
CUPS_SERVER="<SERVER ADDRESS>"
PRINTER="${PRINTER:-<DEFAULT PRINT>}"

CUPS_GSSSERVICENAME=ipp ${LP_COMMAND} -h "${CUPS_SERVER}" -d "${PRINTER}" "$@"

lptbstat :

#!/bin/sh

LP_COMMAND=$(which lpstat)
CUPS_SERVER="<YOUR SERVER>"

${LP_COMMAND} -h "${CUPS_SERVER}" "$@"

So zeigen Sie die Liste der Warteschlangen an:

$ lptbstat -a

PDF drucken:

$ lptb <PDF>

Drucken Sie ein PDF mit einer bestimmten Warteschlange:

$ PRINT="<MY GREAT PRINTER>" lptb <PDF>

Ich weiß, das ist alt, aber wenn ich einen Drucker auf meinem Cups-Server (Ubuntu) einrichte, kann ich jetzt erfolgreich von einem Mac drucken. Dies funktioniert auf Catalina und Big Sur.

Unter Windows lautet die Druckeradresse http://192.168.1.10:631/printers/HP4250

Auf Mac musste ich setzen
Adresse: 192.168.1.10:631
Wählen Sie: IPP (Internet Printing Protocol)
Warteschlange: /printers/HP4250

Ich verwende den generischen Postscript-Treiber, aber das kann für Ihr Setup anders sein.

Ich hoffe, das hilft jemand anderem, da ich mehr als eine Stunde damit verschwendet habe, eine funktionierende Lösung zu finden.