Belirli bir aygıt dosyasının arkasında hangi sürücü var?


10

Bir aygıt dosyası verildiğinde /dev/sdb, bunun arkasında hangi sürücünün olduğunu belirlemek mümkün müdür?

Özellikle, depolama aygıtlarımın hangi sürücüyü kullandığını belirlemek istiyorum. fdisk -l2 cihazı listeler: /dev/sdave /dev/sdb. Biri SATA sabit sürücüsü, diğeri ise bir USB Yığın Depolama aygıtı - aslında bir SD kart.

Hangisini programsal olarak nasıl belirlerim?

Bir yazılım parçası yazıyorum ve yeni başlayanların SD kartlarını yok etmelerine izin verirken sabit sürücülerini yok etmelerini önlemek istiyorum.


Aygıt adı seçiminize göre Linux çalıştırdığınızı varsayıyorum.
Gilles 'SO- kötü olmayı kes'

@Gilles Evet, üzgünüm, bu muhtemelen oldukça önemli bir bilgi parçası ... Teşekkürler!
Alex Chamberlain

Yanıtlar:


12

udevadm info -a -n /dev/sdaÇıkışı çalıştırın ve ayrıştırın. Gibi çizgiler göreceksiniz

DRIVERS=="ahci"

ahcisürücüyü kullanan bir SATA diski için veya

DRIVERS=="usb-storage"

USB bağlantılı bir cihaz için. Onay için satıcı ve model adlarını da görüntüleyebilirsiniz. Ayrıca,

ATTR{removable}=="1"

çıkarılabilir aygıtlarda bulunur.

Tüm bu bilgiler de /sys(aslında udevadmbaktığınız yer) elde edilebilir, ancak /sysarayüz zaman zaman değişir, bu nedenle ayrıştırma udevadmuzun vadede daha sağlamdır.


@AlexChamberlain Üzgünüz, evet, -nbir blok cihazına (altında bir şey /dev) -pbir yol beklerken /sys(örn. -p /sys/block/sda) Altında bir yol bekliyor .
Gilles 'SO- kötü olmayı kes
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.