Raspberry Pi zum Wireless-Printserver aufrüsten

Aus LinuxUser 08/2013

Raspberry Pi zum Wireless-Printserver aufrüsten

© Natalija Bielous, 123RF

Im grünen Bereich

Der Raspberry Pi ist so günstig, klein und sparsam, dass er sich auch als WLAN-Printserver für das Recycling eines eigentlich ausgedienten Multifunktionsdruckers eignet – ganz im Sinn der “Green IT”.

Klobige Multifunktionsdrucker mit USB-Anschluss sind keine Augenweide, besonders neben einem schicken Notebook oder Tablet. Netzwerkfähige Drucker dagegen verschwinden unauffällig in einer Ecke, zudem können mehrere Benutzer das Gerät im LAN nutzen. Deswegen haben die solche Drucker ihre USB-Kollegen an vielen Arbeitsplätzen längst abgelöst.

Das ist aber noch lange kein Grund, den alten USB-Drucker auf dem nächsten Wertstoffhof zu entsorgen. Der Raspberry Pi eignet sich hervorragend dazu, die USB-Welt mit dem LAN zu verbinden, und stellt obendrein in Form von Cups noch einen veritablen Druckserver-Dienst zur Verfügung. Mit einem WLAN-Adapter am RasPi hängt die Standortwahl für den Drucker dann nur noch von einem passenden Stromanschluss ab.

Einkaufsliste

Da reine USB-Drucker nicht mehr en vogue sind, gibt es entsprechende Gebrauchtgeräte zu sehr günstigen Preisen. Selbst wenn Sie also nicht auf einen noch vorhandenen USB-Drucker zurückgreifen können, lohnt sich schon aus Kostengründen unter Umständen immer noch die Anschaffung eines Gebrauchten. Die gibt es bei Ebay schon für unter 20 Euro.

Die Tabelle “Einkaufsliste” zeigt eine Zusammenstellung für ein Komplettpaket inklusive eines gebrauchtem Multifunktionsdruckers des Typs Canon Pixma MP160, den Sie auch als Scanner einsetzen können. Bei Gesamtkosten von rund 90 Euro kommt das Komplettpaket selbst samt Drucker etwas günstiger als die Anschaffung eines vergleichbaren neuen, WLAN-fähigen Druckers. Findet sich einzelne Komponenten aus der Liste noch in Ihrem Reste-Fundus – etwa ein Micro-USB-Steckernetzteil von einem alten Smartphone, eine passende SD-Card, oder eben ein schon etwas eingestaubter USB-Drucker – dann bietet sich hier eine preislich konkurrenzlos günstige Lösung an.

Einkaufsliste

Komponente Bezugsquelle Preis (ca.)
Multifunktionsdrucker Canon MP160 Ebay 20 Euro
Raspberry Pi Type B Amazon 41 Euro
Gehäuse für den RasPi Amazon 7 Euro
Wireless USB Adapter EDIMAX EW-7811UN Amazon 11 Euro
Steckernetzteil Micro-USB 5V Amazon 7 Euro
SD-Card (2 GByte) Amazon 6 Euro
Summe   92 Euro

Das Grundsystem

Der Raspberry Pi lädt sein Betriebssystem von einer SD-Card. Dazu bespielen Sie eine mindestens 2 GByte große SD-Card mit einer Linux-Distribution, die sich für den ARM-Prozessor des RasPi eignet. Die folgende Anleitung basiert auf dem von Raspberry.org empfohlenen Debian-Ableger Raspbian “Wheezy”, dessen Image Sie als ZIP-Archiv von der Raspberry-Website [1] herunterladen.

Die Webseite enthält auch eine Anleitung für das Vorbereiten der SD-Card. Für die Installation mit einem Windows-System verweist das Projekt auf das Tool Win32DiskImager. Auf einem vorhandenen Linux-System gelingt die Installation unter Ubuntu mit dem grafischen Tool Imagewriter. Noch einfacher geht es mit Bordmitteln, sofern Sie die Kommandozeile nicht scheuen: Von dort kopieren Sie das Image einfach per dd auf eine SD-Card.

Das Tool warnt allerdings nicht, wenn der Vorgang eventuell schon vorhanden Daten auf dem Ziellaufwerk überschreibt – gehen Sie hier also vorab sicher, welches Device auf die SD-Card verweist. Nach dem Einstecken der Speicherkarte rufen Sie dazu dmesg auf, das in den letzten Zeilen das gerade erkannte Gerät aufführt (im folgenden Beispiel sdb).

Nachdem Sie das Raspbian-Image aus dem heruntergeladenen ZIP-Archiv extrahiert haben, kopieren Sie es dann mit dem folgenden Befehl auf die SD-Card:

$ dd bs=4M if=2013-05-25-wheezy-raspbian.img of=/dev/sdb

Wie Sie hier sehen, war die zu Redaktionsschluss aktuelle Raspbian-Version von Ende Mai 2013. Den Gerätenamen /dev/sdb müssen Sie wie bereits erwähnt auf Ihrem System unter Umständen anpassen.

