如何查找USB设备的/ dev名称


42

我在使用VMware的Windows XP主机上运行Ubuntu 11来宾。我想在Ubuntu中格式化SD卡,但我无法弄清楚/dev/xxxSD卡是哪个设备。

我将卡插入笔记本电脑的内置插座。我在Windows中“安全地删除”了该设备。然后,我在VMware中“连接”PCMCIA阅读器。现在,我应该看到一个新的设备/dev/sdx,但它没有出现。

如何找到USB设备名称的名称并安装它?

/var/log/message 是空的。

这是dmesg的输出:

[ 5268.927308] usb 2-1: new full speed USB device number 12 using uhci_hcd

而且,这是最后一行/var/log/syslog

Oct 31 18:51:21 ubuntu kernel: [ 5268.927308] usb 2-1: new full speed USB device number 12 using uhci_hcd

Oct 31 18:51:21 ubuntu mtp-probe: checking bus 2, device 12: "/sys/devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb2/2-1"

Oct 31 18:51:21 ubuntu mtp-probe: bus: 2, device: 12 was not an MTP device


Ubuntu 11没有/ var / log / messages ...

Answers:


66

试试lsblk。这是我当前设置的输出:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk 
├─sda1   8:1    0 195.3G  0 part 
├─sda2   8:2    0     4G  0 part [SWAP]
└─sda3   8:3    0 266.5G  0 part /
sdb      8:16   0 465.8G  0 disk 
└─sdb1   8:17   0 460.8G  0 part /home
sr0     11:0    1  1024M  0 rom  

我正在使用Ubuntu 12.10。


19
ls -1 /dev > ~/before.txt

插上电源,然后

ls -1 /dev > ~/after.txt

diff ~/before.txt ~/after.txt

1
像真正的程序员解决方案。+1
GeneCode

3

lsblk 似乎工作:

rishi@rishi-Inspiron-1018:~$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 232.9G  0 disk 
├─sda1   8:1    0 230.9G  0 part /
├─sda2   8:2    0     1K  0 part 
└─sda5   8:5    0     2G  0 part [SWAP]
sdb      8:16   1   7.4G  0 disk 
└─sdb1   8:17   1   7.4G  0 part /media/3765-3233

所以现在我知道我的SD卡了/dev/sdb1


疑似。当使用Debian live时,我看到了lsblk输出中列出的sdc(我的usb设备),但是没有在/ dev中。
user982671 2014年

1
只有当udev存在(或等效)时才会出现在/ dev中,并且通常在其中创建节点。并不意味着它无法使用,您可以在任意位置创建节点,因为您在lsblk中有主要/次要编号。
xryl669 2016年

2

尝试使用lsusb以查看是否在虚拟机中拾取了SD读卡器。另一种选择是使用palimpsest(也称为菜单项,磁盘工具)

不要害怕使用GUI程序 - 它们确实有效!如果palimpsest看到您的设备,它将告诉您设备节点,因此您可以使用CLI实用程序。


1

如果它有标签用于/dev/disk/by-label/[USB label]格式化磁盘

编辑:试试 /dev/disk/by-id/usb*


