Trovare un identificatore univoco per le schede SD


10

Ho dozzine di schede SD che devo tenere traccia di un progetto. In questo momento, ognuno di essi ha un numero scritto fisicamente con un pennarello indelebile all'esterno. Va bene, ma voglio vedere se c'è qualcosa di unico incorporato in ogni scheda SD che posso registrare. Finora sono a conoscenza di:

  • CID della scheda SD, che di solito (non sempre ???) include un numero seriale univoco. Non riesco a trovare un modo semplice per leggere questo da una scheda SD in Fedora 21. Alcune pagine dicono che a meno che tu non abbia un lettore di schede collegato direttamente al bus PCI (e non tramite USB), non puoi vedere il CID.
  • Numero seriale volume / partizione. Questo potrebbe lavoro ma capisco che questo cambia ogni volta di riformattazione della scheda, che è qualcosa che facciamo di tanto in tanto. Quindi non è una buona opzione.
  • Ho solo etichettato il volume della scheda SD con il mio sistema di denominazione unico. È troppo facile da cambiare, e potrei anche solo continuare a scrivere i numeri all'esterno.

Quindi, immagino che le mie domande siano:

  1. C'è un modo per leggere in modo affidabile il CID dalle mie schede SD per ottenere numeri di serie tramite un lettore di schede USB in Fedora 21 o altre distribuzioni GNU / Linux?
  2. In caso contrario, ci sono altri modi per utilizzare identificatori univoci esistenti in una scheda SD o in un altro sistema per identificare in modo univoco le schede SD?

1
Cordiali saluti: Non ci si aspetta che tu risponda ad ogni risposta. Anche se vota su / giù su di loro e, se uno risolve il tuo problema, sceglierlo come risposta accettata è sicuramente apprezzato.
derobert,

@derobert Capito, grazie per le informazioni!
hpy,

Risposte:


3

blkid (8) è probabilmente quello che stai cercando. Fornirà l'UUID di ciascun dispositivo.

Per vfat, puoi impostare UUID usando l'applicazione mtobel mlabel (1).

Per ext2, ext3 ed ext4, e2label (8) può essere utilizzato per impostare l'UUID.

Quindi, se si riformatta di volta in volta, impostare l'UUID allo stesso modo di prima, se necessario.

Non posso parlare per altri lettori di schede, ma quelli che ho usato tramite una porta USB passano attraverso l'UUID della scheda SD.


1
Sembra promettente, grazie !! Che dire di fat32?
hpy

1
Sì, credo che mlabel(1)supporti anche fat32.
JonathanS,

1
qualunque blkidrestituzione cambierà ogni volta che cambiano i dati memorizzati sulla scheda SD. Questo è molto diverso dal CID o dal numero di serie. Se hai fatto un dd if=/dev/sdcard1 of=/dev/sdcard2 count=2, le modifiche sono molto alte blkid /dev/sdcard1e saranno identiche blkid /dev/sdcard2. Anche l'osservazione finale della risposta è fuorviante: l'UUID è derivato dai dati memorizzati sulla scheda SD e non sulla scheda, chiaramente la maggior parte dei lettori USB consente di leggere il contenuto della scheda SD. Ciò che non è ancora possibile è accedere a CID.
umanità e

3

Basato sul commento di @humanityAndpeace, Cercando CIDpotrebbe essere una soluzione, ma sembra che non sia possibile ottenerlo da tutte le schede SD. Almeno è il caso di uno che ho testato. Vedere di più la documentazione qui .

L'idea è di ottenere informazioni da /sys/block/<yourBlockDevice>/device/cid

Nota : si può leggere <yourBlockDevice>da sudo dmesgdopo il plug-in

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.