Nach dem Kopieren des Images ist die SD-Card betriebsbereit, und Sie können sie direkt in den Raspberry Pi einstecken. Nach Anschluss der Stromversorgung lädt der RasPi das Betriebssystem und lässt sich nun konfigurieren.

Netzwerkkonfiguration

Stehen ein HDMI-Monitor und eine USB-Tastatur zur Verfügung, kann die Konfiguration des RasPi direkt am Gerät erfolgen. Die Installation via Netzwerk bereitet aber ebenso wenig Probleme, sofern Sie den Zwergcomputer vorab per Netzwerkkabel ans LAN angeschlossen haben; Dann fragt er per DHCP nach einer IP-Adresse und konfiguriert die Netzwerkschnittstelle mit den angelieferten Daten. Die Grundinstallation liefert auch gleich einen SSH-Server mit, sodass der Installation per SSH nichts im Wege steht.

Freilich klappt eine Konfiguration per SSH nur dann, wenn Sie wissen, welche IP-Adresse der RasPi vom DHCP-Server erhalten hat. Dieser läuft in der Regel auf dem heimischen Router, wo Sie die per DHCP vergebenen Adressen in einem Menü zu den DHCP-Einstellungen nachschlagen können. Der RasPi meldet sich mit dem Host-Namen raspberrypi an. Bei der Gelegenheit nehmen Sie idealerweise auch gleich eine Adressreservierung vor, falls der Router das unterstützt: Dann erhält der RasPi immer die gleiche IP-Adresse – die Voraussetzung dafür, dass die Druck-Clients ihn später direkt finden können.

Kennen Sie die IP-Adresse – wir verwenden im Beispiel 192.168.0.100 – öffnet ein Aufruf von ssh pi@192.168.0.100 für den voreingestellten Nutzer pi eine Konsole auf dem RasPi. Das zugehörige Passwort lautet nach der Grundinstallation raspberry – das sollten Sie mit einem Aufruf von passwd bei nächster Gelegenheit ändern.

Soll der RasPi eine feste IP-Adresse erhalten, es besteht aber nicht die Möglichkeit, das über eine Adressreservierung im Router einzustellen, dann gilt es die Konfigurationsdatei /etc/network/interfaces anzupassen. Bei der festen IP-Adresse muss es sich um eine handeln, die der Router nicht an andere DHCP-Clients vergibt. Verteilt der Router mit der IP-Adresse 192.168.0.1 im Netzwerk zum Beispiel Adressen von 192.168.0.100 bis 192.168.0.254 an DHCP-Clients, dann passen Sie die Datei nach dem Muster aus Listing 1 an (zum Beispiel mit dem CLI-Editor Nano).

Listing 1

#/etc/network/interfaces
auto lo
iface lo inet loopback
iface eth0 inet static
address 192.168.0.64
netmask 255.255.255.0
gateway 192.168.0.1
allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp

Der RasPi ist dann unter der fest eingestellten IP-Adresse 192.168.0.64 erreichbar. Damit er Internet-Adressen auflösen kann, müssen Sie einen DNS-Server angeben. Im obigen Beispiel tragen Sie dazu der Router in der Datei /etc/resolv.conf ein (Listing 2).

Listing 2

#/etc/resolv.conf
nameserver 192.168.0.1

Die Konfiguration aus Listing 1 erlaubt auch noch das Einstecken eines WLAN-Adapters, den Sie dann wieder via DHCP einstellen [2]. Versieht im heimischen Netz ein Router seinen Dienst, erledigt dieser das in der Regel gleich mit.

Damit ist die Grundkonfiguration im Wesentlichen abgeschlossen. Einige weitere Grundeinstellungen des Systems nehmen Sie über einen Aufruf von sudo raspi-config vor. Hier ist es zum Beispiel sinnvoll, die Systempartition auf die gesamte SD-Card auszudehnen. Zu guter Letzt aktualisieren Sie dann noch per Apt-get die Software des Systems (Listing 3).

Listing 3

$ sudo apt-get update
$ sudo apt-get upgrade

Cups installieren

Das Drucker-System Cups verwaltet die per USB oder Netzwerk angeschlossenen Drucker und stellt eine Verwaltungsoberfläche bereit. Die Installation von Cups, das Treiber für viele Drucker bereits mitbringt, geschieht mit sudo apt-get install cups. Den Benutzer pi sollten Sie in die Gruppe lpadmin aufnehmen, damit er auf die administrativen Funktionen von Cups zugreifen kann:

$ sudo usermod -a -G lpadmin pi

Nach der Installation läuft Cups als Systemdienst und stellt eine Verwaltungsoberfläche auf dem lokalen System bereit. Ist das Netzwerk, in dem sich der RasPi befindet, halbwegs vertrauenswürdig – und beim heimischen LAN ist das ja der Fall – genügt die Kommandofolge aus Listing 4, um Cups auch aus dem Netzwerk zu erreichen. Die Verwaltungsoberfläche steht dann unter der IP-Adresse des Raspberry Pi im Netzwerk zur Verfügung. Sie rufen sie im Webbrowser auf – in unserem Beispiel unter der Adresse http://192.168.0.100:631/.

