घुड़सवार एसडी कार्ड की विशेषताओं का पता लगाना


10

मेरे एसडी कार्ड को / dev / sdb के रूप में स्वचालित रूप से ठीक किया गया है:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sr0     11:0    1  1024M  0 rom  
sda      8:0    0    80G  0 disk 
├─sda1   8:1    0    78G  0 part /
├─sda2   8:2    0     1K  0 part 
└─sda5   8:5    0     2G  0 part [SWAP]
sr1     11:1    1  1024M  0 rom  
sdb      8:16   1   7.4G  0 disk 
├─sdb1   8:17   1    56M  0 part /media/boot
└─sdb2   8:18   1   2.7G  0 part /media/af599925-1134-4b6e-8883-fb6a99cd58f1

में dmesg:

[ 1206.970596] sd 3:0:0:0: [sdb] Attached SCSI removable disk

मैं कुछ विशेषताओं को जानना चाहूंगा - धारावाहिक #, निर्माता आईडी, आदि जो मैंने सोचा था कि इसमें होगा /sys/class। मैंने /sys/class/scsi_disk/3:0:0:0/बिना किसी भाग्य के खोज की है ।

मुझे यह जानकारी कहां मिलेगी? मैं आर्क-लाइनक्स के नवीनतम संस्करण का उपयोग कर रहा हूं।

जवाबों:


12

ऐसा करने का उचित तरीका, आर्क लिनक्स में लेकिन अब तक सभी प्रणालियों में जो udv का उपयोग करता है , कमांड है:

  sudo udevadm info -a -n /dev/sdb

आपके मामले में।

संपादित करें:

आपकी टिप्पणी का उत्तर: मेरा मानना ​​है कि आप गलत हैं। वर्ग एक उपकरण है जो निम्न स्तर के कार्यान्वयन विवरण के स्वतंत्र है के एक दृश्य है। क्लासिक उदाहरण एक डिस्क है। आपके पास बेशक SCSI डिस्क या ATA डिस्क हो सकती है, लेकिन, क्लास स्तर पर, वे एक ही चीज हैं। कक्षा का विचार उपयोगकर्ताओं को उपयोगकर्ता कोड बनाने की अनुमति देना है जो इस बात से स्वतंत्र है कि वे नेटवर्क से कैसे जुड़े हैं, वे कैसे काम करते हैं, वे किस डिवाइस ड्राइवर का उपयोग करते हैं, और इसी तरह। एक तरह से, उपकरणों के लिए मॉडल के रूप में उपलब्ध एब्सट्रैक्शन का उच्चतम स्तर वर्ग है।

इस प्रकार आप अपने एसडी कार्ड विक्रेता के रूप में इस तरह के विवरण को खोजने में गलत हैं (जो, वैसे, / sys / वर्ग के भीतर / sys / class / mmc_host , यदि कुछ भी हो) होना चाहिए ।


1
ठीक है, यह सब जानकारी देता है। लेकिन - मैं हालांकि सभी डिवाइस-विशिष्ट (द्वारा सेट ) पदानुक्रम के बिना /sys/classनेविगेट करने का एक तरीका माना जाता था ? क्या मैं उस बारे में गलत हूं? /devudev
चार्ल्स पेहलिवनियन

@CharlesPehlianian मेरे उत्तर का संपादन देखें
MariusMatutiae

ठीक है - मैं तब गलत प्रभाव में था। धन्यवाद!
चार्ल्स पेहलिवानियन

@CharlesPehlivanian: आप उस विस्तृत जानकारी के माध्यम से प्राप्त कर सकते हैं /sys/class; @ रॉबर्ट का जवाब देखें यह सिर्फ सबसे अच्छा तरीका नहीं हो सकता है। हालाँकि, कुछ सिस्टम (जैसे Android) पर udevadmउपलब्ध नहीं है।
लार्स

6

