特定のデバイスファイルの背後にはどのドライバがありますか?

特定のデバイスファイルの背後にはどのドライバがありますか?

たとえば、デバイスファイルが与えられたら、/dev/sdbその背後にあるドライバを確認できますか?

特に、私のストレージデバイスがどのドライバを使用しているかを確認したいと思います。fdisk -l2つのデバイスがリストされています:/dev/sda/dev/sdb。 1つはSATAハードドライブ、もう1つはUSB大容量記憶装置(実際にはSDカード)です。

プログラムでどれが何であるかを決定する方法は?

私はソフトウェアを書いており、初心者がSDカードを削除できるようにしながら、ハードドライブを削除しないように保護したいと思います。

ベストアンサー1

udevadm info -a -n /dev/sda出力を実行して解析します。このような行が見えます。

DRIVERS=="ahci"

ドライバを使用するSATAディスクの場合ahci、または

DRIVERS=="usb-storage"

USB接続デバイスの場合。確認のためにベンダーとモデル名を表示することもできます。返品、

ATTR{removable}=="1"

リムーバブルデバイスに表示されます。

これらの情報はすべて/sys(実際にudevadm行ってみてください)を通して確認することができますが、/sysインターフェースは時々変わり、udevadm長期的に解析がより強力になります。

おすすめ記事