不,它没有:(

没有其他方法吗?

USB通常是/ dev / sb后面跟一个数字,或者是某些东西,如果我不完全正确的话,它可能是/ dev / sdb后跟一个数字但不是正常的/ dev / sda,所以如果只有一个插入应该这样做
Will03uk 2011年

1

ls /dev在vmware中启用该USB设备之前,请打开终端并运行。ls /dev/启用它后再次运行并查找弹出的内容


这是最痛苦的做法,更不用说,许多设备在初始化后在/ dev /中有很多实例。
j0h 2016年

1

你可以使用bootiso实用程序,它有一个标志来做到这一点:

> bootiso -l
Listing USB drives available in your system:
NAME                HOTPLUG   SIZE STATE   TYPE
sdd                       1  14,7G running disk
sde                       1   961M running disk

要安装它:

curl -L https://rawgit.com/jsamr/bootiso/latest/bootiso -O
chmod +x bootiso

0

sudo fdisk -l将列出所有可用硬盘上的分区表; 它使用磁盘的Linux命名方案,方便排除故障并记住哪个分区在哪里。

使用man fdisk上的参数的详细信息fdisk


0
# dir /dev/disk/by-path/
total 0
drwxr-xr-x. 2 root root 180 Aug 26 15:51 .
drwxr-xr-x. 6 root root 120 Aug 25 17:20 ..
lrwxrwxrwx. 1 root root   9 Aug 25 17:12 pci-0000:00:03.2-usb-0:3:1.0-scsi-0:0:0:0 -> ../../sr0
lrwxrwxrwx. 1 root root   9 Aug 26 15:51 pci-0000:00:03.2-usb-0:4.1.1:1.0-scsi-0:0:0:0 -> ../../sdb
lrwxrwxrwx. 1 root root  10 Aug 26 15:51 pci-0000:00:03.2-usb-0:4.1.1:1.0-scsi-0:0:0:0-part1 -> ../../sdb1
lrwxrwxrwx. 1 root root  10 Aug 26 15:51 pci-0000:00:03.2-usb-0:4.1.1:1.0-scsi-0:0:0:0-part2 -> ../../sdb2
lrwxrwxrwx. 1 root root  10 Aug 26 15:51 pci-0000:00:03.2-usb-0:4.1.1:1.0-scsi-0:0:0:0-part3 -> ../../sdb3
lrwxrwxrwx. 1 root root   9 Aug 25 17:12 pci-0000:07:00.0-scsi-0:2:0:0 -> ../../sda
lrwxrwxrwx. 1 root root  10 Aug 25 17:12 pci-0000:07:00.0-scsi-0:2:0:0-part1 -> ../../sda1

# dir /dev/disk/by-id/
total 0
drwxr-xr-x. 2 root root 280 Aug 27 01:20 .
drwxr-xr-x. 6 root root 120 Aug 25 17:20 ..
lrwxrwxrwx. 1 root root  10 Aug 25 17:20 dm-name-VG_RAID_201010081812-LV_RAID_201010081617 -> ../../dm-0
lrwxrwxrwx. 1 root root  10 Aug 27 01:20 dm-name-top4 -> ../../dm-2
lrwxrwxrwx. 1 root root  10 Aug 25 17:20 dm-uuid-LVM-XCQXKaPB3snmEgx9ZNGRssIxGmJPje6TXKMLyop5meKH3x3KiJ1H1q3aoqgXpci1 -> ../../dm-0
lrwxrwxrwx. 1 root root   9 Aug 25 17:12 scsi-36842b2b04963f900144207e1091bf90c -> ../../sda
lrwxrwxrwx. 1 root root  10 Aug 25 17:12 scsi-36842b2b04963f900144207e1091bf90c-part1 -> ../../sda1
lrwxrwxrwx. 1 root root   9 Aug 25 17:12 usb-ASUS_SBW-06D2X-U_3248433031354B4A30303030-0:0 -> ../../sr0
lrwxrwxrwx. 1 root root   9 Aug 26 15:51 usb-ST916041_2AS_579FFFFFFFFF-0:0 -> ../../sdb
lrwxrwxrwx. 1 root root  10 Aug 26 15:51 usb-ST916041_2AS_579FFFFFFFFF-0:0-part1 -> ../../sdb1
lrwxrwxrwx. 1 root root  10 Aug 26 15:51 usb-ST916041_2AS_579FFFFFFFFF-0:0-part2 -> ../../sdb2
lrwxrwxrwx. 1 root root  10 Aug 26 15:51 usb-ST916041_2AS_579FFFFFFFFF-0:0-part3 -> ../../sdb3
lrwxrwxrwx. 1 root root   9 Aug 25 17:12 wwn-0x6842b2b04963f900144207e1091bf90c -> ../../sda
lrwxrwxrwx. 1 root root  10 Aug 25 17:12 wwn-0x6842b2b04963f900144207e1091bf90c-part1 -> ../../sda1

0

我是linux新手,但到目前为止,我找到了3种方法来找出设备名称:

1)lsblk(已在上面提到,列出设备名称及其安装的文件夹)

2)sudo fdisk -l(列出设备名称,这里你也可以看到分区的名称)

3)dmesg你插入一个usb棒后立即(很多输出,还不知道它们的用途,但是最后的条目显示了插入名称的名称)


0

区分两种情况很重要:

  1. USB棒已插入,可在文件浏览器中识别和访问,然后自动挂载;
  2. 在设备插入并安装后,您已经弹出/卸载了设备,现在可以安全地拔下插头。

在第一种情况下,使用lsblk将列出所有已安装的设备。在MOUNTPOINT列下,您应该看到列出的USB设备被安装在某处/run/media/

在第二种情况下(在弹出设备之后),即使lsblk 不列出任何内容,dev文件仍应与安装时相同。您可以验证它仍然存在lsblk --all。但由于现在已卸载,因此该MOUNTPOINT列将为空。

例如,假设您想要将ddISO映像连接到USB记忆棒。首先插入操纵杆,然后查找lsblk相关的dev文件(基于MOUNTPOINT),然后卸载/弹出已安装的设备并用于dd if=stuff.iso of=/dev/sdX编写图像。这些步骤很重要,因为覆盖已安装的设备并不是一个好主意。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.