CompactFlash Seriennummer

14/08/2008 - 15:24 von Alexander Zschach | Report spam
X-No-Archive: yes

Hallo,

ich suche eine Möglichkeit, die Seriennummer von SanDisk CompactFlash
Karten unter Linux auszulesen. Die Karten kommen in einem Mini-
Environment (unter Debian) zum Einsatz. Innerhalb dieses Mini-
Computers werden die Karten wie eine IDE Platte behandelt. In diesem
System ist es trivial die Seriennummer in C per

ioctl (fd, HDIO_GET_IDENTITY, &diskid);
memcpy (id, diskid.serial_no, 20);

auszulesen.

Was ich jedoch bràuchte, wàre auch eine Möglichkeit, an die
Seriennummer zu kommen, wenn die CF Karte in einem Multi-Card-Reader
(USB) hàngt. Weder hdparm/sdparm oder andere tools liefern einen
(korrekten) Wert. Auch fand ich keine System API über die ich die
Seriennummer (über diesen Multi-Card-Reader) auslesen könnte. Per
libusb konnte ich zwar die Seriennummer eines 512MB Memorysticks
auslesen -- was jedoch am Multi-Card-Reader die Seriennummer 0x000001
des Readers ausgibt, nicht die des CF Devices (bspw. /dev/sdb).

"CF+ and CompactFlash Spec Rev 4.1" definieren wie und das die
Seriennummer per IDE Protokoll ausgelesen werden kann (was ja
nachweislich im Mini-Computer funktioniert). Ich hab jedoch noch
keine Möglichkeit gefunden, wie ich das über den Multi-Card-Reader
kann (von mir aus auch mit sowas kopfschmerzbehaftetem wie IDE
Commands über USB?).

Kennt wer 'ne Möglichkeit, hat ein Programm parat, das sowas könnte
oder kann mir ggf. eine weitere Referenz nennen, die mich ggf.
schlauer macht?

Grüße,
- Alex
 

Lesen sie die antworten

#1 mblume
14/08/2008 - 18:42 | Warnen spam
Am Thu, 14 Aug 2008 06:24:09 -0700 schrieb Alexander Zschach:

ich suche eine Möglichkeit, die Seriennummer von SanDisk
CompactFlash Karten unter Linux auszulesen.



Keine Lösung zu Deinem Problem, aber ein anderer Ansatz:
Kannst Du den UUID des Filesystems auf der CF Karte auslesen?
Ich weiss jedoch nicht, ob FAT Dateisysteme sowas haben.

HTH.
Martin

Ähnliche fragen