Druckerserver mit CUPS unter Linux

Workshop - Drucken in heterogenen Systemumgebungen

08.02.2011 von Thomas Hümmler
CUPS steht für Common-Unix-Printing-System, es ist der Standarddruckdienst aktueller Linux-Distributionen. Das Einrichten ist relativ einfach, und selbst in gemischten Systemumgebungen ist CUPS nach wenigen Handgriffen einsatzbereit. Wie das geht, erfahren Sie in diesem Beitrag.

Druckdienste auf PCs funktionieren nach dem Warteschlangenprinzip. Hierbei stellen die Benutzer ein auszudruckendes Dokument per Klick auf eine Schaltfläche oder mittels kurzem Befehl in die Warteschlange. Was anschließend im Hintergrund passiert, bis das Dokument schwarz auf weiß oder bunt auf Papier aus dem Drucker kommt, darum kümmert sich der Druckdienst.

Bildergalerie: Linux als Druckerserver
Drucken in heterogenen Umgebungen
Drucker-Optionen: Je nach gewähltem Drucker und Treiber bietet die Druckerkonfiguration von Ubuntu unterschiedliche Einstellmöglichkeiten.
Drucken in heterogenen Umgebungen
Druckserver-Einstellungen: Mit diesen Optionen stellen Sie das Verhalten des Druckservers ein. Ist Ihr Rechner ein Client, stellen Sie hingegen die erste Option ein, um Drucker im Netzwerk zu finden.
Drucken in heterogenen Umgebungen
Schnell erledigt: Mit einen einfachen apt-get-Befehl wird CUPS auf einem Debian-Server installiert; insgesamt benötigt der Druckdienst etwa 70 MB Festplattenplatz.
Drucken in heterogenen Umgebungen
Leicht zu handhaben: Der CUPS-Server kann über einen Webbrowser gesteuert werden; so kann man auf unterschiedliche Programme in den verschiedenen Linux-Distributionen verzichten.
Drucken in heterogenen Umgebungen
Windows 7 Home Premium: Hier schalten Sie zunächst den Internetdruckdienst ein und wählen dann als Netzwerkdrucker den CUPS-Drucker.

In Linux-Distributionen wie openSuse oder Ubuntu wird default-mäßig CUPS installiert, das Common-Unix-Printing-System. CUPS ist ein Druckserver, der unter Linux genauso arbeitet wie auf MacOS, das ebenfalls auf Unix basiert. Insofern können Sie unter Linux sofort mit dem Einrichten Ihres Druckers loslegen.

Darüber hinaus kann CUPS in heterogenen Umgebungen genutzt werden, sodass auch Windows-basierte Computer den Druckerserver einsetzen können. Somit lassen sich mit einer zentralen Anlaufstelle für Druckaufträge das Management von Druckanforderungen vereinfachen und Kosten sparen. In unserem Workshop zeigen wir, wie Sie CUPS schnell und problemlos einrichten und anschließend nutzen können.

CUPS in Ubuntu einrichten

In Ubuntu etwa finden Sie das Konfigurationsprogramm für die Drucker unter "System / Systemverwaltung / Drucken". Mit "Hinzufügen" öffnen Sie einen Assistenten zum Einrichten eines Druckers. Der Assistent sucht nach vorhandenen Druckern. Findet er welche, bietet er diese zur Auswahl an. Anderenfalls wählen Sie den Anschluss, dann das Modell und den Treiber.

Druckeroptionen: Je nach gewähltem Drucker und Treiber bietet die Druckerkonfiguration von Ubuntu unterschiedliche Einstellmöglichkeiten.

Viele Drucker haben mehr als einen Treiber, etwa sogenannte Foomatic- oder Gutenprint-Treiber mit zum Teil anderen Funktionen. Welchen Sie letztlich wählen, sollten Sie mit einer Testseite ausprobieren. Ihre Auswahl hängt unter anderem auch von Ihren genutzten Anwendungen ab.

Sie können stattdessen einen Drucker auch mehrmals einrichten - jeweils mit anderen Treibern. Eingerichtete Drucker werden danach im Druckerkonfigurationsprogramm angezeigt. Über das Druckermenü definieren Sie weitere Gerätefunktionen:

Drucken im reinen Linux-Netzwerk

CUPS nutzt Avahi, um Drucker im Netzwerk automatisch zu erkennen. Rechner, die CUPS verwenden, können dementsprechend einfach auf Drucker zugreifen, die an anderen Netzwerkrechnern angeschlossen und freigegeben sind.

Druckservereinstellungen: Mit diesen Optionen stellen Sie das Verhalten des Druckservers ein. Ist Ihr Rechner ein Client, stellen Sie hingegen die erste Option ein, um Drucker im Netzwerk zu finden.

