检查它是外部闪存驱动器还是 USB 闪存盘?

检查它是外部闪存驱动器还是 USB 闪存盘?

当连接USB闪存盘或USB外部驱动器时,有没有办法通过Linux检查它是USB闪存盘还是外部闪存驱动器?有什么实用程序或类似的东西吗?

答案1

您可以在 中找到有关硬件设备的信息/sys。对于磁盘驱动器,请查看下面的/sys/block。例如,有关的信息/dev/sdb位于 下/sys/block/sdb。该文件/sys/block/sdb包含1设备是否可移动以及0其他情况。链接到的目录中有更多信息device,包括modelvendor

答案2

有一个工具lshw可用于检查硬件。您需要 root 权限才能充分利用它。要了解您的磁盘,请按以下方式调用它:

sudo lshw -class disk

这将以树状列表显示有关系统上所有磁盘的信息。如果磁盘是可移动的,您会发现一行提到可拆卸的作为其能力的一部分。例如,该行可能如下所示capabilities: removable

如果您在没有滚动条的真实终端中工作,请添加| more以能够查看所有输出。

答案3

对我来说,/sys/block/sdb/removable包含零,即使磁盘是通过 USB 电缆插入的。所以我需要一个改进的答案,并想出了这个:

for dev in $(lsblk -ndo name)
do
    udevadm info --query=property --path=/sys/block/$dev | 
        sed -n "s|^DEVPATH=|$dev/|p" |
        cut -d/ -f1,6 | tr / :
done

相关内容