Linux - Netzwerk und Serveradminstration Drucker Server

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

Druckerserver-Einführung

Was ist CUPS?

Das Common Unix Printing System (CUPS) ist das am weitesten verbreitete Drucksystem auf Linux-Systemen. Es wurde von Michael Sweet entwickelt, später von Apple aufgekauft und seit September 2020 wird es als Fork unter der Leitung von OpenPrinting weiterentwickelt.

  • Aufgebaut als Client/Server-System
  • Drucker lassen sich lokal nutzen, verwalten und im Netzwerk freigeben
  • CUPS wandelt Druckdaten intern immer in PDF um, bevor sie an den Drucker gesendet werden
  • Moderne Drucker mit AirPrint-Unterstützung können direkt über den Treiber IPP Everywhere eingebunden werden – ohne PPD-Datei

Installation

CUPS

sudo apt install cups cups-client cups-bsd
  • cups – Server-Komponente
  • cups-client – Client-Komponente (kann auf reinen Clients auch einzeln installiert werden)
  • cups-bsd – Kompatibilitätslayer für das alte BSD-Drucksystem

Optionale Treiberpakete:

sudo apt install hplip printer-driver-gutenprint
  • hplip – Treiber für HP-Drucker
  • printer-driver-gutenprint – Treiber für viele Farb-Tintendrucker

CUPS-PDF (virtueller Drucker)

CUPS-PDF ist ein virtueller Drucker – ideal zum Testen ohne echte Hardware.

sudo apt install cups-pdf libreoffice

Hinweis: CUPS-PDF kann nur PostScript- und Bild-Dateien verarbeiten. Bei anderen Formaten entstehen leere PDFs.

Konfiguration

Standardmäßig speichert CUPS-PDF die Dateien unter /var/spool/cups-pdf/…. Das lässt sich anpassen:

vi /etc/cups/cups-pdf.conf
Out /home/${USER}/cups-pdf
Grp lpadmin

Hinweis: Je nach Distribution kann die Gruppe anders heißen.

Dienst steuern

systemctl start|stop|restart|status cups

Netzwerkzugang konfigurieren

Standardmäßig hört CUPS nur auf localhost (Port 631):

ss -lntp | grep 631
LISTEN 0  128  127.0.0.1:631  0.0.0.0:*  users:(("cupsd",pid=491,fd=9))
LISTEN 0  128      [::1]:631     [::]:*  users:(("cupsd",pid=491,fd=8))

Alles freischalten

cupsctl --remote-admin --remote-any --share-printers
systemctl restart cups

Zugang überprüfen:

ss -lntp | grep 631
LISTEN 0  128  0.0.0.0:631  0.0.0.0:*  users:(("cupsd",pid=4247,fd=6))
Variante Befehl Wann verwenden?
Schnell cupsctl --remote-admin --remote-any --share-printers Testen / Labor
Präzise cupsd.conf manuell editieren Produktion / bestimmte IP

Weboberfläche

CUPS besitzt einen integrierten Webserver auf Port 631:

http://localhost:631
http://<server-ip>:631
  • Drucker hinzufügen, verwalten und Aufträge einsehen
  • Für administrative Aktionen ist eine Anmeldung erforderlich
  • Nur Mitglieder der Gruppe lpadmin dürfen administrieren:
adduser meinbenutzer lpadmin

Drucker hinzufügen

Unter Verwaltung → Drucker hinzufügen:

  1. Gerät/Anschluss auswählen
  2. Verbindung festlegen (USB, Netzwerk, IPP, …)
  3. Name vergeben (keine Leer- oder Sonderzeichen)
  4. Marke und Modell auswählen
  5. Standardeinstellungen festlegen (z. B. Papierformat)
  6. Testseite drucken: Drucker → Wartung → Testseite drucken

Netzwerkprotokolle

Protokoll URL-Format Hinweis
IPP ipp://hostname/printers/druckername Empfohlen, universell
LPD/LPR lpd://servername/warteschlange Ältere Geräte/Router
SMB smb://domäne/server/drucker Windows-Druckserver (smbclient nötig)
Socket socket://hostname:9100 Notlösung im LAN (HP JetDirect)

Druckerserver im Netzwerk

cupsctl --share-printers         # Lokale Drucker freigeben
cupsctl --remote-admin           # Remote-Administration erlauben

In der Weboberfläche unter Verwaltung → Server:

  • Zeige freigegebene Drucker von anderen Systemen – bindet Netzwerkdrucker automatisch ein
  • Freigeben von Druckern – gibt lokale Drucker im Netz frei
  • Erlaube entfernte Verwaltung – Weboberfläche von anderen Rechnern erreichbar

Warteschlange und Status

  • Aufträge – Druckaufträge einsehen, neu starten, löschen
  • Drucker – Übersicht aller Drucker, Status prüfen, Drucker deaktivieren

Links