SDカードの一意の識別子を見つける


10

私はプロジェクトのために追跡する必要がある数十枚のSDカードを持っています。現在、彼らはそれぞれ、外側に永続的なマーカーで物理的に書かれた数字を持っています。これは問題ありませんが、記録できる各SDカードに組み込まれている固有のものがあるかどうかを確認します。これまでのところ私は知っています:

  • SDカードのCID。通常(常にでない???)で、一意のシリアル番号が含まれています。Fedora 21でSDカードからこれを読み取る簡単な方法が見つかりません。カードリーダーを(USB経由ではなく)PCIバスに直接接続しないと、CIDを表示できないというページもあります。
  • ボリューム/パーティションのシリアル番号。これうまくいくかもしれませんが、カードが再フォーマットされるたびに変わることを理解しています。これは、私たちが時々行うことです。だから良いオプションではありません。
  • SDカードのボリュームに、独自の命名システムでラベルを付けるだけです。これは変更するのが簡単すぎるので、外に数字を書くことに固執するかもしれません。

だから、私は私の質問だと思います:

  1. Fedora 21または他のGNU / LinuxディストリビューションのUSBカードリーダーを介してシリアル番号を取得するために私のSDカードからCIDを確実に読み取る方法はありますか?
  2. そうでない場合、SDカードまたはSDカードを一意に識別する別のシステムで既存の一意の識別子を使用する他の方法はありますか?

1
参考までに、各回答に返信することはあまり期待されていません。それらに投票/投票し、問題が解決した場合は、それを受け入れられた回答として選択することは間違いありません。
derobert、2015

@derobertわかりました、情報ありがとうございます!
hpy

回答:


3

blkid(8)はおそらくあなたが探しているものです。各デバイスのUUIDを提供します。

vfatの場合、mtoolsアプリケーションmlabel(1)を使用してUUIDを設定できます。

ext2、ext3、およびext4の場合、e2label(8)を使用してUUIDを設定できます。

したがって、時々再フォーマットする場合は、必要に応じて、UUIDを以前と同じに設定してください。

他のカードリーダーは読み込めませんが、USBポート経由で使用したものは、SDカードのUUIDを通過します。


1
有望に聞こえます、ありがとう!! fat32はどうですか?
2015

1
はいmlabel(1)、Fat32もサポートしていると思います。
JonathanS

1
blkidSDカードに保存されているデータが変更されるたびに、どのような戻り値も変更されます。これはCIDまたはシリアル番号とは大きく異なります。を作成した場合dd if=/dev/sdcard1 of=/dev/sdcard2 count=2、変更は非常に高く、blkid /dev/sdcard1と同じになりblkid /dev/sdcard2ます。また、回答の最後の発言は誤解を招くものです。UUIDはSDカードに保存されたデータから派生したものであり、カードから派生したものではありません。明らかに、ほとんどすべてのUSBリーダーがSDカードの内容を読み取ることができます。それでもできないのはにアクセスすることCIDです。
humanityANDpeace

3

@humanityAndpeaceコメントに基づいて、Looking for CIDは解決策になる可能性がありますが、すべてのSDカードから取得することはできないようです。少なくとも、私がテストしたものはそうです。詳細はこちらのドキュメントをご覧ください

アイデアはから情報を取得することです /sys/block/<yourBlockDevice>/device/cid

:プラグイン後<yourBlockDevice>から読み取ることができますsudo dmesg

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.