Hallo Zusammen,
so, jetzt möchte ich auch noch meinen Senf hierzu abgeben, nachdem es mir gelungen ist meinen Scanner mit Hilfe der ursprünglichen Anleitung in diesem Thread zu aktivieren ....
Zuerst einmal vielen Dank an nettraxx für seine Anleitung, welche ein guter Startpunkt für die Einrichtung eines Netzwerkscanners an einem QNAP NAS ist.
Allerdings - und ich nehme an, daß es daran liegt, daß diese erste Anleitung schon aus dem Jahr 2008 ist, und seither sich einiges an der Sys-SW der QNAPs geändert hat - ist diese
Anleitung leider nicht mehr aktuell, weshalb auch ich meine Anfangsschwierigkeiten hatte.
Zuerst, für Eure Orientierung meine Geräte:
TS119 Turbo NAS, Firmware 4.0.2
Scanner HP 6300C
Als Rechner im Netz auf dem gescannt werden soll, ein Linux openSuse 12.3, mit Xsane, was aber für die Funktion der Scanfunktion am NAS keine Rolle spielt, außer daß man sich über eine
ssh-Konsole "leichter" auf das NAS einloggen kann.
1) Der oben erwähnte Anleitung von nettraxx kann man soweit folgen
2) Wie mario210 auf der 2.Seite beschreibt muß man zusätzlich noch libieee1284 (mit ipkg install libieee 1284) installieren.
Die Installation vom Midnight Commander (mc) ist auch sehr empfehlenswert, da man ein paar Dateien noch manuell ändern muß.
Soweit so gut, der Scanner läuft, wenn man es geschafft hat xinetd zu starten, was auch nicht auf Anhieb funktioniert, aber mit der unten beschriebenen Vorgangsweise funktioniert.
Wäre da nicht das Problem, daß die Konfigurationen nach einem Neustart des NAS plötzlich wieder futsch sind.
Das liegt daran, daß die QNAP NAS sämtliche Systemdateien bei einem Neustart refreshen, und damit alle vorherigen manuellen Änderungen überschreiben.
Ich nehme an, daß liegt daran, daß die Systemdateien in einem Flashspeicher liegen, und die Linux-System-Dateien auf welche man über eine ssh-Verbindung Zugriff hat eigentlich "nur" auf einer RAM-Disk liegen.
Also, folgendes muß getan werden, damit der Scanner auch noch nach einem NAS-Neustart noch funktioniert:
1) Wechsle auf /temp
2) Erstelle in diesem /temp Verzeichniss ein neues Verzeichniss, z.B. rmd
3) Nun mounte den Pfad /dev/mtdblock5 auf das neue Verzeichnis mit mount /dev/mtdblock5 /tmp/rmd
4) Wechsle auf /tmp/rmd
5) Überprüfe mit einem ls -l ob sich darin eine Datei autorun.sh befindet - vermutlich nicht
6) Falls keine autorun.sh vorhanden ist, erstelle diese neu, z.B. mit nano autorun.sh, schreibe folgenden Code, bzw. falls autorun.sh schon exisitert hänge den folgenden Code an den bereits vorhandenen:
#!/bin/sh# Activate SANE over network access# Insert SANE-Port into /etc/servicesecho "saned 6566/tcp sane saned # Sane network scanner daemon" >> /etc/servicessleep 1# Start xinetd for XSANEecho "Starting xinetd now ...." >> /share/HDA_DATA/.qpkg/Optware/etc/log/autorun.log/share/HDA_DATA/.qpkg/Optware/sbin/xinetd -f /share/HDA_DATA/.qpkg/Optware/etc/xinetd.conf -filelog /share/HDA_DATA/.qpkg/Optware/etc/log/autorun.logecho "xinetd has been started" >> /share/HDA_DATA/.qpkg/Optware/etc/log/autorun.logsleep 1
Speichere die Datei und mache diese ausführbar mit chmod a+x autorun.sh
Wechsle in das Verzeichnis /temp, und unmounte /tmp/rmd mit umount /tmp/rmd
7) Wechsle in Verzeichniss /opt/etc/ und ändere die Datei xinetd.config wie folgt:
# Copyright 1999-2004 Gentoo Foundation# Distributed under the terms of the GNU General Public License v2# Sample configuration file for xinetddefaults{ only_from = 192.168.0.28 # <== hier die IP der Client-Rechner eintragen instances = 60 log_type = SYSLOG authpriv info log_on_success = HOST PID log_on_failure = HOST cps = 25 30}includedir /share/HDA_DATA/.qpkg/Optware/etc/xinetd.d # <== Änderung der originallen Datei
Wechsle in das Verzeichnis /opt/etc/xinetd.d
Lösche in diesem Verzeichnis die Datei saned - der Inhalt dieser Datei ist meiner Meinung nach unvollständig, und daher nutzlos
Ändere in diesem Verzeichnis die Datei sane-port wie folgt:
# service sane-port
service saned
{
socket_type = stream
port = 6566
server = /share/HDA_DATA/.qpkg/Optware/sbin/saned # <== Änderung der Originaldatei
protocol = tcp
user = admin
group = administrators
wait = no
disable = no # <== Änderung der Originaldatei, der Parameter heißt "disable" und nicht "disable[u]d[/u]"
Alles anzeigen
9) Wechsle in das Verzeichnis /opt/etc und erstelle dort das neue Verzeichnis "log" mit mkdir log.
Wechsle in dieses neue Verzeichnis und erstelle dort die neue Datei autorun.log.
In diese Datei muß nichts eingetragen werden, denn in diese Datei wird später xinetd seine Meldungen bei jedem Neustart des NAS protokollieren.
Wer das nicht will oder braucht, kann das natürlich weglassen, ebenso sämtliche diesbzgl. Einträge in die oben beschriebene Datei autorun.sh
So, das wäre es gewesen.
Mit diesen Einstellungen und Änderungen startet xinetd auch bei einem Neustart des NAS.
Noch 3 Tips:
1) Zum Testen der oben beschriebenen autorun.sh kann man diese auch manuell im laufenden Betrieb des NAS wie folgt starten:
Führe die oben beschriebenen Schritte 1) bis 4) aus, und dann ./autorun.sh ... wichtig dabei ist das ./ !!
In der Datei autorun.log (siehe oben) kann überprüft werden welche Meldungen xinetd dabei erzeugt hat.
2) Falls xinetd schon läuft, und man möchte dieses stoppen ohne das NAS neu zu starten, was immerhin einige Minuten dauert:
Mit ps | grep xinetd die pid (Prozess-ID) von xinetd ermitteln.
Dann kill -s TERM "pid von xinetd".
3) Nach einem Neustart des NAS mit angestecktem Scanner KANN es passieren - zumindest bei mir manchmal -, daß der Scanner nicht oder nicht richtig erkannt wird.
In diesem Fall den Scanner am NAS abstecken, ca. 10 Sek. warten, und dann wieder anstecken.
So, das war es jetzt aber wirklich.
Ich hoffe ich habe mich halbwegs verständlich ausgedrückt, und man kann meine Vorgangsweise nachvollziehen, bzw. erfolgreich "nachbauen" ... :mrgreen: