Como verificar se meu Ubuntu está colocado no SSD?

26

Acho que instalei o Ubuntu no SSD, mas não tenho certeza e quero verificar isso. Mas eu não sei como?

luar
fonte
2
Bem, você tem algo além de um SSD?
TheWanderer
I em minhas estadias de configuração 500GB HD ST500LM000-SSHD-8GB (os solos LVd4)
luar
4
ENCERRADORES: A questão não está fora de tópico . Ele claramente faz uma pergunta específica, relacionada ao Ubuntu OS, e pode ser resolvido com as ferramentas do Ubuntu. Retire seus votos ou forneça um bom motivo para você achar que seu voto está correto #
Sergiy Kolodyazhnyy

Respostas:

40

Cara, onde está minha raiz?

Antes de tudo, precisamos saber em que disco está localizado o seu sistema de arquivos raiz (em outras palavras, qual dispositivo abriga seu Ubuntu. Uma maneira é com df.

$ df / -h                                                                       
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       110G   58G   48G  55% /

Ótimo ! Agora eu sei que meu Ubuntu é colocado em /dev/sdadisco, que tem 110 GB de tamanho (e os outros 10 GB são usados ​​para outra coisa). Informação insuficiente? OK, e quanto a isso:

$ sudo lshw -short -C disk                                                      
[sudo] password for xieerqi: 
H/W path         Device     Class          Description
======================================================
/0/1/0.0.0       /dev/sda   disk           120GB Radeon R7
/0/2/0.0.0       /dev/sdb   disk           500GB TOSHIBA MQ01ABF0

Oh, Radeon R7! esse é o meu SSD! Mas espere . . .

E se você tiver dois discos do mesmo tamanho e do mesmo fabricante?

Bem, os discos têm essa informação muito interessante - a rapidez com que eles rodam e, como sabemos, os discos SSD não rodam .

$ sudo smartctl -a /dev/sda | grep 'Rotation Rate'                              
[sudo] password for xieerqi: 
Rotation Rate:    Solid State Device

Parece certo?

Nota lateral: o smartmontoolspodem precisar de ser instalado para uso smartctlde comando.

Para obter mais informações, leia esta postagem no site stackexchange do Unix e Linux

Atualização adicional:

Há mais um método, conforme descrito aqui . Cada unidade possui o diretório correspondente no /sys/class/block/diretório e, executando

cat /sys/class/block/DEVICE_NAME/queue/rotational

você receberá 1 para o disco rígido ou 0 para ssd. Essa abordagem é muito conveniente para uso em scripts

Na verdade, essa é aparentemente a mesma abordagem que lsblkusa:

$ lsblk -o NAME,ROTA                                                                                                                  
NAME   ROTA
sda       0
└─sda1    0
sdb       1
├─sdb1    1
├─sdb2    1
├─sdb3    1
├─sdb4    1
├─sdb5    1
└─sdb6    1
Sergiy Kolodyazhnyy
fonte
@ Serg espera que é estranho. O Radeon R7 não é uma GPU?
shortstheory
@shortstheory Eu recebo muito essa pergunta, mas é realmente um SSD. Se você quiser, posso fornecer links da
Amazon
Eu acho que isso funciona, até um certo ponto ... E se a partição estiver criptografada, por exemplo? Sua chamada "df" resultará em algo como / dev / dm-1 463867688 405671304 34610184 93% / o que realmente não ajuda: - / Ainda votando, pois acho que você está acertando os casos mais comuns.
Little Jawa
@LittleJawa: bem, no que diz respeito às partições criptografadas, eu adoraria cobrir esse caso, mas nunca lidei com um, então não saberia. é um bom argumento e espero que alguém repasse isso. Eu acho que mesmo que o arquivo de dispositivo é chamado de forma diferente, a idéia permanece a mesma, mas como eu disse - eu não sou qualificado em matéria de arquivos criptografados
Sergiy Kolodyazhnyy
A ideia geral seria a mesma. Você teria etapas adicionais para identificar de onde vem a partição criptografada. Vai depender da ferramenta de criptografia usada - com LUKS, eu cuidaria do utilitário "cryptsetup" para descobrir que ... enfim - o proprietário da pergunta escolheu sua resposta como a correta, então acho que isso fecha o assunto: ) Se / quando tivermos a mesma pergunta relacionada à partição criptografada, analisaremos :-p
Little Jawa
19

Uma maneira simples de saber se o seu sistema operacional está instalado no SSD ou não é executar um comando a partir de uma janela de terminal chamada lsblk -o name,rota. Olhe para a ROTAcoluna da saída e você verá números. A 0significa que não há velocidade de rotação ou unidade SSD. A 1indicaria uma unidade com pratos que giram. Meu Ubuntu está instalado no meu /dev/sdbdisco, então podemos ver que um indica um, o 0que significa que ele está instalado em um disco SSD. Eu coloquei após este exemplo de como saber onde o seu sistema operacional está instalado usando df.

NOTA: O Ubuntu instalado como um cliente no loop ou nas VMs exibirá o ROTA 1, independentemente da instalação do sistema operacional host. Além disso, as " unidades híbridas de estado sólido " e as unidades flash USB também mostrarão o ROTA 1.

Exemplo:

terrance@terrance-ubuntu:~$ lsblk -o name,rota
NAME   ROTA
sda       1
└─sda1    1
sdb       0
├─sdb1    0
├─sdb2    0
└─sdb5    0
sdc       1
└─sdc1    1
sdd       1
└─sdd1    1
sde       0
├─sde1    0
└─sde2    0
sdf       1
└─sdf1    1
sdg       1
└─sdg1    1
sdh       1
└─sdh1    1
sr0       1
sr1       1

Ou você pode fazer a verificação como um script de liner usando -dpara não mostrar partições:

lsblk -d -o name,rota | awk 'NR>1' | while read CC; do dd=$(echo $CC | awk '{print $2}'); if [ ${dd} -eq 0 ]; then echo $(echo $CC | awk '{print $1}') is a SSD drive; fi; done

Exemplo:

terrance@terrance-ubuntu:~$ lsblk -d -o name,rota | awk 'NR>1' | while read CC; do dd=$(echo $CC | awk '{print $2}'); if [ ${dd} -eq 0 ]; then echo $(echo $CC | awk '{print $1}') is a SSD drive; fi; done
sdb is a SSD drive
sde is a SSD drive

Para determinar em qual unidade sua instalação está, execute o comando df /em uma janela do terminal.

NOTA: As unidades configuradas com LVM (Logical Volume Management) realmente mostram a unidade como em /bootvez de /.

Exemplos:

Unidade LVM:

df /
Filesystem                   1K-blocks      Used Available Use% Mounted on
/dev/mapper/xubuntu--vg-root 243352964 106945028 123976576  47% /

df /boot
Filesystem     1K-blocks   Used Available Use% Mounted on
/dev/sda1         720368 237220    430756  36% /boot

Unidade não LVM:

df /
/dev/sdb1       222309012   38264268  172728984  19% /

UPDATE: lsblk também pode ser usado para mostrar onde o sistema operacional está instalado e se a unidade é SSD, tudo em um comando:

lsblk -o NAME,MOUNTPOINT,MODEL,ROTA

Exemplo:

terrance@terrance-ubuntu:~$ lsblk -o NAME,MOUNTPOINT,MODEL,ROTA
NAME   MOUNTPOINT         MODEL            ROTA
sda                       Backup+ Desk        1
└─sda1 /media/Seagate                         1
sdb                       WDC WD2500JD-00K    1
└─sdb1 /media/250GB_SHARE                     1
sdc                       WDC WD5000AAKS-4    1
└─sdc1 /media/500GB                           1
sdd                       ST500DM002-1BC14    1
└─sdd1 /media/320GB                           1
sde                       SanDisk SDSSDA24    0
├─sde1 /                                      0
├─sde2                                        0
└─sde5 [SWAP]                                 0
sdf                       WDC WD5000AAKX-2    1
└─sdf1 /media/WD500GB                         1
sdg                       WDC WD10EZEX-00W    1
└─sdg1 /media/1TB_SHARE                       1
sdh                       SanDisk SDSSDA24    0
├─sdh1                                        0
└─sdh2 /media/Windows                         0
sr0                       BD-RE  BH16NS40     1
sr1                       DVD-RAM GH40L       1

Isso ocorre após uma reinicialização do sistema, então minhas designações de unidade mudaram novamente, mas como você pode ver, minhas unidades SanDisk são SSDs e ROTA mostra 0.


Espero que isto ajude!

Terrance
fonte
Como mostra onde um sistema operacional está instalado?
Pilot6
Eu não sei onde meu sistema operacional está instalado, mas de acordo com isso, ele está no sda e não no SSD.NAME ROTA sda 1 ├─sda1 1 ├─sda2 1 └─sda2 1 └─sda5 1 sr0 1
moonlight
@ Pilot6 Bom ponto, atualizei minha resposta. Obrigado! =)
Terrance
@moonlight Atualizei minha resposta com uma explicação na parte inferior para mostrar como saber onde está instalada.
Terrance
+1. Curiosamente, no meu sistema que é baseado em SSD, o loop0 gira. O único outro dispositivo rotativo produzido lsblocké a minha unidade óptica.
Pausado até novo aviso.
1

No final, sua pergunta não é realmente uma questão do Ubuntu. Você tem um disco rígido com uma quantidade pequena, relativa ao tamanho do HD, de armazenamento flash. Isso é gerenciado automaticamente para você pela unidade e tenta colocar os arquivos acessados ​​com mais frequência na parte do Flash, em vez da parte do HD. Tanto quanto eu sei, não há como controlar ou dizer quais arquivos estão em qual parte. Se você usa regularmente o Ubuntu, todos os arquivos importantes devem acabar na parte flash da sua unidade, mas é isso.

Evan Steinbrenner
fonte