Über Avahi gibt ein Rechner seine Präsenz und seine angebotenen Dienste innerhalb des lokalen Netzwerks bekannt. Dazu muss Avahi nicht einmal extra konfiguriert werden, es funktioniert "Out-of-the-box".

Wenn Sie mehrere Linux-Rechner innerhalb eines Netzwerkes betreiben, sind auch die Drucker innerhalb dieser Netzwerkumgebung dank Avahi schnell und komfortabel konfiguriert. Sie müssen nur auf allen Netzwerkrechnern die CUPS-Servereinstellungen anpassen. Das geschieht in Ubuntu über "Server / Einstellungen":

Drucker in openSuse einrichten

Wenn Sie Ubuntu als Druckserver nutzen, ist Gnome der Standard-Desktop. Auf dem kann CUPS wie zuvor beschrieben konfiguriert werden. Wenn Sie openSuse mit dem KDE-Desktop einsetzen, ist die Vorgehensweise eine andere:

Wählen Sie im openSuse-Konfigurationswerkzeug Yast im Bereich "Hardware" das Applet "Drucker". In der "Druckerkonfiguration" wählen Sie "Hinzufügen". Dann sucht Yast Drucker und den passenden Treiber. Mit "OK" aktualisieren und beenden Sie die Konfiguration.

CUPS in Debian installieren

Während im Debian-Abkömmling Ubuntu CUPS üblicherweise mit installiert wird, ist das in Debian GNU/Linux nicht immer der Fall. Falls Sie den Druckserver dort installieren wollen, erledigen Sie das als Root in einer Konsole mithilfe des apt-get-Befehls:

apt-get install cups

Auf Debian-Clients installieren Sie das Paket cups-client:

apt-get install cups-client

Falls Sie in einem heterogenen Netzwerk über den sogenannten Samba-Dienst auf den CUPS-Server zugreifen wollen, installieren Sie auf dem Debian-Server noch Samba:

apt-get install samba

Wollen Sie jedoch mit Debian-Clients auf Windows-Druckfreigaben zugreifen, installieren Sie den Samba-Client mit

apt-get install smbclient

Schnell erledigt: Mit einen einfachen apt-get-Befehl wird CUPS auf einem Debian-Server installiert; insgesamt benötigt der Druckdienst etwa 70 MB Festplattenplatz.

Der Samba-Client ist eine Implementation des SMB-Protokolls für Linux. Damit erkennt ein Linux-Rechner auch Windows-Datei- und Druckerfreigaben. Man kann damit in einem gemischten Netzwerk von Linux-Clients Drucker benutzen, die an einem Windows-Rechner angeschlossen sind. Für den Fall, dass Sie den Samba-Client installieren, verlangt die Debian-Paketverwaltung nach dem Installieren einige Konfigurationsdaten. So müssen Sie den Namen der Arbeitsgruppe oder Domäne angeben und ob die Passwörter für das SMB-Protokoll verschlüsselt über das Netz gehen sollen. Während unter Windows 98 noch unverschlüsselte Passwörter übertragen wurden, setzen neuere Betriebssystemversionen von Windows nur noch auf verschlüsselte.

CUPS per Webbrowser steuern

CUPS kann auch in gemischten Umgebungen mit Macintosh- und Windows-PCs als Druckserver dienen. Man kann den Server sogar von diesen Rechnern aus steuern. Dazu benötigen Sie nur einen Webbrowser, über den CUPS bedient werden kann. Geben Sie im Browser die Adresse http://IP-Adresse-des-CUPS-Servers:631 ein.

Leicht zu handhaben: Der CUPS-Server lässt sich über einen Webbrowser gestesteuern; so kann man auf unterschiedliche Programme in den verschiedenen Linux-Distributionen verzichten.

Die webbasierte Konfiguration funktioniert natürlich auch direkt am Druckserver vor Ort; dann lautet die Adresse in der Eingabezeile des Browsers http://localhost:631. Dabei handelt es sich um die Port-Adresse des CUPS-Webservers. Über diese rufen Sie dedizierte Statusinformationen vom Drucker und über Druckaufträge ab oder richten neue Drucker ein. Damit erhalten Sie die volle Kontrolle über die oder den angeschlossenen Netzwerkdrucker.

Für die Konfiguration wichtig sind hier vor allem die folgenden drei Untermenüs:

Druckerklassen definieren

In der Druckerkonfiguration wie auch auf der Weboberfläche des CUPS-Servers können Sie Druckerklassen verwalten und neue hinzufügen. Das ist dann sinnvoll, wenn Sie ein sehr großes Netzwerk betreuen - in kleinen Netzwerken sind Klassen meist überflüssig, denn in einer Klasse werden mehrere ähnliche Drucker zusammengefasst.