सटीक लेआउट ड्राइवर पर निर्भर है, लेकिन /sysकुछ एमएमसी (एसडी) विशिष्ट कीवर्ड के लिए खोज करने का प्रयास करें । नीचे एक एआरएम-आधारित एम्बेडेड सिस्टम से है:

$ find /sys -name "oemid"
/sys/class/mmc_host/mmc0/mmc0:aaaa/oemid
$ find /sys -name "cid"
/sys/class/mmc_host/mmc0/mmc0:aaaa/cid
$ find /sys -name "csd"
/sys/class/mmc_host/mmc0/mmc0:aaaa/csd

एसडी कार्ड shenanigans पर बनी की ब्लॉग प्रविष्टि बैक-ट्रैकिंग शुरू करने के लिए एक अच्छी जगह है जो उन आईडी नंबरों का मतलब है।


महान। मेरे मामले में, इस उत्तर के साथ, मुझे सबसे अधिक एसडी और एमएमसी डिवाइस विशेषताएँ मिल सकती हैं। cid, csd, scr, date, fwrev, hwrev, manfid, name, oemid, serial ...
agfe2

2

मैं आर्क लिनक्स का उपयोग नहीं करता हूं, लेकिन "यूएसबी-डिवाइस" उन सभी यूएसबी उपकरणों के विवरणों को सूचीबद्ध करता है, जिनके बारे में सिस्टम को पता है, और उनमें शामिल एक यूएसबी कुंजी के लिए निम्नलिखित शामिल हैं:

T:  Bus=03 Lev=02 Prnt=02 Port=02 Cnt=02 Dev#=  5 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=0781 ProdID=5567 Rev=01.26
S:  Manufacturer=SanDisk
S:  Product=Cruzer Blade
S:  SerialNumber=4C532000060624123092
C:  #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=200mA
I:  If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage

1
धन्यवाद, यह मुझे वही देता है जो मैं पूछ रहा था, लेकिन मैं /sys/classथोड़ा बेहतर समझना चाहूंगा ताकि मैं उस पर आधारित उत्तर चाहूं।
चार्ल्स पेहलिवनियन

1

/ Sys / class / scsi_disk को देखकर मुझे पता चला कि (मेरे सिस्टम पर) कि ये वास्तविक डिस्क के लिए सिम्किंक हैं। वास्तव में जब मैं "ls -la / sys / class / scsi_disk / करता हूं तो यह 8: 0: 0: 0 से ../..///vices/pci0000:00/0000:00:1c.4/0000 के लिए एक सिमलिंक दिखाता है। : 09: 00.0 / USB3 / 3-2 / 3-2.3 / 3-2.3: 1.0 / host8 / target8: 0: 0/8: 0: 0: 0 / scsi_disk / 8: 0: 0: 0

यदि मैं इसके बाद: / sys / devices / pci0000: 00/0000: 00: 1c.4 / 0000: 09: 00.0 / usb3 / 3-2 / 3-2.3 / 3-2.3: 1.0 / host8 / target8: 0: 0/8: 0: 0: 0 इसमें कई फाइलें हैं, जिन पर मुझे संदेह है कि इसमें आपकी रुचि शामिल है -

model = model of the drive
vendor = the drive vendor

ब्याज की भी पार्सिंग / खरीद / एससीआई हो सकती है -

/proc/scsi/scsi          contains the description of each device and associated host
                         as scsi8 which lets me derive the "8" in the next bit.

/proc/scsi/usb-storage/8 contains the Vendor, Product and serial number

जब आप lsअपनी /sys/devices/...निर्देशिका पर करते हैं, जैसा कि आप इंगित करते हैं, तो मुझे एक सिमिलिंक वापस मिलता है /sys/class/scsi_disk/8:0:0:0, जो कि मेरा सवाल है। मुझे मॉडल, वेंडर, केवल FUA, device, allow_restart, आदि के लिए कोई फाइल नहीं दिख रही है । मैंने इन्हें बिना किसी भाग्य के खोजा है।
चार्ल्स पेहलिवनियन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.