Hi,
ich habe da mal ein ziemlich ärgerliches Problem:
Ich habe eine Digikam, die mit einer SD-Karte von
1GigaByte bestückt ist.
Wenn ich einen USB-CardReader, der auch SD-Karten lesen
können soll, an meine Linux-Box anschließe, wird über udev
brav ein /dev/sda und ein /dev/sg0 ezeugt
Stecke ich nun die SD-Karte in den Reader, leuchtet kurz das “ACCESS”
LED auf…aus. Kein Device für den Zugriff — also etwas in der Art
von /dev/sda1 — wird erzeugt.
Werde ich jemals an die Fotos aus meiner Digikam herankommen ???
“Normal-” USB-Sticks werden klaglos erkannt, ebenso wie mein MP3-Player.
Als Kernel läuft hier Linux 2.6.13.2. Udev ist Version udev-070.
Kennt jemand einen Trick, um das Problem zu beheben ?
Vielen Dank schonmal im Voraus für jede Hilfe ! :O)
Keep hacking!
Meino
Andersherum: Erst Karte in den Kartenleser, dann den Kartenleser an USB anschließen.
Jan
Hallo Meino,
ich habe ein ähnliches Problem mit einem 256MB-CF-Medium von PQI. Es ist absolut nicht mountbar – im log versucht der Kernel das “SCSI”-Device hochzufahren (Spin-up), was aber nicht geht (Kernel-Version ist egal). Die CF-Karte geht aber in einer Kamera problemlos..
Bisher hat mir auch niemand helfen können, vielleicht hat hier ja eine eine Lösung.
CU
Michael
Hall Community !
…so, nach undendlich viel Gebruzzel, Kernelbackerei und Google-ei habe ich
nun zumindest /eine/ Lösung gefunden — sie stammt aus einem Text aus dem
Internet.
Ersteinmal…Was /ist/ eigentlich die Ursache für die Probleme?
USB-Card-Reader werden unter Linux ja angesprochen wie SCSi-Geräte. Da sie
mehrere Card-Normen unterstützen, haben die Entwickler solcher Card-Reader
diese hinter unterschiedlichen “LUN”s “””versteckt”””. Man muss nun also
ersteinmal dafür sorgen, dass Linux alle LUNs der SCSI-Geräte testet und
nicht nur eine wie sonst üblich.
Dazu setzt man die Kerneloption (über make config, menuconfig oder xconfig)
#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
#
CONFIG_SCSI_MULTI_LUN=y
Nachtrag:
…und es kommt noch härter…der Schreibschutz ist wohl aus BETON:
Erst die SD-Karte einlegen, mounten (jetzt weiss der Kernel von der Karte), wieder unmounten. Dann als root:
fdisk -l /dev/card_sd (das ganze Device)
fdisk meldet nicht /eine/ Partition. mount ist aber der Meinung, da sei
etwas “vfat”-mäßiges auf der Karte und meine Digikam hat mit der Karte
auch nicht die leisesten Problem…
Gut, dachte ich, dann mit Gewalt!
fdisk /dev/card_sd
fdisk macht zwar mit, meint aber:
“You will not be able to write the partition table”
Ich mag es gar nicht gerne, wenn Technik mir Vorschriften macht.
Was soll das jetzt??? ;)
Hat irgendwer dort draußen nur die leiseste Idee, was für ein Spielchen
diese SD-Karte mit mir spielt oder nimmt die ihren Job als /Secure/ Digital Card ein bischen ZU ernst ???
HÜLFÄÄÄÄ!!! :) :) :O)
Keep hacking!
Meino
Damn ! Ich habe vergessen, etwas zu erwähnen…sorry.
Folgendes muss in den Kernel noch mit einkompiliert werden:
#
# MMC/SD Card support
#
CONFIG_MMC=m
# CONFIG_MMC_DEBUG is not set
CONFIG_MMC_BLOCK=m
# CONFIG_MMC_WBSD is not set
In der linken Spalte des Kernel-Config-Tools (“make xconfig”) steht hierfür “MMC/SD-Card-support. Rechts gibt es für diese Einstellung gibt es mit den folgenden Hilfetext:
MMC support (MMC)
MMC is the “multi-media card” bus protocol.
If you want MMC support, you should say Y here and also
to the specific driver for your MMC interface.
bzw.:
MMC block device driver (MMC_BLOCK)
Say Y here to enable the MMC block device driver support.
This provides a block device driver, which you can use to
mount the filesystem. Almost everyone wishing MMC support
should say Y or M here.
Keep hacking!
Meino
Hi Meino,
mal drei Versuche zur Fehlerbehebung so ins dunkle und auch nur ganz oberflächlich:
Fällt mir die Hardware ein. Hast Du mal überprüft ob Du aus versehen den Hardware Schreibschutz der SD-Karte (falls Vorhanden) auf schreiben Steht? Außerdem würde ich mal probieren ob man mit einem Remount (man mount) weiter kommt. Bei fdisk muß automount kurzzeitig angehalten werden (man autofs) und das Device ausgehängt werden. Ist jetzt zwar keine step by step Anleitung, aber Du bist ja recht Fit wie ich gesehen habe, ich Denke das es Dir reicht falls es überhaupt daran liegt. Aber meistens sind es die Leichtsinnsfehler (nach dem Motto, hast Du überhaupt den Stecker eingesteckt …) die einem (Profi) zu schaffen machen.
Ciao
Ulf
Moin Ulf,
Vielen Dank für Deine Antwort! :)
Ja, Du hast vollkommen Recht: Man sucht zehn Jahre nach dem Fehler, warum
die Zeitmaschine nicht funktioniert….und dann ist nur die Sicherung ‘raus… ;O)
Also wenn der Cardreader nicht intern den Schieber beim Einschieben der Karte
auf “lock” schiebt und beim Herausziehen wieder auf “unlock” — dann war er
ständig auf “unlock”.
mount -o rw,remount geht auch nicht. Der Eintrag in der fstab steht auch
schon auf “rw”…überzeugender kann ich gegenüber mount nicht auftreten ;O)))))
Einen Automounter habe ich auf meinem LFS-Linux (quasi-Eigenbau) nicht laufen,
da das Teil zuviele Probleme macht und als permanente Quelle von sehr
seltsamen Effekten berühmt geworden ist. udev dagegen ist eine schöne Sache!
Wenn Dir noch etwas einfällt….ich bin dankbar für jeden Tip!!! Das Bearbeiten
der Files mit einem USB-Anschluß an der Kamera als Cardreader ist jedenfalls
echt palle und sicher nicht gut für’s Gerät…
“Secure Digital Card”…was für ein Name ! Nomen est Omen! Mit Betonung auf
“Omen”…hahahahahaha :O)
Keep hacking!
Meino
Ok…es war mal wieder eine /ganz/ andere Fehlerquelle…
Der Card-Reader war defekt!
Das beschriebene Verfahren führt also…einen funktionierenden Card-Reader
vorrausgesetzt…zu einem lese- und schreibbaren Device.
Ende der Verwirrungen.
KEEP HACKING!
Meino
No, sorry…no way.
Das tut’s leider auch nicht…
Keep hacking!
Meino
Es könnte auch sein, dass diese Speicherkarte gar keine Partitionstabelle hat, sondern wie eine Diskette oder CD einfach nur ein blankes Dateisystem. Schon versucht, /dev/sda zu mounten?
Jan