Penso che ho installato Ubuntu su SSD ma non ne sono sicuro e voglio verificarlo. Ma non so come?
Penso che ho installato Ubuntu su SSD ma non ne sono sicuro e voglio verificarlo. Ma non so come?
Risposte:
Amico, dov'è la mia radice?
Prima di tutto dobbiamo sapere su quale disco si trova il tuo filesystem di root (in altre parole, con quale dispositivo ospita Ubuntu. Un modo è df
.
$ df / -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 110G 58G 48G 55% /
Grande ! Ora so che il mio Ubuntu è posizionato su /dev/sda
disco, che ha una dimensione di 110 GB (e gli altri 10 GB sono usati per qualcos'altro). Informazioni insufficienti? OK, che ne dici di questo:
$ 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! questo è il mio SSD! Ma aspetta . . .
Cosa succede se si dispone di due dischi della stessa dimensione e dello stesso produttore?
Bene, i dischi hanno questa informazione molto interessante: quanto velocemente ruotano e come sappiamo i dischi SSD non ruotano .
$ sudo smartctl -a /dev/sda | grep 'Rotation Rate'
[sudo] password for xieerqi:
Rotation Rate: Solid State Device
Sembra giusto?
Side-nota: la smartmontools
può avere bisogno di essere installato per l'uso smartctl
dei comandi.
Per maggiori informazioni, leggi questo post sul sito stackexchange di Unix e Linux
C'è un altro metodo, come descritto qui . Ogni unità ha la directory corrispondente nella /sys/class/block/
directory, e facendo
cat /sys/class/block/DEVICE_NAME/queue/rotational
otterrai 1 per il disco rigido o 0 per SSD. Questo approccio è molto conveniente per l'uso negli script
In effetti, questo è apparentemente lo stesso approccio che lsblk
utilizza:
$ lsblk -o NAME,ROTA
NAME ROTA
sda 0
└─sda1 0
sdb 1
├─sdb1 1
├─sdb2 1
├─sdb3 1
├─sdb4 1
├─sdb5 1
└─sdb6 1
Un modo semplice per sapere se il tuo sistema operativo è installato su SSD o meno è quello di eseguire un comando da una finestra del terminale chiamata lsblk -o name,rota
. Guarda la ROTA
colonna dell'output e lì vedrai i numeri. A 0
significa nessuna velocità di rotazione o unità SSD. A 1
indicherebbe un disco con piatti che ruotano. Il mio Ubuntu è installato sul mio /dev/sdb
disco, quindi possiamo vedere che uno indica un 0
che significa che è installato su un disco SSD. Ho inserito questo esempio di come dire dove è installato il tuo sistema operativo df
.
NOTA: Ubuntu installato come client in loop o VM mostrerà ROTA 1 indipendentemente dall'installazione del sistema operativo host. Inoltre, " unità ibride a stato solido " e unità flash USB mostreranno anche ROTA 1.
Esempio:
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
Oppure puoi fare il controllo come uno script di una riga usando -d
per non mostrare le partizioni:
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
Esempio:
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
Per determinare su quale unità è installata l'installazione, eseguire il comando df /
da una finestra del terminale.
NOTA: le unità configurate con LVM (Logical Volume Management) in realtà mostrano l'unità come /boot
anziché /
.
Esempi:
LVM Drive:
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
Unità non LVM:
df /
/dev/sdb1 222309012 38264268 172728984 19% /
AGGIORNAMENTO: lsblk
può anche essere usato per mostrare dove è installato il sistema operativo e se l'unità è SSD tutto in un solo comando:
lsblk -o NAME,MOUNTPOINT,MODEL,ROTA
Esempio:
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
Questo è dopo un riavvio del sistema, quindi le designazioni delle mie unità sono cambiate di nuovo, ma come puoi vedere le mie unità SanDisk sono SSD e ROTA mostra 0.
Spero che sia di aiuto!
lsblock
è la mia unità ottica.
Alla fine la tua domanda non è davvero una domanda Ubuntu. Hai un disco rigido con una piccola quantità, relativamente alla dimensione del disco rigido, di memoria flash. Questo viene gestito automaticamente dall'unità e tenta di posizionare i file a cui si accede più frequentemente nella parte Flash anziché nella parte HD. Per quanto ne so non c'è modo di controllare o dire quali file si trovano su quale parte. Se usi Ubuntu regolarmente tutti i file importanti dovrebbero finire nella parte flash del tuo disco ma questo è tutto.