Existe alguma maneira de montar novamente um dispositivo USB ejetado em um Mac?

1

Eu queria saber se é possível montar um dispositivo USB depois que ele foi removido do Finder, sem precisar reinseri-lo na porta USB.

No meu Mac, conectei um dispositivo USB, mas às vezes, depois de colocar o Mac suspenso, o USB não é mais detectado e, em seguida, eu o retiro e o insiro novamente.

Existe alguma linha de comando para reativar? Eu tentei com diskutil mountDisk , mas isso não funciona, como se o dispositivo USB fosse removido fisicamente do Mac.

    
por tecfil 20.08.2015 / 10:56

1 resposta

0

I wanted to know if is possible to mount a USB device after it has been removed from the Finder, without having to re-insert it into the USB port.

Se você está falando sobre dispositivos USB em geral? A resposta é sim e não, dependendo do tipo de dispositivo ejetado: sim, se for um disco rígido montado - ou unidade SSD - mas não se for uma unidade flash USB. Detalhes abaixo.

Funciona para unidades de disco rígido USB

Ejetando uma unidade de disco rígido USB e tentando remontá-la com diskutil mountDisk .

Por exemplo, aqui está o exemplo diskutil list output da minha máquina Mac OS X 10.9.5 (Mavericks) com um disco rígido externo USB conectado e uma unidade flash USB conectada:

/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS Hard Drive              499.2 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *2.0 TB     disk2
   1:                        EFI EFI                     209.7 MB   disk2s1
   2:                  Apple_HFS External Hard Drive     2.0 TB     disk2s2
/dev/disk3
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *8.0 GB     disk3
   1:                        EFI EFI                     209.7 MB   disk3s1
   2:                  Apple_HFS USB Flash Drive         7.7 GB     disk3s2

Ok, agora vou em frente e ejete o "Disco Rígido Externo" e verifique diskutil list novamente e a saída parece 100% a mesma que a montada:

/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS Hard Drive              499.2 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *2.0 TB     disk2
   1:                        EFI EFI                     209.7 MB   disk2s1
   2:                  Apple_HFS External Hard Drive     2.0 TB     disk2s2
/dev/disk3
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *8.0 GB     disk3
   1:                        EFI EFI                     209.7 MB   disk3s1
   2:                  Apple_HFS USB Flash Drive         7.7 GB     disk3s2

Então, agora, se eu quiser remontar o "Disco Rígido Externo", só preciso anotar o identificador de partição do "Disco Rígido Externo" ( disk2s2 ) e executar este comando:

diskutil mountDisk /dev/disk2s2

Aguarde a conclusão do processo e o volume será montado como esperado.

não funciona para unidades flash USB

Ejetando uma unidade flash USB e tentando remontá-la com diskutil mountDisk .

Mas se eu prosseguir e ejetar o "USB Flash Drive" e executar diskutil list novamente, "USB Flash Drive" será removido da lista:

/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS Hard Drive              499.2 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *2.0 TB     disk2
   1:                        EFI EFI                     209.7 MB   disk2s1
   2:                  Apple_HFS External Hard Drive     2.0 TB     disk2s2

E mesmo se eu tentar montar o flash drive USB conhecendo o ponto de montagem da lista anterior, como este:

diskutil mountDisk /dev/disk3s2

O sistema diz:

Unable to find disk for /dev/disk3s2

O que explica essa discrepância no comportamento? Não tenho certeza. Mas o que se resume é se o dispositivo USB é um disco rígido ou SSD e aparece na lista retornada por diskutil list , então você não deve ter problemas em remontar o dispositivo USB. Mas se é uma unidade flash USB e não aparece nessa lista? Não pode ser remontado a menos que a unidade flash USB seja fisicamente desconectada e reconectada novamente.

Funciona para unidades flash USB

Descarregando e recarregando a extensão do kernel de armazenamento em massa USB ( IOUSBMassStorageClass.kext ).

Tudo isso, comentário Nesta resposta por Jannis Linxweiler explica como se você descarregar e recarregar a extensão do kernel de armazenamento em massa USB ( IOUSBMassStorageClass.kext ) você pode efetivamente obter a unidade flash USB para remontar sem desconectá-lo fisicamente.

Testei isso na minha máquina Mac OS X 10.9.5 (Mavericks) e ele funciona como esperado.

Primeiro, ejete a unidade flash USB e execute este comando para descarregar IOUSBMassStorageClass.kext :

sudo kextunload /System/Library/Extensions/IOUSBMassStorageClass.kext

Em seguida, execute este comando para recarregar o IOUSBMassStorageClass.kext :

sudo kextload /System/Library/Extensions/IOUSBMassStorageClass.kext

Fiz isso e meu flash drive USB voltou sem tocá-lo fisicamente. Truque puro! E isso não afeta as unidades de disco rígido USB conectadas do que eu posso dizer.

    
por 07.09.2015 / 06:42

Tags