首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >除了dmesg输出之外,检测特定的设备是USB / SATA。

除了dmesg输出之外,检测特定的设备是USB / SATA。
EN

Server Fault用户
提问于 2011-05-18 06:57:27
回答 1查看 1.5K关注 0票数 0

假设在linux机器中同时存在SATA和USB设备,如果它们都被正确检测到,那么如何知道特定的设备(sda1 1/ sdb1)是USB设备还是SATA设备。注意:设备需要手动安装。注意: dmesg已经清除。我们不能使用/var/log/消息,因为它也被清除了。

问题是:是否有其他方法,比如从/proc或任何其他命令中知道特定设备(sda1 1/sdb1 1)是SATA或USB?

谢谢!

EN

回答 1

Server Fault用户

发布于 2011-05-18 12:56:32

您可以从/sys虚拟文件系统获取该信息。

运行find /sys -name \*sd[ab]\*。我电台的一些线路是:

代码语言:javascript
复制
/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.0/host69/target69:0:0/69:0:0:0/block/sdb
/sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda

在sdb的行中有" USB“,在sda的行中没有”USB“,所以USB驱动器是sdb。

你可以得到的另一条信息是

代码语言:javascript
复制
cat /sys/class/block/sda/removable
cat /sys/class/block/sdb/removable

文件。如果文件的内容是0,那么设备是不可移动的,所以它不能是外部USB驱动器。一些SATA驱动器报告自己是可移动的,所以它可能不是确定的。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/270839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档