Je pense avoir installé Ubuntu sur SSD mais je ne suis pas sûr et je veux vérifier. Mais je ne sais pas comment faire?
Mec, où est ma racine?
Tout d’abord, nous devons savoir sur quel disque se trouve votre système de fichiers racine (en d’autres termes, quel périphérique héberge votre Ubuntu. L’un des moyens consiste à utiliser df
.
$ df / -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 110G 58G 48G 55% /
Génial ! Je sais maintenant que mon Ubuntu est placé sur le disque /dev/sda
, d’une taille de 110 Go (les 10 autres étant utilisés pour autre chose). Pas assez d'informations? OK, que diriez-vous de ceci:
$ 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! c'est mon SSD! Mais attendez . . .
Que faire si vous avez deux disques de même taille et de même fabricant?
Les disques contiennent des informations très intéressantes: leur vitesse de rotation et, comme nous le savons, les disques SSD ne tournent pas .
$ Sudo smartctl -a /dev/sda | grep 'Rotation Rate'
[Sudo] password for xieerqi:
Rotation Rate: Solid State Device
On dirait non?
Note latérale: il est peut-être nécessaire d'installer smartmontools
pour pouvoir utiliser la commande smartctl
.
Pour plus d'informations, lisez cet article sur les sites stackexchange Unix et Linux
Il y a une autre méthode, comme décrit ici . Chaque lecteur a le répertoire correspondant dans le répertoire /sys/class/block/
, et en faisant
cat /sys/class/block/DEVICE_NAME/queue/rotational
vous obtiendrez 1 pour le disque dur ou 0 pour le SSD. Cette approche est très pratique pour une utilisation dans des scripts
En fait, c'est apparemment la même approche que lsblk
utilise:
$ 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 moyen simple de savoir si votre système d'exploitation est installé sur SSD ou non consiste à exécuter une commande à partir d'une fenêtre de terminal appelée lsblk -o name,rota
. Regardez la colonne ROTA
de la sortie et vous y verrez des chiffres. Un 0
signifie aucune vitesse de rotation ou lecteur SSD. Un 1
indiquerait un lecteur avec des plateaux qui tournent. Mon Ubuntu est installé sur mon lecteur /dev/sdb
. Nous pouvons donc voir qu’un indique un 0
, ce qui signifie qu’il est installé sur un lecteur SSD. Je mets après cet exemple de comment savoir où votre système d'exploitation est installé à l'aide de df
name__.
REMARQUE: Ubuntu installé en tant que client en boucle ou sur des machines virtuelles affichera ROTA 1 quelle que soit l'installation du système d'exploitation hôte. En outre, " disques hybrides à semi-conducteurs " et les clés USB indiqueront également ROTA 1.
Exemple:
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 vous pouvez effectuer la vérification en tant que script à couche unique en utilisant -d
pour ne pas afficher les partitions:
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
Exemple:
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
Pour déterminer le lecteur sur lequel votre installation est installée, exécutez la commande df /
à partir d'une fenêtre de terminal.
REMARQUE: Les lecteurs configurés avec LVM (gestion de volumes logiques) affichent en réalité le lecteur sous la forme /boot
au lieu de /
.
Exemples:
Lecteur 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
Lecteur non LVM:
df /
/dev/sdb1 222309012 38264268 172728984 19% /
UPDATE: lsblk
peut également être utilisé pour indiquer où le système d'exploitation est installé et si le lecteur est un disque dur SSD tout en un:
lsblk -o NAME,MOUNTPOINT,MODEL,ROTA
Exemple:
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
C’est après un redémarrage du système, mes désignations de lecteur ont donc été modifiées à nouveau, mais comme vous pouvez le voir, mes lecteurs SanDisk sont des disques SSD et ROTA indique 0.
J'espère que cela t'aides!
En fin de compte, votre question n'est pas vraiment une question Ubuntu. Vous avez un disque dur avec une petite quantité de stockage flash par rapport à la taille du disque dur. Ceci est géré automatiquement pour vous par le lecteur et tente de placer les fichiers les plus fréquemment utilisés sur la partie Flash plutôt que sur la partie HD. Autant que je sache, il n’ya aucun moyen de contrôler ou de dire quels fichiers se trouvent sur quelle partie. Si vous utilisez régulièrement Ubuntu, tous les fichiers importants doivent se retrouver dans la partie flash de votre lecteur, mais c'est à peu près tout.