Sd-Card

查找 SD 卡的唯一標識符

  • October 1, 2018

我有幾十張 SD 卡,我需要跟踪一個項目。現在,他們每個人都有一個數字,外面用永久性記號筆寫著。這沒關係,但我想看看我可以記錄的每張 SD 卡中是否有一些獨特的東西。到目前為止,我知道:

  • SD 卡的 CID,通常(不總是???)包含唯一的序列號。我在 Fedora 21 中找不到直接從 SD 卡讀取此內容的方法。有些頁面說,除非您將讀卡器直接連接到 PCI 匯流排(而不是通過 USB),否則您看不到 CID。
  • 卷/分區序列號。這可能有效,但我知道每次重新格式化卡時都會發生這種情況,這是我們不時做的事情。所以不是一個好的選擇。
  • 只是用我自己獨特的命名系統標記 SD 卡卷。這太容易改變了,我還不如堅持在外面寫數字。

所以,我想我的問題是:

  1. 有沒有辦法通過 Fedora 21 或其他 GNU/Linux 發行版中的 USB 讀卡器可靠地從我的 SD 卡讀取 CID 以獲取序列號?
  2. 如果沒有,是否有其他方法可以使用 SD 卡或其他系統中現有的唯一標識符來唯一標識 SD 卡?

blkid(8) 可能是您正在尋找的。它將給出每個設備的 UUID。

對於 vfat,可以使用 mtools 應用程序 mlabel(1) 設置 UUID。

對於 ext2、ext3 和 ext4,可以使用 e2label(8) 設置 UUID。

因此,如果您不時重新格式化,只需根據需要將 UUID 設置為與以前相同。

不能代表其他讀卡器,但我通過 USB 埠使用的讀卡器通過 SD 卡的 UUID。

根據@humanityAndpeace 評論,尋找CID可能是一個解決方案,但似乎您無法從所有 SD 卡中獲取它。至少我測試過的情況是這樣。在此處查看更多文件。

這個想法是從/sys/block/<yourBlockDevice>/device/cid

注意:您可以在外掛後<yourBlockDevice>閱讀sudo dmesg

引用自:https://unix.stackexchange.com/questions/196899