Listing 4

$ sudo cupsctl --remote-any
$ sudo /etc/init.d/cups restart

Drucker einrichten

Zur Installation des Druckers wechseln Sie in der Cups-Weboberfläche zum Menüpunkt Verwaltung, wo Sie den Schalter Drucker hinzufügen anklicken. Die Oberfläche schaltet nun in den Administrationsmodus und fragt dazu Benutzername und das Passwort ab. Hier nutzen Sie den vorher eingerichteten Benutzer pi.

Sofern der anzusteuernde Drucker (in unserem Beispiel der Canon Pixma MP160) bereits per USB angeschlossen und angeschaltet ist, erkennt Cups ihn automatisch und zeigt ihn an. Sie wählen den MP160 nun aus und klicken dann auf Weiter. Jetzt dürfen Sie eine Beschreibung für das Gerät eingegeben und geben den Drucker im Netz frei. Im nächsten Schritt wählen Sie den Treiber Canon PIXMA MP160 – CUPS+Gutenprint v5.2.9 (en) aus. Ein Klick auf Drucker hinzufügen führt weiter zu den Standardeinstellungen, an denen Sie in der Regel nichts ändern müssen.

Danach steht der Drucker dann in Cups bereit. Einem Klick auf den Link Canon_MP160 zeigt ihn an, und Sie können durch Anwählen von Testseite drucken in der oberen linken Auswahl-Box überprüfen, ob das Gerät wie gewünscht funktioniert.

Client einrichten

Unter Gnome gelangen Sie über die Systemeinstellungen zur Druckerkonfiguration. Nach einem Klick auf Entsperren dürfen Sie über den gleichnamigen Schalter einen Drucker hinzufügen. Gnome erkennt dabei den Drucker automatisch, da Sie ja die entsprechenden Dienste im vorigen Schritt für das lokale Netzwerk freigegeben haben. Unter Windows gelingt die Einbindung des Druckers ähnlich automatisch. Auf einem Android-Tablet nutzt der Autor erfolgreich die (allerdings kostenpflichtige) App PrintBot.

Scanner bereitstellen

Um die Scan-Funktion des Druckers über das Netzwerk bereitzustellen, nehmen Sie die Dienste von Saned in Anspruch. Die entsprechenden Sane-Werkzeuge sollten nach der Installation von Cups schon eingerichtet sein – falls nicht, holen Sie das mit dem folgenden Aufruf nach:

$ sudo apt-get install sane-utils

Anschließend stellen Sie in der Datei /etc/default/saned den Dienst als Systemdienst mit automatischen Start ein, indem Sie die Zeile RUN=no zu RUN=yes abändern.

Der Eintrag für das lokale Netzwerk – für unser Beispiel die Zeile 192.168.4.0/24 in der Datei /etc/sane.d/saned.conf ermöglicht den Zugriff von Scanner-Clients über das lokale Netzwerk. Mit einem sudo /etc/init.d/saned restart starten Sie anschließend den Dienst neu, um die geänderte Konfiguration zu aktivieren.

Auf einem Linux-Client zeigt der Aufruf von scanimage -L, ob der Scan-Dienst im Netzwerk zur Verfügung steht: Dann meldet sich der Scanner mit einer Ausgabe wie in Listing 5.

Listing 5

$ scanimage -L
device 'net:192.168.4.64:pixma:04A91714_010466' is a CANON Canon PIXMA MP160 multi-function peripheral

Ein einfacher Client für das Scannen unter Linux ist Xsane. Das Programm sucht beim Start nach verfügbaren Scannern und findet dabei auch solche, die es über das lokale Netzwerk erreichen kann (Abbildung 1). Für das Scannen via LAN unter Windows verweisen viele Anleitungen auf das Tool SaneTwain [3].

Abbildung 1: Xsane bindet auch im Netzwerk erreichbare Scanner mit ein.

Abbildung 1: Xsane bindet auch im Netzwerk erreichbare Scanner mit ein.

Fazit

Mit wenigen Schritten heben Sie dank des Raspberry Pi als Vermittler einen Multifunktionsdrucker, der nur über einen USB-Anschluss verfügt, problemlos ins lokale Netzwerk. Damit verhelfen Sie idealerweise einem bereits eingemotteten älteren Drucker mithilfe ebenfalls in der Restekiste vorhandener Komponenten zu einem zweiten, sinnvollen Leben – und sparen Kosten. Beides ist nicht nur angenehm, sondern vor allem auch ganz im Sinn einer nachhaltigen “grünen” IT. 

Infos

[1] RasPi-Betriebssystem-Images: http://www.raspberrypi.org/downloads

[2] WLAN auf dem RasPi per SSH konfigurieren: http://www.welzels.de/blog/2012/12/raspberry-pi-netzwerk-und-wlan-konfigurieren/

[3] SaneTwain: http://sanetwain.ozuzo.net/

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDF
LinuxUser 08/2013 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben