Como saber a qual dispositivo a unidade USB está atribuída?

4

Como posso saber a qual dispositivo a unidade USB está atribuída?

Antes de inserir o drive USB:

$ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
nvme0n1     259:0    0 238.5G  0 disk 
├─nvme0n1p5 259:3    0  15.9G  0 part [SWAP]
├─nvme0n1p1 259:1    0 222.6G  0 part /
└─nvme0n1p2 259:2    0     1K  0 part 

Depois:

$ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda           8:0    1   1.9G  0 disk 
├─sda2        8:2    1   2.4M  0 part 
└─sda1        8:1    1   1.2G  0 part 
nvme0n1     259:0    0 238.5G  0 disk 
├─nvme0n1p5 259:3    0  15.9G  0 part [SWAP]
├─nvme0n1p1 259:1    0 222.6G  0 part /
└─nvme0n1p2 259:2    0     1K  0 part 

É /dev/sda ??

    
por laukok 27.04.2017 / 02:19

4 respostas

5

Basta usar as opções de saída lsblk para descobrir:

lsblk -o NAME,TRAN

que produz:

sda                    sata
├─sda1
└─sda2           
sdb                    usb
└─sdb1                 
sr0                    sata

Você também pode usar outras opções para obter informações extras (por exemplo, SIZE).
Se você quiser um bom resultado limpo use -S :

$ lsblk -So NAME,SIZE,TRAN

NAME   SIZE  TRAN
sda    400G  sata
sdb    16G   usb
sr0    1024M sata
    
por Ravexina 27.04.2017 / 11:44
2

Como descobrir qual dos seus dispositivos é um dispositivo USB

Em suma :

find /dev/disk -ls | grep usb

Ou, em um dispositivo específico:

find /dev/disk -ls | grep usb | grep sda

Se houver alguma saída, sda é um dispositivo usb.

Versão longa

As informações sobre seus dispositivos podem ser encontradas no diretório /dev/disk . Especificamente, os subdiretórios /dev/disk/by-id e /dev/disk/by-path nos fornecem informações sobre se um dispositivo é um dispositivo usb ou não. Por exemplo, um nome como:

usb-0930_USB_Flash_Memory_04506470B2D398CF-0:0

deixa claro que esse é um drive USB.

Se eu executar ls -l no arquivo, a saída será:

lrwxrwxrwx 1 root root 9 apr 27 09:21 /dev/disk/by-id/usb-0930_USB_Flash_Memory_04506470B2D398CF-0:0 -> ../../sdb

que mostra claramente que isso é sdb

Uso de find para filtrar dispositivos USB

O comando find ... -ls subseqüentemente nos fornecerá as informações de que precisamos.

Você pode descobrir facilmente qual dos dispositivos é um dispositivo USB executando o comando:

find /dev/disk -ls | grep usb

Para verificar se especificamente sda é um dispositivo usb, execute:

find /dev/disk -ls | grep usb | grep sda

Se tiver alguma saída, é um dispositivo usb.

Parece que o seu dispositivo usb tem duas partições:

sda           8:0    1   1.9G  0 disk 
├─sda2        8:2    1   2.4M  0 part 
└─sda1        8:1    1   1.2G  0 part 
    
por Jacob Vlijm 27.04.2017 / 09:14
0

Veja o syslog ( /var/log/syslog ) e dmesg logo após conectar o USB deve mostrar mensagens sobre qual /dev/sXY device ele é, ou se ele teve algum problema e não obteve o nome /dev/sXY .

Observar lsblk deve corresponder a ele por tamanho, se tiver recebido um nome / dev / e tiver certeza de que não há outros dispositivos de tamanho semelhante anexados.

    
por Xen2050 27.04.2017 / 06:27
0

Outra opção é examinar a saída de blkid (opcionalmente executada como raiz, ou seja, como sudo blkid ). Isso lhe dará a oportunidade de combinar seu dispositivo não apenas pelo tamanho, mas também pelo sistema de arquivos e / ou pelo rótulo da partição. Especialmente, o rótulo de partion pode ser bastante útil.

Indo pelo resultado de lsblk que você postou, é óbvio que seu dispositivo USB realmente é sda . Você tem um dispositivo de bloco, depois conecta seu dispositivo USB e agora ele mostra dois dispositivos. Então, obviamente, o dispositivo adicional apareceu ao conectar seu dispositivo USB, por isso deve ser o mesmo dispositivo.

    
por hoe 27.04.2017 / 09:26