Seit zwei Tagen versuche ich vergeblich obige Kamera via USB mit meinem SuSE-8.1-System bekannt zu machen (weitggehend Standard- installation und Standardkernel vom 20.3.03). Hat das überhaupt schon jemand geschaft? Wenn ich die Kamera mit dem Rechner verbinde taucht zwar das nette Symbol für Digitalkamera auf (KDE), aber der Versuch, im sich nach Anklicken öffnenden Konquerror irgendwelche der vorhandenen (Bild)Daten zu lesen bzw. angezeigt zu bekommen wird quittiert mit einem schroffen "Datei konnte nicht gelesen werden Bad Parameters". Außerdem mosert das System in in /var/log/messages zu Recht, daß der Treiber fehle. Nur welcher ist der richtige? Hier ein relevanter Auszug aus /var/log/messages: (...) Apr 28 09:52:56 hares kernel: hub.c: USB new device connect on bus3/1, assigned device number 4 Apr 28 09:52:56 hares kernel: APIC error on CPU0: 40(40) Apr 28 09:52:56 hares last message repeated 4 times Apr 28 09:52:56 hares kernel: scanner.c: probe_scanner: User specified USB scanner -- Vendor:Product - 4b8:11e Apr 28 09:52:56 hares kernel: usb.c: USB device 4 (vend/prod 0x4a9/0x304d) is not claimed by any active driver. Apr 28 09:52:58 hares kernel: APIC error on CPU0: 40(40) (...) Okay, zunächst hier wird nochmals der erkannte und anstandslos funktionierende Scanner Epson Perfection 1660 Photo erkannt. Dann wird aber mitgeteilt, das ein passender Treiber fehle!? Welcher? Und was bedeuten die APIC errors? Der entsprechende Auszug aus /etc/modules.conf: (...) options usb-storage product=0x304d vendor=0x4a9 Das war wohl doch nicht der Weisheit letzter Schluß. Und ein lsmod liefert: hares:~ # lsmod | grep usb usb-storage 52400 0 (unused) usbserial 18492 0 (autoclean) (unused) usb-ohci 18184 0 (unused) usbcore 56832 1 [usb-storage usbserial snd usb-ohci ehci-hcd scanner] Sollte soweit doch passen, oder? So und nu? Hat da jemand 'nen schlauen Tip für mich? harald -- Dr. Harald Krause E-Mail: Harald.Krause@a-city.de
On Mon, Apr 28, 2003 at 10:18:43AM +0200, Dr. Harald Krause wrote:
Seit zwei Tagen versuche ich vergeblich obige Kamera via USB mit meinem SuSE-8.1-System bekannt zu machen (weitggehend Standard- installation und Standardkernel vom 20.3.03). Hat das überhaupt schon jemand geschaft?
Ja.
Wenn ich die Kamera mit dem Rechner verbinde taucht zwar das nette Symbol für Digitalkamera auf (KDE), aber der Versuch, im sich nach Anklicken öffnenden Konquerror irgendwelche der vorhandenen (Bild)Daten zu lesen bzw. angezeigt zu bekommen wird quittiert mit einem schroffen "Datei konnte nicht gelesen werden Bad Parameters".
Apr 28 09:52:56 hares kernel: usb.c: USB device 4 (vend/prod 0x4a9/0x304d) is not claimed by any active driver.
wird aber mitgeteilt, das ein passender Treiber fehle!? Welcher?
Der Treiber der fehlt ist im Userspace und heisst "libgphoto2". Benutze gphoto2 --auto-detect --list-files oder grafische Frontends wie digikam oder gtkam. Die Canons sind _nicht_ usb-storage kompatibel. Ciao, Marcus
On Mon, 28 Apr 2003, Marcus Meissner wrote:
Der Treiber der fehlt ist im Userspace und heisst "libgphoto2".
hao@hares:~> rpm -qa | grep libgphoto2 libgphoto2-2.1.1dev3-26 ist also da.
Benutze gphoto2 --auto-detect --list-files oder grafische Frontends wie digikam oder gtkam.
gerne, die Ausgabe sieht so aus: hao@hares:~> gphoto2 --auto-detect Modell Port ---------------------------------------------------------- Nicht sehr erfreulich, und digikam und gtkam mögen leider auch nicht. :-( gphoto2 --auto-detect --debug liefert übrigens: (...) 0.060411 gphoto2-port(0): Konnte USB-Gerät (Hersteller 0x4a9, Produkt 0x304d) nicht finden. (...) und nach dem Tip, hotplugging zu konfigurieren: hao@hares:~> grep 4a9 /etc/hotplug/usb/usbcam.usermap | grep 3049 usbcam 0x0003 0x04a9 0x3049 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000 hotpluging müßte also auch gehen, oder nicht? Nun bin ich weiterhin ratlos. Nicht gerne schiebe ich übrigens nach, daß das ganze unter Windows mit dieser Kamera, dieser Compactflash- Karte und mit den darauf befindlichen Daten funktioniert. Da kann also nicht der Fehler liegen. harald -- Dr. Harald Krause E-Mail: Harald.Krause@a-city.de
On Mon, Apr 28, 2003 at 04:35:41PM +0200, Dr. Harald Krause wrote:
On Mon, 28 Apr 2003, Marcus Meissner wrote:
Der Treiber der fehlt ist im Userspace und heisst "libgphoto2".
hao@hares:~> rpm -qa | grep libgphoto2 libgphoto2-2.1.1dev3-26
ist also da.
Benutze gphoto2 --auto-detect --list-files oder grafische Frontends wie digikam oder gtkam.
gerne, die Ausgabe sieht so aus: hao@hares:~> gphoto2 --auto-detect Modell Port ----------------------------------------------------------
Nicht sehr erfreulich, und digikam und gtkam mögen leider auch nicht. :-(
Was sagt ls -l /proc/bus/usb/0*/* bei angesteckter Kamera? Ein File dort drinnen sollte dir gehoeren, durch das usbcam script. Ciao, Marcus
Hi Marcus! On Mon, 28 Apr 2003, Marcus Meissner wrote:
Was sagt ls -l /proc/bus/usb/0*/* bei angesteckter Kamera?
Ein File dort drinnen sollte dir gehoeren, durch das usbcam script.
Weiß ich nicht, denn ich habe es inzwischen hinbekommen ;-) - aber nur als root! Nun würde ich das aber ganz gerne auch als normaler user können. An welchen Rechten muß ich denn drehen, damit auch das noch funktioniert? Danke jedenfalls für Deine Hilfe! harald -- Dr. Harald Krause E-Mail: Harald.Krause@a-city.de
Am Montag, 28. April 2003 21:17 schrieb Dr. Harald Krause:
Weiß ich nicht, denn ich habe es inzwischen hinbekommen ;-) - aber nur als root! Nun würde ich das aber ganz gerne auch als normaler user können. An welchen Rechten muß ich denn drehen, damit auch das noch funktioniert?
Versuch's mal mit folgenden Rechten in /etc/fstab |: usbdevfs /proc/bus/usb usbdevfs noauto,devmode=0666 0 0 So funktioniert es bei mir mit der Powershot A40 als User. HTH Andreas
Hi Andreas! On Mon, 28 Apr 2003, Andreas Kemmer wrote:
Weiß ich nicht, denn ich habe es inzwischen hinbekommen ;-) - aber nur als root! Nun würde ich das aber ganz gerne auch als normaler user können. An welchen Rechten muß ich denn drehen, damit auch das noch funktioniert?
Versuch's mal mit folgenden Rechten in /etc/fstab
|: usbdevfs /proc/bus/usb usbdevfs noauto,devmode=0666 0 0
^^^ Welche Bedeutung hat dies?
So funktioniert es bei mir mit der Powershot A40 als User.
Bei mir leider immer noch nicht, mit und ohne obige "Sonderzeichen". Oder ist dazwischen ein reboot nötig? Wohl kaum! harald -- Dr. Harald Krause E-Mail: Harald.Krause@a-city.de
Hallo Harald, hallo Leute, Am Dienstag, 29. April 2003 20:41 schrieb Dr. Harald Krause:
On Mon, 28 Apr 2003, Andreas Kemmer wrote:
Versuch's mal mit folgenden Rechten in /etc/fstab
|: usbdevfs /proc/bus/usb usbdevfs noauto,devmode=0666 0 0
^^^ Welche Bedeutung hat dies?
Dekoration ;-) Die "echte" Zeile fängt mit "usbdevfs" an.
So funktioniert es bei mir mit der Powershot A40 als User.
Bei mir leider immer noch nicht, mit und ohne obige "Sonderzeichen". Oder ist dazwischen ein reboot nötig? Wohl kaum!
Einen Reboot brauchst Du wohl nicht. Was Du brauchst, ist umount /proc/bus/usb ; mount /proc/bus/usb BTW: Du weißt, dass Du mit obigem fstab-Eintrag _alle_ USB-Geräte für jeden lesbar und beschreibbar machst? Das ist IMHO ungeschickt ;-) Besser wäre es, wenn Du nur das für die Kamera benötigte Device für Dich schreibbar machen lässt. Schau mal in /etc/hotplug/usb nach. Dort liegt eine Datei usbcam.usermap, die bei der 8.1 recht unvollständig war (Dateigröße ca. 10k statt 18k nach Neugenerierung). Die usbcam.usermap lässt sich leicht mit gphoto2 --print-usb-usermap neu generieren (siehe Kommentar im usbcam-Script). Nächste Baustelle ist das Script /etc/hotplug/usb/usbcam. Dort kannst Du den chown- oder chmod-Befehl nach Deinem Geschmack anpassen, falls der Automatismus nicht wie gewünscht funktioniert. (Es ist eben schwierig festzustellen, welcher User gerade das USB-Kabel in der Hand hat *g*) Und spätestens jetzt kannst Du wohl auch wieder das devmode=... aus der fstab entfernen ;-) Gruß Christian Boltz -- Meine allerste Festplatte hatte 30 MB, und ich war der King, weil alle anderen 20 MB hatten. Sie fragten, was ich mit 30 MB wolle, die bekomme ich doch nie voll. ;) Meine jetzige Graphikkarte hat mehr. ;)) [Bernd Brodesser in suse-linux]
On Thu, 01 May 2003, Christian Boltz wrote:
Versuch's mal mit folgenden Rechten in /etc/fstab
|: usbdevfs /proc/bus/usb usbdevfs noauto,devmode=0666 0 0
^^^ Welche Bedeutung hat dies?
Dekoration ;-) Die "echte" Zeile fängt mit "usbdevfs" an.
Dachte ich mir doch ...
Einen Reboot brauchst Du wohl nicht. Was Du brauchst, ist umount /proc/bus/usb ; mount /proc/bus/usb
Geht inzwischen auch ohne diesen Eingriff, offensichtlich wieder die lieben Rechte ... (s. o.)
Besser wäre es, wenn Du nur das für die Kamera benötigte Device für Dich schreibbar machen lässt. Schau mal in /etc/hotplug/usb nach. Dort liegt eine Datei usbcam.usermap, die bei der 8.1 recht unvollständig war (Dateigröße ca. 10k statt 18k nach Neugenerierung). Die usbcam.usermap lässt sich leicht mit gphoto2 --print-usb-usermap neu generieren (siehe Kommentar im usbcam-Script).
Okay, das habe ich nun gemacht und /etc/hotplug/usb/usbcam.usermap aktualisiert.
Nächste Baustelle ist das Script /etc/hotplug/usb/usbcam. Dort kannst Du den chown- oder chmod-Befehl nach Deinem Geschmack anpassen, falls der Automatismus nicht wie gewünscht funktioniert. (Es ist eben schwierig festzustellen, welcher User gerade das USB-Kabel in der Hand hat *g*)
Diese Script wird offensichtlich von root ausgeführt und nicht als Otto Normaluser. Zur Vereinfachung hänge ich den relevanten Teil dieses Scripts hier mal an: ------------- 8< ------------ if [ "${ACTION}" = "add" ] && [ -f "${DEVICE}" ] then # We reference /dev/audio, since we want to have the same permissions chmod 0000 "${DEVICE}" chown --reference=/dev/audio "${DEVICE}" chmod 0600 "${DEVICE}" fi ------------- 8< ------------ Der chown setzt die Rechte also analog /dev/audio, und das gehört hier: hao@hares:~> l /dev/audio crw-rw---- 1 root audio 14, 4 2002-09-09 22:24 /dev/audio So ist es also nichts mit dem Zugriff für Otto Normaluser an seinem KDE. Ändere ich den letzten chmod-Befehl auf chmod 0660 "${DEVICE}", dann darf Otto Normaluser, aber auch wohl jeder andere, der zufällig am System hängt und Mitglied der Gruppe audio ist. Und ändere ich den chown-Befehl auf meinen Usernamen, dann kann zwar ich, aber sonst niemand mehr. Gibt es eine schönere Lösung? Nur, woher weiß das Script, wer gerade an der Console sitzt, zumal ------------- 8< ------------ # b) a setup using pam_console creates the respective lock files # containing the name of the respective user. You can check for that # by executing "echo `cat /var/{run,lock}/console.lock`" and # verifying the appropriate user is mentioned somewhere there. ------------- 8< ------------ dieses Lockfile offensichtlich nicht generiert wird. harald -- Dr. Harald Krause E-Mail: Harald.Krause@a-city.de
Hallo Leute, Am Donnerstag, 1. Mai 2003 19:23 schrieb Harald Krause:
On Thu, 01 May 2003, Christian Boltz wrote: [...]
Nächste Baustelle ist das Script /etc/hotplug/usb/usbcam. Dort kannst Du den chown- oder chmod-Befehl nach Deinem Geschmack anpassen, falls der Automatismus nicht wie gewünscht funktioniert. (Es ist eben schwierig festzustellen, welcher User gerade das USB-Kabel in der Hand hat *g*)
Diese Script wird offensichtlich von root ausgeführt und nicht als Otto Normaluser.
Jepp. Genaugenommen wird es vom hotplugging service (rchotplug) aufgerufen.
Zur Vereinfachung hänge ich den relevanten Teil dieses Scripts hier mal an: ------------- 8< ------------ chown --reference=/dev/audio "${DEVICE}" chmod 0600 "${DEVICE}" ------------- 8< ------------
Der chown setzt die Rechte also analog /dev/audio, und das gehört hier:
hao@hares:~> l /dev/audio crw-rw---- 1 root audio 14, 4 2002-09-09 22:24 /dev/audio
So ist es also nichts mit dem Zugriff für Otto Normaluser an seinem KDE.
Das Problem kenne ich...
Ändere ich den letzten chmod-Befehl auf chmod 0660 "${DEVICE}", dann darf Otto Normaluser, aber auch wohl jeder andere, der zufällig am System hängt und Mitglied der Gruppe audio ist. Und ändere ich den chown-Befehl auf meinen Usernamen, dann kann zwar ich, aber sonst niemand mehr.
... stört mich aber nicht weiter ;-) Da ich der einzige User hier bin, habe ich einfach die gewünschten Rechte hardcoded.
Gibt es eine schönere Lösung? Nur, woher weiß das Script, wer gerade an der Console sitzt, zumal
Vielleicht hilft es, auf ein anderes Device zu verweisen. find /dev -user cb # cb durch Deinen Username ersetzen findet bei mir u. a. /dev/tty0, /dev/tty7 und ein paar xterms in /dev/pts/*. tty7 würde mir ganz gut gefallen. Am Besten wäre natürlich, den Owner von /dev/usbkabel ;-) zu überprüfen *g*
------------- 8< ------------ # b) a setup using pam_console [...]
pam_console kenne ich nicht, daher kann ich dazu nix sagen ;-) Gruß Christian Boltz -- "Microsoft spel chekar worgs grate!"
On Sat, 03 May 2003, Christian Boltz wrote:
findet bei mir u. a. /dev/tty0, /dev/tty7 und ein paar xterms in /dev/pts/*. tty7 würde mir ganz gut gefallen. Am Besten wäre natürlich, den Owner von /dev/usbkabel ;-) zu überprüfen *g*
Dieses Device ist IMHO aber erst im neuen Kernel vorgesehen. Hast Du da etwa schon einen Patch für den SuSE-Kernel? ;-) Danke für die nette Diskussion! harald -- Dr. Harald Krause E-Mail: Harald.Krause@a-city.de
participants (5)
-
Andreas Kemmer
-
Christian Boltz
-
Dr. Harald Krause
-
Harald Krause
-
Marcus Meissner