Das Einrichten eines lokalen Druckers über die USB-Schnittstelle oder ihr Netzwerk ist mit dem Raspberry Pi erstaunlich einfach. Unter Linux (auch Raspbian) existiert eine Druckerschnittstelle die weit verbreitet ist.

CUPS steht für Common Unix Printing System und ist ein Open Source Printsystem das für unixartige Betriebssysteme entwickelt wurden und von Apple für sein Betriebssystem macOS verwendet wird.

Nahezu alle gängigen Druckermarken werden von CUPS unterstützt. Besonders gut ist die Integration von HP-Druckern. Aber auch mit Druckern von Samsung, Brothers oder Epson gelingt die Einbindung in der Regel problemlos. Mit CUPS können Drucker direkt über USB oder über das lokale Netzwerk angeschlossen werden.

Installation:

Grundlage dieses Tutorials ist ein installiertes Rasbian Betriebssystem auf einem Raspberry Pi. Sofern noch nicht geschehen, ändern Sie bitte vor der Installation von CUPS das Standardpasswort „raspberry“ des Benutzers „pi“ (sudo passwd). Wie vor jeder neuen Installation, empfiehlt sich die Aktualisierung der Paketliste und ein Upgrade des Raspberries. Die folgenden zwei Befehle im Terminal-Fenster erledigen diese Aufgabe.

sudo apt-get update

sudo apt-get upgrade

Nach erfolgtem Update des Raspberry Pi, kann CUPS installiert werden.

sudo apt-get install cups

Die Installation nimmt einige Zeit in Anspruch. Nach Abschluss der Installation ist CUPS bereit um lokale Drucker anzusteuern.

Um einen Drucker im Netzwerk ansprechen zu können, muss in einem weiteren Schritt die Konfigurationsdatei geöffnet und an mehreren Stellen angepasst werden. Mit dem Befehl nano und dem anschließende Dateipfad, öffnet man die entsprechende Datei. Nano ist der standardmäßig in Debian enthaltene Texteditor.

sudo nano /etc/cups/cupsd.conf

Die Datei cupsd.conf enthält die Konfgurationseinstellungen für das CUPS Printsystem.

Als erstes wird die Zeile Listen localhost:631 gesucht und in #Listen localhost:631 geändert. Das voranstellen eines “#” bewirkt, dass der nachfolgenden Befehl in der Konfigurationsdatei deaktiviert wird. Danach fügt man in die nächste Zeile den Befehl Port 631 ein. Der gesamte Absatz sieht dann wie folgt aus:

# Only listen for connections from the local machine.
# Listen localhost:631
Port 631
Listen /var/run/cups/cups.sock

Im nächsten Block der Konfigurationsdatei wird die Zeile BrowseAddress @LOCAL eingefügt.

# Show shared printer on the local network.
Browsing On
BrowseLocalProtocols dnssd
BrowseAddress @LOCAL

Als Letztes muss noch an drei weiteren Stellen der Befehl Allow @LOCAL hinzugefügt werden. Beginnend nach # Restrict access to the server…

# Restrict access to the server...
<Location />
   Order allow,deny
   Allow @LOCAL
</Location>

# Restrict access to the admin pages...
<Location />
   Order allow,deny
   Allow @LOCAL
</Location>

# Restrict access to configuration files...
<Location /admin/conf>
   AuthType Default
   Require user @SYSTEM
   Order allow,deny
   Allow @LOCAL
</Location>

Gespeichert und beendet wird die geöffnete Konfigurationsdatei mit der Tastenkombination <STRG-X> und der Bestätigung mit <j> oder <y> (je nach Spracheinstellung auf dem Raspberry). Die Arbeiten an der Konfiguration von CUPS sind damit abgeschossen. Mit nachfolgendem Befehl wird CUPS neu gestartet:

sudo service cups restart

Damit sich CUPS im Anschuss auch über die Administrator-Oberfläche verwalten lässt, muss noch der Raspian-Standardbenutzer „pi“ in die Gruppe lpadmin aufgenommen werden.

sudo usermod -aG lpadmin pi

Anschließend ist ein Neustart des CUPS-Druckerservers notwendig.

sudo service cups restart

Drucker einrichten:

Um eine oder mehrerer Drucker einzurichten, öffnet man im Browser des Raspberry Pi seine IP-Adresse gefolgt von der Portangabe „:631“ – also zum Beispiel: http://192.168.178.30:631. Die IP-Adresse des Raspberry Pi findet man entweder in der Auflistung der Netzwerkgeräte im WLAN-Router oder über den Befehl ip addr im Terminal. Dieser Befehl listet alle Netzwerkschnittstellen wie z. B. eth0, lo oder wlan0 Ihres Computers auf, zusammen mit der jeweiligen IP-Adresse. Der Befehl ifconfig liefert eine ähnliche Information.