Das kann nach Stockwerken geschehen oder nach bestimmten Druckmöglichkeiten, etwa alle Drucker mit Briefpapier. Dokumente werden dann nicht mehr an einen Drucker, sondern an eine Druckerklasse geschickt. CUPS führt den Auftrag dann am ersten verfügbaren Drucker der entsprechenden Klasse aus.

Windows-Clients am CUPS-Server einrichten

Während Unix-Rechner problemlos und einfach mit einem CUPS-Server verbunden werden können, ist es mit Windows-Clients leider alles andere als einfach, und in verschiedenen Windows-Versionen werden die Verbindungen zum Druckserver anders eingerichtet. CUPS unterstützt das Internet Printing Protocol (IPP). Windows beherrscht IPP ab XP und Windows 2000 ebenfalls. Damit ist es ohne allzu viel Konfigurationsaufwand möglich, eine Verbindung zum CUPS-Server herzustellen.

Für ältere Windows-Versionen wie Windows 95, 98 oder ME muss auf dem Linux-Server zusätzlich Samba mit Druckfreigaben eingerichtet werden, die dann von Windows aus genutzt werden können.

Unter Windows XP und 2000 passen Sie zunächst noch die hosts-Datei an, unter Windows 7 ist das nicht nötig. Die hosts-Datei enthält die Zuordnungen der IP-Adressen zu Host-Namen und steht im Verzeichnis C:\WNDOWS\system32\drivers\etc\. Fügen Sie eine Zeile mit der IP-Adresse des CUPS-Servers und dessen Host-Namen hinzu, also beispielsweise:

192.168.178.2 cupsido

Anschließend richten Sie den Drucker ein. Fügen Sie über die Systemsteuerung und "Drucker" einen neuen Netzwerkdrucker hinzu. Für Windows XP und 2000 wählen Sie die Option "Verbindung mit einem Drucker im Internet oder Heim-/Firmennetzwerk herstellen"; als URL tragen Sie http://cupsido:631/printers/Name_des_Druckers ein. Im nächsten Fenster suchen Sie den Hersteller und das Druckermodell aus. Abschließend können Sie diesen noch als Standarddrucker festlegen und den Assistenten beenden.

Windows 7 Home Premium: Hier schalten Sie zunächst den Internetdruckdienst ein und wählen dann als Netzwerkdrucker den CUPS-Drucker.

Seit Windows 7 wird es wieder komplizierter. Hier muss in der Systemsteuerung zunächst die Datei- und Druckfreigabe eingeschaltet werden. Damit sollte eine Verbindung zum CUPS-Server möglich sein. Allerdings gibt es den dafür benötigten Datei- und Druckdienst erst ab Windows 7 Home Premium. Unverständlich, denn damit schließt Microsoft sämtliche Netbooks vom Drucken übers Internet aus. Netbooks haben nur die Windows 7 Starter, in dem dieser Druckdienst fehlt.

Zwar gibt es im Netz eine ganze Reihe von Berichten, die Lösungen vorhalten. Auf der CUPS-Projektseite etwa finden sich Ansätze mit Samba über den CUPS-Treiber für Windows. In Microsofts Technet-Forum erhält man den Tipp, erst einen lokalen Windows-Drucker und dann den CUPS-Drucker einzurichten. Beide Vorschläge führen unter Windows 7 Starter nicht zum erwünschten Erfolg.

Eine dritte Lösung wäre schließlich der Apple-Bonjour-Druckdienst für Windows. Den kann man kostenlos von der Apple-Homepage www.apple.com herunterladen. Doch leider funktioniert auch dieser im Test mit Windows 7 Starter nicht.

Dedizierter Netzwerkdrucker als Alternative

In gemischten Umgebungen mit Windows 7 Starter bleibt als Alternative nur ein echter Netzwerkdrucker, der ohne Druckserver direkt über seine TCP/IP-Adresse angesprochen wird. Diese haben allerdings den Nachteil, dass sie nicht so dediziert konfiguriert werden können, sodass der Anwender unter Umständen auf verschiedene Komfortfunktionen verzichten muss, die er sonst gewohnt ist.

So ist beispielsweise keine Nutzereinschränkung möglich, ebenso wenig funktioniert eine zentrale Druckauftragsverwaltung. Wer jedoch darauf verzichten kann, für den ist ein Netzwerkdrucker eine Alternative - auch wenn diese Geräte immer noch um einiges teurer sind als herkömmliche Drucker. (hal)