• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

AirPrint Server mittels Raspberry

Rais

Englischer Kantapfel
Registriert
23.12.03
Beiträge
1.094
Hintergrund: Es sind noch etliche Drucker in Verwendung, welche nicht eine Airprint-fähigkeit mit sich bringen


Warum der Beitrag: Ich habe ein paar neue graue Haare, nachdem ich meinen Samsung CLX-3175 Drucker am iPAD nutzen wollte. Klar, es gibt da von Samsung eine eigene App, die den Drucker bedienen lässt - aber das ist genau der Punkt - eine eigene App, man muss mühsam Links, Dateien und weiteres in diese kopieren, um es dann auszudrucken. Zur Hilfe kam mir ein Kleincomputer (Raspberry), der um einiges stromsparender im Hintergrund läuft, um die Hausautomatisierung Homekit-fähig zu machen.


Verwendete Hardware/Umgebung:

- Raspberry 3 (B)

- Wifi Router (hier eine FritzBox 6490)

- Samsung CLX 3175 (Farblaser Multigerät) - Anbindung über Ethernetkabel

- - alternativ auch ein Brother HL-5350 DN bzw auch HL-5380 DN (Schwarz-Weiss Laser)

- - alternativ auch Samsung SCX-4623 (Schwarz-Weiss Laser Multigerät)

- iPAD mit aktuellem iOS10 (für AirPrint auch ältere Geräte möglich)


Verwendete Software:

- Debian (Linux) auf dem Raspberry

  • - foomatic-db-engine
  • - foomatic-db-gutenprint
  • - libavahi-compat-libdnssd-dev
  • - iOS10

Stolpersteine:


Samsung liefert Druckertreiber für Linux, jedoch in den neueren Versionen ohne ARM Support (der Raspberry hat eine ARM Architektur).


Apple, als Entwickler von CUPS (dem Drucksystem für Unixsysteme), hat die aktuelle Version 2.2.1, auf dem Raspberry lässt sich jedoch (nach meinem Laienstand) nur 1.7.5 installieren. Hierdurch kommt es dazu, dass der Treiber für den CLX 3175 nicht integriert ist.


Keine Ahnung warum, aber ein nachinstallierter CLX 3175 Treiber bzw PPD funktioniert nicht. Hier scheint die nicht mehr vorhandene ARM-Unterstützung von Samsung seinen Teil zu tragen.


Lösung:

nach längeren Suchen im Netz auf das Packet foomatic gestoßen, von dem ein Anwender in einer unscheinbaren Forenantwort berichtet hatte, dass es damit klappt (Quelle: http://www.bchemnet.com/suldr/forum/index.php?topic=109.0 )


Anleitung zum Nachbau:


Debian auf den Raspberry installieren (empfohlen: Noobs). Dazu muss der Rechner an einen Monitor und Tastatur sowie Ethernet angeschlossen werden. relativ einfach mit Noobs: OK klicken oder <Return> drücken, das System installiert sich ohne weitere Zugabe.


Sobald dies fertig ist, kann der Raspberry von Tastatur und Monitor befreit werden. Weitere Bedienung erfolgt (in meinem Fall) über das Terminalprogramm am Mac.

Wissen muss man nur die IP Nummer des Raspberry, als weiteres Beispiel mal 192.168.1.1 genannt.


Im Terminal nun die Anmeldung mit folgendem Dialog starten:

ssh [email protected]

Jetzt wird man nach dem Passwort gefragt: raspberry (Standardpasswort)

Der Anmeldeprozess generiert einen Key, ist dieser von Vorversuchen schon vorhanden, so muss er über

ssh-keygen -R 192.168.1.1 neu generiert werden.


Jetzt sollte man den Raspberry noch die Zeit einstellen, das Passwort ändern und updaten. Übrigens viele der Befehle werden als sogenannter Superuser gestartet (SUDO), um hier nicht in Schreibrechte reinzutappen. Das (APT-GET) ist unter Debian eine Art Installationsprogramm für bereitgestellte Softwarepakete.


sudo dpkg-reconfigure tzdata (hier kann man dann die Zeitzone einstellen)

passwd (hier kann man ein neues Passwort erstellen)

sudo apt-get update (Aktuelle Updates laden)

sudo apt-get upgrade (Aktuelle Upgrades)


Zusatzpakete installieren:


sudo apt-get install cups (Drucksystem installieren)

sudo apt-get install cups-pdf (Zusätze)

sudo apt-get install python-cups (Zusätze)

sudo apt-get install avahi-daemon (Bonjour System)


Um CUPS auch im Netz nutzen zu können, muss man die Rechte dazu in einer Konfigurationsdatei ergänzen, hierzu wird der "Texteditor nano" zu Hilfe genommen, damit man auch gleich den Schock Textbasiertes Unix, was ja auch vom Mac der Unterbau ist, auszukosten: Speichern geht hier über Control-O und Beenden des Texteditors über Control-X.

Mit folgender Zeile wird das editieren der Konfigurationsdatei gestartet:


sudo nano /etc/cups/cups.conf


In dem File sucht man sich am Anfang die Zeile mit


Listen localhost:631


und ersetzt sie mit


Port 631


Danach gibt man das Cups im Netz frei mit dem dreimaligen Zufügen der Zeile


Allow @LOCAL


jeweils hinter

<Location /> <Location /admin> <Location /admin/conf>

Order allow,deny Order allow,deny Order allow,deny

* * *


Dann die Datei Speichen (Control-O) und den Editor beenden (Control-X)

Danach werden dem Benutzer pi noch Adminrechte zugeteilt


sudo adduser pi lpadmin


Anschliessend noch Restart des CUPS System


sudo service cups restart


So, ab jetzt ist über Safari das CUPS des Raspberry bedienbar. Hierzu wird die Zeile https://192.168.1.1:631 eingegeben. Man muss sich hier mit dem Benutzernamen pi und seinem Passwort einloggen.


Ab hier fühlt man sich an die Anfänge von System X vor 16 Jahren erinnert. Man kann einen neuen Netzwerk (oder auch lokal an USB angeschlossen) auswählen, dabei nicht vergessen, ihn im Netz Freigeben "O Diesen Drucker freigeben".


Das war bis hierhin recht einfach - wie oben erwähnt fingen nun die Probleme an, dass neuere Drucker eben nicht auszahlbar waren, und CUPS in höheren Versionen nicht (oder bzw nicht ohne weiteres) installierbar sind.


geholfen hat bei mir nun die Installation der folgenden Zusatzpakete:


sudo apt-get install foomatic-db-engine

sudo apt-get install foomatic-db-gutenprint


sowie dann die Auswahl des Treibers CLP-310 anstelle des 3170er Treiber.


(Quelle: http://www.welzels.de/blog/projekte/raspberry-pi/raspberry-pi-als-airprint-server/ )
 
  • Like
Reaktionen: dg2rbf und trexx