Ubuntu à partir de 14h10
Dans Ubuntu 14.10 et 15.04, TRIMming se déroule automatiquement chaque semaine sur tous les SSD pris en charge par fstrim
.
$ tail -n1 /etc/cron.weekly/fstrim
/sbin/fstrim --all || true
Depuis 15.04 Ubuntu utilise systemd et son timer ( man systemd.timer
, Arch wiki )
systemctl list-timers
systemctl status fstrim.timer
Ubuntu 14.04
Depuis Ubuntu 14.04, la TRIM planifiée est activée par défaut pour les SSD Intel, SAMSUNG, OCZ, Patriot et Sandisk. Si vous avez une autre marque, vous pouvez désactiver la vérification du fournisseur en exécutant la commande suivante:
sed -i 's/exec fstrim-all/exec fstrim-all --no-model-check/g' /etc/cron.weekly/fstrim
(ou simplement éditer le fichier /etc/cron.weekly/fstrim
et ajouter --no-model-check
)
Ubuntu 13.10 et versions antérieures
Il existe trois façons d'effectuer TRIM: manuel, programmé et automatique:
TRIM manuel
Dans Ubuntu, cela peut être réalisé avec fstrim
:
sudo fstrim /
toutefois, cela n'est pas nécessaire lorsque les TRIM programmés ou automatiques sont activés, comme indiqué dans les sections ci-dessous.
Remarque: Pour Ubuntu 11.04 et les systèmes antérieurs, fstrim ne sont pas disponibles , donc vous devez utiliser wiper.sh
fourni hdparm
en/usr/share/doc/hdparm/contrib/wiper.sh.gz
TRIM planifiée (recommandé)
C'est la méthode actuellement recommandée, et il est prévu de l'activer par défaut pour Ubuntu 14.04 . Voici comment l'activer manuellement dans les anciennes versions d'ubuntu (11.10 à 13.10):
Créez un fichier de script de travail CRON hebdomadaire:
gksudo gedit /etc/cron.weekly/fstrim
Collez le code suivant dans le fichier, puis enregistrez et fermez le fichier:
#! /bin/sh
# By default we assume only / is on an SSD.
# You can add more SSD mount points, separated by spaces.
# Make sure all mount points are within the quotes. For example:
# SSD_MOUNT_POINTS='/ /boot /home /media/my_other_ssd'
SSD_MOUNT_POINTS='/'
for mount_point in $SSD_MOUNT_POINTS
do
fstrim $mount_point
done
Notez que ce qui précède suppose que seul votre système de fichiers racine /
se trouve sur un disque SSD. Si plusieurs points de montage résident sur un ou plusieurs disques SSD, ajoutez-les SSD_MOUNT_POINTS
comme expliqué dans le code.
Rendre le script exécutable:
sudo chmod +x /etc/cron.weekly/fstrim
Et enfin le tester:
sudo /etc/cron.weekly/fstrim
Si vous ne voyez aucune erreur, votre travail cron devrait bien fonctionner.
TRIM automatique (obsolète, lent)
Le TRIM automatique est pris en charge depuis Ubuntu 10.10 (noyau 2.6.33) avec le système de fichiers EXT4. Cependant, l'envoi de commandes TRIM au SSD en temps réel - après chaque suppression - a été reconnu comme rendant la suppression beaucoup plus lente que d'habitude sur certains lecteurs. Par conséquent, une TRIM programmée hebdomadairement via un travail cron (décrit ci-dessus) est recommandée.
Pour activer TRIM automatique sur un lecteur ou une partition, vous devez les monter avec l’ discard
option in fstab
. Commencez par sauvegarder votre fstab puis ouvrez-le pour le modifier:
sudo cp /etc/fstab ~/fstab-backup
gksudo gedit /etc/fstab
Ajoutez discard
à l'entrée d'options fstab (séparée par des virgules) le lecteur SSD ou chaque partition.
UUID=00000000-0000-0000-0000-000000000000 / ext4 discard,errors=remount-ro 0 1
Fermez et enregistrez fstab, puis redémarrez et TRIM automatique devrait maintenant fonctionner.
Test de TRIM automatique
Pour tester si TRIM fonctionne, exécutez les commandes suivantes ( source ):
cd / # Replace with SSD file system
sudo dd if=/dev/urandom of=tempfile count=100 bs=512k oflag=direct
sudo hdparm --fibmap tempfile
A partir de la sortie copier le numéro sous begin_LBA
et vérifier le nom du périphérique de votre SSD: System->Administration->Disk Utility
par exemple sda, sdb, sdc ...
Exécutez ce qui suit mais remplacez [ADDRESS]
(begin_LBA) et sdX
(nom du périphérique SSD) par les détails obtenus ci-dessus.
sudo hdparm --read-sector [ADDRESS] /dev/sdX
la sortie devrait être une longue chaîne de caractères pour ces secteurs
sudo rm tempfile
sync
Répétez la hdparm
commande ci-dessus:
sudo hdparm --read-sector [ADDRESS] /dev/sdX
Si vous n'obtenez que des zéros, alors TRIM automatique fonctionne. Toutefois, si après la suppression du fichier, les secteurs ne sont toujours pas vides, attendez un moment et relancez la commande.