Takılı SD kartın özelliklerini bulma


10

SD kartım / dev / sdb olarak otomatik olarak ayarlandı:

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

İçinde dmesg:

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

Ben seri #, üretici kimliği, vb olacağını düşündüm birkaç niteliklerini bilmek istiyorum /sys/class. Şanssız aradım /sys/class/scsi_disk/3:0:0:0/.

Bu bilgiyi nerede bulabilirim? Arch-linux'un en son sürümünü kullanıyorum.

Yanıtlar:


12

Bunu Arch Linux'ta yapmanın doğru yolu ancak şu anda udev kullanan tüm sistemlerde komut:

  sudo udevadm info -a -n /dev/sdb

Senin durumunda.

Düzenle:

Yorumunuza cevap: Yanıldığınıza inanıyorum. Sınıf düşük seviyeli uygulama ayrıntıları bağımsız bir cihazın bir görünüşüdür. Klasik örnek bir disktir. Elbette bir SCSI diskiniz veya bir ATA diskiniz olabilir, ancak sınıf düzeyinde bunlar aynı şeydir. Fikri sınıfına onlar böyle devam kullandıkları aygıt sürücüsü nasıl çalıştıkları ağa, bağlı ve nasıl bağımsızdır inşa userspace koduna kullanıcıları sağlamaktır. Bir bakıma, sınıf , cihazlar için bir model olarak mevcut olan en yüksek soyutlama seviyesidir.

Böylece (bu arada, olmalıdır SD kart satıcı gibi detaylar ararken yanlış / sys / class / mmc_host içinde eğer bir şey hiç,) / sys / sınıfından .


1
Tamam, bu tüm bilgileri veriyor. Ancak - Cihaza özgü (ayarlı ) hieracrchy olmadan /sys/classgezinmenin bir yolu olmalıydı? Bu konuda yanlış mıyım? /devudev
Charles Pehlivanian

@CharlesPehlianian Cevabımın Düzenle bölümüne bakın
MariusMatutiae

Tamam - O zaman yanlış izlenim altındaydım. Teşekkürler!
Charles Pehlivanian

@CharlesPehlivanian: Bu ayrıntılı bilgiye şu yollardan ulaşabilirsiniz /sys/class; @ Robert'ın cevabına bakınız. Sadece en iyi yol olmayabilir. Ancak, bazı sistemlerde (örn. Android) udevadmmevcut değildir.
LarsH

6

Tam düzen sürücüye bağlıdır, ancak /sysMMC'ye (SD) özgü bazı anahtar kelimeleri aramayı deneyin . Aşağıda ARM tabanlı bir gömülü sistem bulunmaktadır:

$ 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

Bunnie'nin SD kart shenanigans'taki blog girişi, bu kimlik numaralarının ne anlama geldiğini geri izlemeye başlamak için iyi bir yerdir.


Harika. Benim durumumda, bu cevapla, çoğu SD ve MMC cihaz özniteliğini bulabilirim. cid, csd, scr, tarih, fwrev, hwrev, manfid, adı, oemid, seri ...
agfe2

2

Arch Linux kullanmıyorum, ancak "usb aygıtları" sistemin bildiği tüm USB aygıtlarının ayrıntılarını listeler ve taktığım bir USB anahtarı için aşağıdakileri içerir:

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
Teşekkürler, bu bana istediğim şeyi veriyor, ama /sys/classbiraz daha iyi anlamak istiyorum, bu yüzden buna dayalı bir cevap istiyorum.
Charles Pehlivanian

1

/ Sys / class / scsi_disk'e baktığımda (sistemimde) bunların gerçek disklere sembolik olduğunu keşfettim. Gerçekten bir "ls -la / sys / class / scsi_disk / yaptığımda 8: 0: 0: 0 ila ../../devices/pci0000:00/0000:00:1c.4/0000 için bir sembolik bağlantı gösterir : 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

Daha sonra: / sys / device / pci0000: 00/0000: 00: 1c.4 / 0000: 09: 00.0 / usb3 / 3-2 / 3-2.3 / 3-2.3: 1.0 / host8 / target8'e geçersem: 0: 0/8: 0: 0: 0 İlginizi çektiğinden şüphelendiğim birkaç dosya var -

model = model of the drive
vendor = the drive vendor

Ayrıca ilgi / ayrıştırma / proc / scsi olabilir -

/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

Ne zaman lssenin üzerinde /sys/devices/...dizine, belirtmek, ben bir sembolik geri almak /sys/class/scsi_disk/8:0:0:0benim sorum başladığı yerde olduğunu. Ben sadece model, satıcı FUA, device, allow_restart, vb için herhangi bir dosya görmüyorum . Ben hiç şans ile bunları aradım.
Charles Pehlivanian
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.