mikrocontroller.net

Forum: PC-Programmierung USB-Drucker an NAS stricken


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Christian S. (uhrenfreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Forum,

ich habe hier ein älteres NAS-Gerät stehen, das gute Dienste als 
Fileserver leistet. Es hat eine Prozessor aus der der 
armel-versatile-Familie (Marvell Feroceon).
Aus Verkabelungs- und Platzgründen wollte ich dort noch einen 
USB-Drucker mit anschließen. Leider musste ich feststellen, dass die 
Firmware das gar nicht unterstützt. Da ich zufällig das 
Linux-Progrämmchen "p910nd" kenne (Minimal-Server für das 
Jetdirect-Protokoll) habe ich es mir passend kompiliert.

Leider tauchte nun das Problem auf, das die Kernelkonfiguration 
(2.6.12.6) USB-Drucker gar nicht unterstützte. Da habe ich mir dann dass 
Modul "usblp.ko" passend kompiliert. War aufwendig, da ich einen 
gcc-3.4.6 aus einer älteren Lenny-Distribution benutzen musste.

Leider gibt es nun ein weiteres Problem, was mich echt zur Verzweiflung 
bringt. Nach "insmod usblp.ko" steht da
drivers/usb/class/usblp.c: out of memory for write buf
usblp: probe of 1-2:1.0 failed with error -5
Hab mal in den Sourcecode geguckt, da scheint eine Funktion namens 
usb_buffer_alloc nicht richtig zurückzukommen.

Kann man da noch irgendwas machen?

Ansonsten bleibt mir nur, ein weiteres Kästchen (RPi o. ä.) als 
Printserver einzurichten. Weiteres Netzteil, mehr Kabel und eine zu 
verwaltende IP-Adresse mehr. Und viel Arbeit umsonst :-((((((

Grüße C.

P.S. Wenn man nach der obigen Fehlermeldung googelt, findet man 
irgendwie gar nichts, außer dem Sourcecode selbst sowie einige wenige 
Xen-Anwender, die dasselbe Problem mit einer ähnlichen Kernelversion 
hatten.

Autor: Adam P. (adamap)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey,

leider kann ich zu deinem Linux Problem nichts sagen,
aber du musst ja nicht gleich ein RPi einrichten.

Wie wäre es mit einem USB-Ethernet Adapter?

Autor: Rufus Τ. F. (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Adam P. schrieb:
> Wie wäre es mit einem USB-Ethernet Adapter?

Du meinst einen fertigen USB-Druckserver. Ja, der dürfte preislich noch 
unter der Raspberry-Pi-Lösung liegen.

https://www.amazon.de/SODIAL-Printserver-Ethernet-Netzwerk-Drucker-schwarz/dp/B01B5JCOT4/

https://www.heise.de/preisvergleich/tp-link-tl-ps310u-a417893.html?hloc=de

Autor: Christian S. (uhrenfreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Adam!
Danke für den Tipp, ich hatte die Idee auch schon und den Adapter sogar 
schon in der Hand. Bringt mir aber nichts, da ein üblicher 
USB-Ethernet-Adapter auf der USB-Seite ein "Device" darstellt.
Ein USB-Drucker möchte aber in einen "Host" eingestöpselt werden....
Die Anschlüsse hat das NAS schon (sogar mehrfach), nur irgendwo fehlt 
ein Stückchen Software.

Autor: Adam P. (adamap)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Christian S. schrieb:
> da ein üblicher
> USB-Ethernet-Adapter auf der USB-Seite ein "Device" darstellt

Dann meine ich diese nicht. Wir nutzen z.B. welche von icron, da kannst 
du jedes USB Device anschliessen und dieses ist dann im Netzwerk so 
verfügbar als hätte es ein Ethernet Anschluss.

Autor: Adam P. (adamap)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rufus Τ. F. schrieb:
> Du meinst einen fertigen USB-Druckserver

Nein...Ein reiner "Adapter". Die gibts auch von SEH "myUTN".

Autor: Adam P. (adamap)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bzw. bei den Geräten von SEH ist es so, dass du extra Software auf dem 
PC hast und dieser denkt, es wäre direkt am USB vom PC angesteckt.


Aber ich habe nicht nach den Preisen geschaut :-)
Kann natürlich sein, dass diese viel zu hoch sind.

...Ja die nennen sich wohl "USB Device Server" - liegen bei 80€. Vllt 
gibts es auch günstigere mit nur einem USB Anschluss.

: Bearbeitet durch User
Autor: P.S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was für ein NAS ist es denn? Feroceon deutet auf Kirkwood SoC hin. Da 
wäre noch die Option, die alte Firmware gegen ein "richtiges" 
Linux-System zu ersetzen. Das kann man dann auch noch für andere Dinge 
nutzen.

Autor: Rufus Τ. F. (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welches Problem löst ein USB-Device-Server, das ein USB-Druckserver 
nicht löst?

Einen USB-Device-Server (also eine Art "virtuelle USB-Karte") kann man 
sich mit einem Raspberry Pi und der Software "virtual here" auch selbst 
stricken, aber für den Betrieb eines simplen Druckers ist das ... 
übertrieben und unnötig umständlich.

USB-Druckserver lassen sich von so gut wie jedem Betriebssystem (mal von 
Fossilien wie DOS abgesehen) aus mit standardisiertem Protokoll (LPR) 
ansprechen, da braucht man keine zusätzlichen Devicetreiber.

Für einen USB-Device-Server aber braucht man zusätzliche Devicetreiber, 
damit sich das Ding verhält wie eine über das Netzwerk angebundene 
USB-Karte.

Es gibt Anwendungsfälle, wo so etwas sinnvoll ist, aber der Betrieb von 
Druckern gehört nicht dazu.

Autor: Adam P. (adamap)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rufus Τ. F. schrieb:
> Welches Problem löst ein USB-Device-Server, das ein USB-Druckserver
> nicht löst?

Stimmt schon,
wollte nur sagen, dass ich zu Anfang kein USB-Druckserver meinte.

Aber JA, jetzt scheint es die einfachere und kostengünstigere Variante 
zu sein - außer ein RPi, mit dem wäre halt noch mehr möglich.

Autor: Rufus Τ. F. (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Pi ist halt teurer, und in Sachen "hart Abschalten" wohl auch etwas 
empfindlicher. Ansonsten hast Du natürlich recht, daß man mit dem Ding 
mehr anstellen kann.

Aber das kann/könnte man auch mit dem NAS, was ja der Anlass für den 
ganzen Thread hier war ...

Autor: Christian S. (uhrenfreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo P.S.!

Ja, richtig vermutet. Das Gerät ist ein WD Sharespace, quasi ein schon 
etwas altes Schätzchen.

Dass man da quasi ein - ganz neues oder halbwegs neues - Debian drauf 
installieren kann, habe ich irgendwo gelesen. Führt dann wohl auch zu 
verbesserten (RAID)-Performance-Werten.

Ist aber sehr viel Aufwand, finde ich. Man muss dann mit der seriellen 
Schnittstelle Uboot umkonfigurieren, Umgebungsvariablen ändern etc etc.

Oder gibt es was gutes Vorgefertigtes, was dann eine gute NAS-Oberfläche 
mitbringt? Habe nicht so den Überblick, aber Sheevaplug könnte eine sehr 
ähnlich Hardware sein.

Lieber wäre mir es, auf die Schnelle das usblp.ko zum Laufen zu bringen 
zu können...

Grüße C.

Autor: georg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rufus Τ. F. schrieb:
> USB-Druckserver lassen sich von so gut wie jedem Betriebssystem (mal von
> Fossilien wie DOS abgesehen) aus mit standardisiertem Protokoll (LPR)
> ansprechen

Früher war das für Admins das tägliche Brot, heute haben fast alle 
Drucker LAN und/oder WLAN, solche externen Druckerserver sterben aus.

Adam P. schrieb:
> ...Ja die nennen sich wohl "USB Device Server" - liegen bei 80€

Da würde ich einen neuen netzwerkfähigen Drucker in Betracht ziehen. 
Oder den Drucker am Router anschliessen, bei Fritz kein Problem.

Georg

Autor: P.S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Christian,

leider kann ich Dir dazu keine Auskunft geben. Meine alten NASe (Zyxel 
NSA320 und NSA325) laufen mit Arch Linux ARM einfach als Server ohne 
NAS-Software. Ggf. könnte man aber eine installieren.

Ich hatte damals übrigens auch die originalen U-Boote gegen ein selbst 
gebautes U-Boot ausgetauscht. Das ist verhältnismässig ungefährlich, 
weil der Kirkwood-SoC das Hochladen eines Bootloader-Images über die 
serielle Schnittstelle erlaubt.

Grüße P.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.