{"id":646,"date":"2022-01-04T21:06:42","date_gmt":"2022-01-04T20:06:42","guid":{"rendered":"https:\/\/www.steve-meier.de\/?p=646"},"modified":"2022-06-27T16:57:13","modified_gmt":"2022-06-27T15:57:13","slug":"neuer-printserver-selbstgemacht","status":"publish","type":"post","link":"https:\/\/www.steve-meier.de\/?p=646","title":{"rendered":"Neuer PrintServer, selbstgemacht"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Wenn der alte PrintServer weder WPA2 noch AirPrint unterst\u00fctzt, wird es Zeit f\u00fcr ein Upgrade. Da viele Drucker heutzutage bereits ab Werk mit WLAN ausgestattet sind, ist der Markt f\u00fcr PrintServer allerdings deutlich kleiner geworden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Das ist aber kein Problem, denn dank der Raspberry Foundation kann man sich heute selbst einen bauen. Hier ist die Zutatenliste:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Raspberry Pi Zero 2W<\/li><li>MicroSD-Karte mit 8 GB oder mehr<\/li><li>USB OTG Kabel<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Ein normales USB-Kabel funktioniert hier nicht, OTG (on-the-go) ist das wichtige Detail.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dann kann es auch schon losgehen. Mit dem <a rel=\"noreferrer noopener\" href=\"https:\/\/www.raspberrypi.com\/software\/\" target=\"_blank\">Raspberry Pi Imager<\/a> br\u00e4t man zun\u00e4chst &#8220;Raspberry Pi OS Lite (32-bit)&#8221; auf die SD-Karte. Dieser Prozess sollte gerade einmal 5 Minuten brauchen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bevor wir die SD-Karte nun in den Pi Zero stecken legen wir auf der <code>\/boot<\/code> Partition noch zwei Dateien an. Die <code>\/boot<\/code> Partition kann auch von Macs und Windows gelesen werden, was das Ganze extrem vereinfacht.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Eine leere Datei mit dem Namen <code>ssh<\/code> sorgt daf\u00fcr, dass der OpenSSH-Server gestartet wird. Zus\u00e4tzlich legen wir noch eine <code>wpa_supplicant.conf<\/code> an, welche die WLAN-Konfiguration enth\u00e4lt:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>country=DE\nctrl_interface=DIR=\/var\/run\/wpa_supplicant GROUP=netdev\nupdate_config=1\n\nnetwork={\n  ssid=\"MEINWLAN\"\n  psk=\"supersecret\"\n  key_mgmt=WPA-PSK\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Der Pi Zero sollte sich nun nach dem ersten Boot mit dem WLAN verbinden k\u00f6nnen und \u00fcber DHCP eine IP-Adresse erhalten. Der SSH-Server sollte ebenfalls laufen, so dass man sich als <strong>Nutzer<\/strong> <code>pi<\/code> mit dem <strong>Passwort<\/strong> <code>raspberry<\/code> anmelden kann.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Jetzt wo das System (hoffentlich) online ist, beginnt alles mit einem Update auf den neuesten Stand:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>apt-get update &amp;&amp; apt-get upgrade<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u00dcber <code>raspi-config<\/code> kann man anschlie\u00dfend Details wie bspw. die Zeitzone setzen, bevor es ans Eingemachte geht. Im ersten Schritt wird CUPS installiert, gestartet und aktiviert:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>apt-get install cups\nsystemctl enable cups\nsystemctl start cups<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"> Um zu pr\u00fcfen, ob der Drucker mit dem Raspberry Pi verbunden ist, kann man <code>lsusb<\/code> verwenden:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Bus 001 Device 002: ID 04f9:0041 Brother Industries, Ltd HL-2250DN Laser Printer\nBus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Nun kann die Konfiguration von CUPS beginnen. In die Datei <code>\/etc\/cups\/cupsd.conf<\/code> m\u00fcssen eine Handvoll \u00c4nderungen gemacht werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Aus <code>Listen localhost:631<\/code> wird <code>Port 631<\/code>, damit CUPS \u00fcber das Netzwerk erreichbar ist. Zus\u00e4tzlich wird <code>ServerAlias *<\/code> in die Konfiguration aufgenommen, damit der WebServer nicht nur \u00fcber die IP-Adresse erreichbar ist, sondern auch auf einen Hostnamen antwortet.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In die Bl\u00f6cke <code>Location \/<\/code> sowie <code>Location \/admin<\/code>  m\u00fcssen abschlie\u00dfend noch passende <code>Allow<\/code> Direktiven eingef\u00fcgt werden, um \u00fcber das Netzwerk auf den Druckdienst und die Web-Konfiguration zugreifen zu k\u00f6nnen. <code>Allow 192.168.0.0\/16<\/code> ist in meinem Fall ausreichend. Au\u00dferdem muss <code>Order allow,deny<\/code> in <code>Order deny,allow<\/code> ge\u00e4ndert werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Um die neue Konfiguration zu aktivieren, wird CUPS neu gestartet:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>systemctl restart cups<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Um die Web-Konfiguration benutzen zu k\u00f6nnen, braucht es einen Nutzer der Mitglied der <code>lpadmin<\/code>-Gruppe ist. Wer es einfach m\u00f6chte, kann den vorhandenen <code>pi<\/code>-Nutzer in diese Gruppe aufnehmen:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>usermod -aG lpadmin pi<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Hat man sich erfolgreich an der Web-Oberfl\u00e4che angemeldet, kann man einen Drucker hinzuf\u00fcgen. Der USB-Drucker sollte hier direkt auftauchen:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"324\" src=\"https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-1-1024x324.png\" alt=\"\" class=\"wp-image-654\" srcset=\"https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-1-1024x324.png 1024w, https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-1-300x95.png 300w, https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-1-768x243.png 768w, https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-1-688x218.png 688w, https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-1.png 1452w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Im zweiten Schritt sollte man nat\u00fcrlich den Haken bei &#8220;Drucker im Netzwerk freigeben setzen&#8221;.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bei der Treiberauswahl im dritten Schritt hatte ich zun\u00e4chst den Fehler gemacht, mich auf die Suche nach Treibern f\u00fcr diesen uralten Drucker zu machen. Das ist aber unn\u00f6tig, denn es handelt sich um einen Standard PCL-Drucker, der als einzige &#8220;Besonderheit&#8221; beidseitig drucken kann. Man kann daher problemlos den Hersteller <strong>Generic<\/strong> w\u00e4hlen und das Modell <strong>Generic PCL Laser Printer<\/strong>:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-2-1024x719.png\" alt=\"\" class=\"wp-image-655\" width=\"643\" height=\"451\" srcset=\"https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-2-1024x719.png 1024w, https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-2-300x211.png 300w, https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-2-768x539.png 768w, https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-2-688x483.png 688w, https:\/\/www.steve-meier.de\/wp-content\/uploads\/2022\/01\/image-2.png 1214w\" sizes=\"auto, (max-width: 643px) 100vw, 643px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Nach dem Abschluss der Einrichtung und dem Best\u00e4tigen der Standardeinstellungen landet man automatisch auf der Status-Seite des neu eingerichteten Druckers. Hier man man nun im Men\u00fcpunkt Wartung <strong>Testseite drucken<\/strong> w\u00e4hlen, um die Verbindung zu testen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bevor man den Drucker nun auf Clients einbindet sollte man <strong>Installierte Optionen<\/strong> \u00fcberpr\u00fcfen. Hier muss man bspw. ein vorhandene Duplex-Einheit aktivieren, damit die Clients anschlie\u00dfend beidseitiges Drucken anbieten. Das hatte ich im ersten Durchlauf nat\u00fcrlich vergessen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dank Avahi sollte der Drucker nun auf Ger\u00e4ten wie bspw. Macs oder iPhones automatisch sichtbar sein. Es kann sofort gedruckt werden. Happy Printing!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wenn der alte PrintServer weder WPA2 noch AirPrint unterst\u00fctzt, wird es Zeit f\u00fcr ein Upgrade. Da viele Drucker heutzutage bereits ab Werk mit WLAN ausgestattet sind, ist der Markt f\u00fcr PrintServer allerdings deutlich&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,7],"tags":[],"class_list":["post-646","post","type-post","status-publish","format-standard","hentry","category-linux","category-mac"],"_links":{"self":[{"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=\/wp\/v2\/posts\/646","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=646"}],"version-history":[{"count":11,"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=\/wp\/v2\/posts\/646\/revisions"}],"predecessor-version":[{"id":673,"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=\/wp\/v2\/posts\/646\/revisions\/673"}],"wp:attachment":[{"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=646"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=646"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=646"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}