technology

Como descobrir se o sistema está rodando em HDD ou SSD no Linux

.

Apresentação: Você será apresentado a alguns dos comandos que mostrarão se o sistema possui um HDD ou SSD. Para pular diretamente para o comando, Clique aqui.

Não sei você, mas quando estou ajudando outras pessoas com seus sistemas e descubro que o desempenho não está de acordo com minhas expectativas, a primeira coisa que me vem à mente é ver se o sistema está usando um HDD ou SSD dirigir.

E quando eu pergunto a eles sobre isso, eles dizem que não sabemos. Sim, eu lido com algumas pessoas que não entendem de tecnologia, então a resposta delas é válida, mas não quero que você seja assim e, por isso, criamos um artigo onde você descobrirá como verificar se o seu sistema está equipado com um HDD ou um SDD.

Então, vamos descobrir alguns dos comandos comuns para verificar o tipo de drive no Linux, que serão muito úteis sempre que você quiser descobrir as informações sobre o tipo de drive.

Lista de comandos para encontrar o tipo de unidade

Que eu saiba, não existem comandos específicos no Linux que vão te dizer se o drive é um HDD ou SSD, mas você pode usar vários comandos como lsblk, hdparm, smartctl, e lendo as informações do disco de /sys/block/sdX/fila/rotacional para encontrar as informações com alguns ajustes.

Encontre o tipo de disco usando o comando lsblk

eu escolhi o lsblk comando como minha primeira escolha para encontrar o tipo de unidade no Linux porque é um comando comum que quase todos os usuários do Linux usaram. Você pode estar se perguntando como podemos usar o lsblk comando para encontrar o tipo de unidade.

Pelo que eu sei, ele exibe apenas informações da unidade, como nome do dispositivo, local de montagem, principal e secundário e tipo, mas não é o que você pensa.

Absolutamente correto em seu lugar, mas você pode ajustar a saída padrão do lsblk comando usando o -o opção para mostrar informações sobre a unidade.

Para ajustar a saída padrão do comando lsblk, vamos usar o -o opção, que imprimirá apenas a coluna que especificaremos ao lado dos “parâmetros-o”.

Para facilitar, selecionei as colunas “NAME”, “ROTA” e “SIZE”, que mostrarão o nome do drive, rotação (se o drive for um HDD, o valor será “1” e se for um SSD, o valor será “0,”) e o tamanho da partição específica.

Deixe-me agora usar o seguinte comando em meu sistema para determinar o tipo de unidade:

$ lsblk -o NAME,ROTA,SIZE 

A saída do comando acima

[email protected]:~$ lsblk -o NAME,ROTA,SIZE
NAME    ROTA   SIZE
sda        0 465.8G
├─sda1     0   529M
├─sda2     0   100M
...................
...................
└─sda12    0  30.9G
sdb        1 931.5G
├─sdb1     1   499M
├─sdb2     1   100M
...................
...................
├─sdb8     1 416.9G

O comando acima imprime “0” porque, como você deve saber, os HDDs têm um mecanismo de rotação, enquanto os SSDs não. Se o comando descobrir que o drive possui um mecanismo rotacional, ele simplesmente digitará o número “1” na coluna rotacional (ROTA).

Encontre o tipo de disco lendo /sys/block/sdX/queue/rotational

A mesma informação pode ser encontrada usando o cat comando para ler o /sys/block/sdX/fila/rotacional arquivo, mas primeiro, certifique-se de atualizar o nome da unidade para corresponder ao seu sistema.

Quando você executar o seguinte comando em seu terminal, a saída estará no “0” e “1” order, o que significa que se o comando print disser “0”a unidade anexada é um SSD e, se estiver escrito “1”a unidade conectada é um HDD.

$ cat /sys/block/sdb/queue/rotational
or
$ cat /sys/block/sd*/queue/rotational

Ao invocar o comando acima em minha unidade de disco rígido externa, que é /dev/sdbobtive a seguinte saída na minha tela:

0

O mesmo comando também pode ser usado para criar um script bash básico que informará se o hardware possui uma unidade HDD ou SDD.

if [ "$(cat /sys/block/sda/queue/rotational)" = 0 ]; then
    echo "Bruh! You do have an SSD on your system."
else
    echo "Bruh! You do have an HDD on your system."
fi

Encontre o tipo de disco usando o comando hdparm

O problema com o comando acima é que ele irá imprima “1” mesmo se você tiver anexado um polegar ou uma unidade USB ao seu sistema, o que não é correto porque as unidades USB não possuem um mecanismo de rotação. Portanto, não podemos confiar totalmente no comando acima.

Você pode confirmar a mesma coisa usando hdparm ou smartctl comandos como o listado abaixo.

$ sudo hdparm -I /dev/sda | grep "Nominal Media Rotation Rate"

