繁体   English   中英

如何区分USB硬盘驱动器和USB闪存驱动器?

[英]How to distinguish between USB Hard Disk Drive and USB flash drive?

在Windows中,您可以获得GetDriveType返回值来确定USB硬盘驱动器或USB闪存驱动器。

DRIVE_REMOVABLE ==> USB闪存盘

DRIVE_FIXED ==> USB硬盘驱动器

我应该如何在linux中做到这一点?

从开发人员的角度来看,我应该怎么做?

您需要使用apt-get或yum命令安装lshw命令。 要显示系统中的所有磁盘和存储控制器,请输入:

# lshw -class disk -class storage

稍后您也可以尝试以下操作,它将提供特定的完整详细信息...

# hdparm -I /dev/sda

要么

$ sudo hdparm -I /dev/sda

好吧,在“ / sys”下面有一个“可移动”标志实现为文件,但是....

例如,在我的系统上, /sys下的该文件表示通过附加的USB硬盘(在“总线1->端口2->配置1->接口0”上找到的USB设备)实现的磁盘/dev/sde

/sys/devices/pci0000:00/0000:00:02.1/usb1/1-2/1-2:1.0/host9/target9:0:0/9:0:0:0/block/sde

子路径

/sys/devices/pci0000:00/0000:00:02.1/usb1/1-2

在“总线1->端口2”上找到的USB设备似乎代表USB设备本身。

让我们使用find “可移动”文件,并使用cat打印它们的内容:

$ cd /sys/devices/pci0000:00/0000:00:02.1/usb1/1-2

$ find . -name removable -exec echo -n '{}: ' ";" -exec cat '{}' ";"

./1-2:1.0/host9/target9:0:0/9:0:0:0/block/sde/removable: 0
./removable: unknown

因此,“设备”不可移动,而“磁盘”不可移动(假设“ 0”表示“否”)。 不是很有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM