Kann /dev/sdb
man beispielsweise anhand einer Gerätedatei feststellen , welcher Treiber dahinter steckt?
Insbesondere möchte ich feststellen, welchen Treiber meine Speichergeräte verwenden. fdisk -l
listet 2 Geräte auf: /dev/sda
und /dev/sdb
. Eine ist eine SATA-Festplatte und die andere ist ein USB-Massenspeichergerät - eigentlich eine SD-Karte.
Wie bestimme ich programmgesteuert, welches welches ist?
Ich schreibe eine Software und möchte den Anfänger vor dem Auslöschen seiner Festplatten schützen, während er gleichzeitig seine SD-Karten auslöschen kann.
linux
drivers
devices
block-device
Alex Chamberlain
quelle
quelle
Antworten:
Führen Sie
udevadm info -a -n /dev/sda
die Ausgabe aus und analysieren Sie sie. Sie werden Linien wie sehenfür eine SATA-Festplatte mit dem
ahci
Treiber oderfür ein über USB angeschlossenes Gerät. Sie können auch Hersteller- und Modellnamen zur Bestätigung anzeigen. Ebenfalls,
ist auf Wechseldatenträgern vorhanden.
All diese Informationen können auch über abgerufen werden
/sys
(tatsächlich wird hierudevadm
nachgeschlagen), aber die/sys
Benutzeroberfläche ändert sich von Zeit zu Zeit, sodass das Parsenudevadm
auf lange Sicht robuster ist.quelle
-n
erwartet einen Pfad zu einem Blockgerät (etwas unter/dev
), während-p
ein Pfad unter/sys
(zB-p /sys/block/sda
) erwartet wird .