Como você pode ver, a saída mostra “Dispositivo de estado sólido” quando o comando acima descobriu que era uma unidade SSD ou imprimiria o velocidade rpm da unidade de disco rígido.

Nominal Media Rotation Rate: Solid State Device

Se o seu sistema estiver conectado a uma unidade HDD, a saída será semelhante a esta:

Nominal Media Rotation Rate: 5400

Encontre o tipo de disco usando o comando smartctl

Alternativamente, você pode usar o Ferramenta utilitária SmartCTL para encontrar informações sobre o disco. Essa ferramenta faz mais do que apenas exibir informações sobre o tipo de unidade, que abordaremos algum dia.

Até lá, saiba como obter informações sobre o tipo de drive instalando o “ferramentas inteligentes” utilitário executando o comando abaixo

$ sudo apt install smartmontools 

Depois de instalar “ferramentas inteligentes” em seu sistema, execute o seguinte comando para exibir apenas as informações da taxa de rotação enquanto suprime outras informações extras.

$ sudo smartctl -a /dev/sdb | grep "Rotation Rate"

A saída do comando acima indica claramente que a unidade é um HDD e o rpm da unidade é 5400. Você também pode usar o comando acima para encontrar o RPM da unidade HDD no Linux.

Rotation Rate:    5400 rpm

Encontre o tipo de disco usando o número do modelo

Muito provavelmente, o comando ajustado acima ajudará você a identificar o tipo de unidade, mas se por algum motivo estranho você não conseguir fazer isso, poderá extrair o nome do modelo da unidade e pesquisar on-line por informações sobre ela. Lá, sem dúvida, você encontrará alguns detalhes úteis sobre as unidades relevantes.

Use o comando dmesg para extrair o número do modelo

UMA dmesg comando é um buffer de anel do kernel onde tudo é registrado e, a partir disso, você pode extrair o modelo número da unidade procurando explicitamente pelo número do modelo da unidade.

$ sudo dmesg | grep -i -e ata -e scsi

A saída do comando acima

[    1.944569] ata2: SATA max UDMA/133 abar [email protected] port 0xb1334180 irq 
[    2.260153] ata1: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
................................................................................
................................................................................
[    2.262527] ata1.00: ATA-11: Samsung SSD 860 EVO 500GB, RVT04B6Q, max UDMA/133
[    2.263057] ata1.00: disabling queued TRIM support
................................................................................
................................................................................
[    2.268536] ata1.00: configured for UDMA/133
[    2.279105] scsi 0:0:0:0: Direct-Access     ATA      Samsung SSD 860  4B6Q PQ: 0 ANSI: 5

Pode ser necessário pegar o nome ou número do modelo da mensagem acima e procurá-lo online de acordo com a saída.

Use o comando lsblk para extrair o modelo e serial

Além disso, você pode encontrar o nome do modelo e o número de série da unidade usando o lsblk comando, que é útil para descobrir as informações de garantia da unidade anexada.

Execute o comando abaixo para imprimir o modelo e o número de série do dispositivo junto com o nome e a rotação.

$ lsblk -o NAME,ROTA,SIZE,MODEL,SERIAL

A saída do comando acima:

NAME    ROTA   SIZE MODEL                     SERIAL
sda        0 465.8G Samsung SSD 860 EVO 500GB S4BNNE7W208398C
├─sda1     0   529M
├─sda2     0   100M
...................
...................
└─sda12    0  30.9G
sdb        1 931.5G TOSHIBA MQ04ABF100        Z9XQPR13Q
├─sdb1     1   499M
├─sdb2     1   100M
...................
...................
├─sdb8     1 416.9G

Folha de dicas para determinar se uma unidade é SSD ou HDD

  • Encontre o SSD ou HDD da unidade usando lsblk
    • $ lsblk -o NAME,ROTA,SIZE
  • Encontre o SSD ou HDD da unidade lendo cat /sys/block/sd*/queue/rotational
    • $ cat /sys/block/sd*/queue/rotational
  • Encontre o SSD ou HDD da unidade usando hdparm
    • $ sudo hdparm -I /dev/sda | grep "Nominal Media Rotation Rate"
  • Encontre o SSD ou HDD da unidade usando hdparm
    • $ sudo smartctl -a /dev/sdb | grep "Rotation Rate"
  • Encontre o tipo de disco usando o modelo e serial
    • $ sudo dmesg | grep -i -e ata -e scsi
    • $ lsblk -o NAME,ROTA,SIZE,MODEL,SERIAL

Embrulhar

Isso é tudo o que há para dizer neste momento. Aqui você aprendeu como localizar a unidade anexada como um HDD ou SSD em um sistema baseado em Linux. Neste artigo específico, você também aprendeu onde procurar o modelo e o número de série da unidade.

Por favor, deixe-me saber na seção de comentários se houver mais alguma coisa que você gostaria de adicionar.

.

Mostrar mais

Artigos relacionados

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Botão Voltar ao topo