Comment optimiser le système d'exploitation des disques SSD?

143

Quelles mesures devraient être prises avant / pendant / après l'installation d'Ubuntu sur un disque SSD pour optimiser les performances et garantir une durabilité maximale du disque?

    
posée Lars Haugseth 06.08.2010 - 16:03
la source

13 réponses

106

J'ai utilisé avec succès plusieurs techniques différentes pour améliorer la manière dont Ubuntu utilise le périphérique de stockage, qu'il s'agisse d'un disque SSD ou d'un lecteur traditionnel.

Pour les disques SSD, vous cherchez à réduire le nombre de fois que le disque est également écrit, car les lectures ne doivent pas entraîner d’usure sur le disque.

1) Gérer le fichier d'échange

Si vous ne hibernez pas votre ordinateur et que vous disposez d’une mémoire vive suffisante pour exécuter toutes vos applications, vous n’avez donc pas besoin en théorie d’une partition de swap.

Si vous avez un mélange de SSD et de disques durs, placez votre partition de swap uniquement sur les disques durs.

2) Pas d’écriture pour les horodatages de lecture (adapté aux disques durs et SSD)

Le montage de vos partitions avec les options noatime et nodiratime arrête les écritures d’horodatage lorsque vous lisez des fichiers et des dossiers. Ces écritures d'horodatage ne sont généralement pas requises, sauf si vous utilisez un client de serveur de messagerie local tel que mutt. La raison pour laquelle cela est généralement une mauvaise idée est que chaque lecture produira une écriture lors de la mise à jour des horodatages. Cela diminue la durée de vie du disque SSD.

Modifiez votre fichier de configuration / etc / fstab (effectuez une sauvegarde avec soin pour vous assurer que la rupture de votre configuration fstab peut empêcher votre système de fonctionner):

cp /etc/fstab ~/fstab-backup
gksudo gedit /etc/fstab

Modifiez les options de montage de vos partitions en ajoutant le texte noatime et nodiratime aux lignes définissant votre racine (/) et les autres partitions si vous en avez (/ home) - Remarque: si vous avez une partition / home , commencez par changer simplement cette partition si vous craignez de casser quelque chose

# / was on /dev/sda2 during installation
UUID=587e0dc5-2db1-4cd9-9792-a5459a7bcfd2 /               ext4    noatime,nodiratime,errors=remount-ro 0       1

# /home was on /dev/sda3 during installation
UUID=2c919dc4-24de-474f-8da0-14c7e1240ab8 /home           ext4    noatime,nodiratime,defaults        0       2

Vous devrez redémarrer votre ordinateur avant que ces modifications ne prennent effet

3) Réduction des écritures du système d'exploitation et des applications

En supposant que vous n’exécutiez pas un serveur de produit critique, la plupart des utilisateurs ne consultent pas les journaux en cas de problème (d’autant que les erreurs graves sont rares pour la plupart des utilisateurs d’Ubuntu). Par conséquent, vous pouvez configurer Ubuntu pour que tous les journaux soient écrits sur la mémoire RAM plutôt que sur le disque SSD.

Remarque: apportez uniquement les modifications suivantes lorsque vous avez installé tous les logiciels que vous allez utiliser (en particulier des choses comme le serveur Web Apache), sinon vous risquez de rencontrer des problèmes avec des répertoires manquants dans / var / log

Pour en savoir plus sur cette approche, consultez prolongeant la durée de vie de votre lecteur flash sur Ubuntu- eee.com

Ouvrir / etc / fstab avec un éditeur (en supposant que vous avez sauvegardé le fichier / etc / fstab)

gksudo gedit /etc/fstab

Ajoutez les lignes suivantes à la fin du fichier fstab et enregistrez:

# Uncomment these after all server based applications installed - eg. apache
#tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
#tmpfs /var/tmp tmpfs defaults,noatime,mode=1777 0 0
#tmpfs /var/log tmpfs defaults,noatime,mode=0755 0 0 
#tmpfs /var/log/apt tmpfs defaults,noatime 0 0
# none /var/cache unionfs dirs=/tmp:/var/cache=ro 0 0

Vous devrez redémarrer votre ordinateur avant que ces modifications ne prennent effet

Voir aussi:

réponse donnée jr0cket 08.08.2010 - 15:09
la source
90

SSD Life

En général, je ne me dérangerais pas - les soucis concernant la vie des SSD sont exagérés. Vous pouvez lire cet article détaillé expliquant pourquoi vous ne devriez vraiment pas vous inquiéter . En bref, les circuits à l’intérieur des SSD modernes gèrent le niveau d’usure pour vous, et ils savent comment le faire mieux que vous.

Dans cet article, vous trouverez un calcul de la durée de vie d’un disque SSD qui reçoit des écritures à un débit continu de 80 M / s. La vie est 51 ans . Cela est basé sur la technologie de 2007 - la vie des disques SSD sera plus longue maintenant. Et vous n'allez certainement pas écrire sur votre SSD à 80M / s 24 heures sur 24.

Performance SSD

Toutefois, la dégradation des performances au fil du temps peut poser problème et la solution est TRIM . Il y a deux options

  • TRIM automatique / en ligne, alias discard
  • manuel TRIM

Vous devez activer vous-même TRIM automatique . (Fondamentalement, vous ajoutez l'option discard à vos options de montage, à condition que vous utilisiez ext4.) J'ai trouvé un article de blog indiquant que l'option de suppression ralentit votre système lors de la suppression de fichiers .

Vous pouvez parfois le faire manuellement (ou dans une tâche cron) à l’aide de fstrim . Si vous avez juste une partition, il vous suffit de:

sudo fstrim /

Notez que fstrim est uniquement disponible en 11.10 et plus récent. Pour les systèmes plus anciens, vous aurez besoin du script wiper.sh . J'ai trouvé le script à /usr/share/doc/hdparm/contrib/wiper.sh.gz sur mon système.

Si vous vous posez la question, le problème résolu par TRIM, comme décrit par Wikipedia , est le suivant:

  

Les disques SSD stockent des données dans des cellules de mémoire flash regroupées en pages, les pages (généralement 4 Ko chacune) regroupées en blocs (généralement 128 pages par bloc, pour un total de 512 Ko). Les cellules de mémoire flash NAND ne peuvent être écrites directement que lorsqu'elles sont vides. S'ils sont considérés comme contenant des données, le contenu doit d'abord être effacé avant qu'une opération d'écriture puisse être effectuée de manière fiable. Dans les disques SSD, une opération d'écriture peut être effectuée au niveau de la page, mais en raison des limitations matérielles, les commandes d'effacement affectent toujours des blocs entiers. En conséquence, écrire des données sur un support SSD est très rapide tant que des pages vides peuvent être utilisées, mais ralentit considérablement une fois que les pages écrites doivent être écrasées . Comme un effacement des cellules de la page est nécessaire avant de pouvoir être réécrit, mais que seuls des blocs entiers peuvent être effacés, un remplacement lancera un cycle de lecture-effacement-modification-écriture: le contenu du bloc entier a pour être stocké dans le cache avant son effacement effectif sur le support flash, la page écrasée est modifiée dans le cache afin que le bloc mis en cache soit à jour et que le bloc entier (avec la page mise à jour) soit écrit sur le support flash Ce phénomène est appelé amplification en écriture.

    
réponse donnée Hamish Downer 08.08.2010 - 21:03
la source
20

Il y a plusieurs points:

Alignement:

Ce qui est souvent signalé est le bon alignement de la partition. Cela devrait être égal à la taille de bloc du SSD. Jouez en toute sécurité et alignez vos partitions sur les limites de MiB. Notez que vous ne pouvez pas faire cela avec l'outil de partition du programme d'installation d'Ubuntu (qui utilise MB pas avec MiB), mais vous pouvez démarrer le CD en direct, utiliser Gparted (qui utilise MiB), puis cliquer sur Installer pour utiliser les partitions configurées. / p>

Le bon planificateur:

Un point important est le planificateur qui devrait être noop . Vous pouvez définir ce planificateur via kernelparameter elevator=noop ou via une entrée echo noop > /sys/block/sda/queue/scheduler dans rc.local.

Indicateurs de montage:

Je recommanderais noatime et discard

Tmpfs

Mettre tmp sur un disque virtuel peut augmenter la durée de vie du SSD. Pour l'utiliser, placez la ligne suivante dans votre fstab: none /tmp tmpfs defaults 0 0

En général, si vous voulez approfondir ce sujet, je vous recommande cet excellent article wiki.

    
réponse donnée Sebastian Rühl 03.02.2011 - 22:28
la source
16

Cours de réglage rapide pour votre SSD sur Ubuntu:

Système de fichiers

Arch wiki mentionne quelques options préférables pour le système de fichiers SSD - l'un d'eux est instable, d'autres sont ext * ceux. Je suppose que ext4 est l'un des meilleurs choix.
Remarque: Dans le cas de ext4 , vous pouvez utiliser l’option discard mount.

fstab

# <file system> <mount point> <type> <options>                                  <dump>  <pass>
proc            /proc         proc   nodev,noexec,nosuid                        0       0
tmpfs           /tmp          tmpfs  nodev,nosuid,noatime,mode=1777             0       0
/dev/sda1       /             ext4   defaults,noatime,discard,errors=remount-ro 0       1
/dev/sda2       /home         ext4   defaults,noatime,discard,user_xattr        0       2
/dev/sda3       /windows      ntfs   defaults,noatime,discard,umask=007,gid=46  0       0

Peu de choses importantes sont ici:

  • Pour les systèmes avec & gt; = 2 Go de mémoire, localiser / tmp dans la RAM est souhaitable.
  • Aucune partition swap . De nos jours, il n'est nécessaire que pour l'hibernation, car les machines modernes ont assez de mémoire vive.
  • noatime et discard options. L'information est ici .

planificateur

Envisagez de passer du planificateur par défaut, qui sous la plupart des distributions Linux, est cfq (mise en file d'attente entièrement correcte) au planificateur Noop ou Date limite pour un SSD. L'utilisation du planificateur noop, par exemple, traite simplement les demandes dans l'ordre où elles sont reçues, sans tenir compte de l'emplacement physique des données sur le disque. Cette option est considérée comme avantageuse pour les disques SSD car les temps de recherche sont identiques pour tous les secteurs du disque SSD.

Ajouter les éléments suivants à /etc/rc.local :

# SSD performance tuning
echo noop > /sys/block/sda/queue/scheduler

info

un deux

    
réponse donnée Andrejs Cainikovs 09.12.2011 - 18:24
la source
8

4) activer le TRIM automatique

Si votre SSD le prend en charge, vous devez également activer le TRIM automatique (comme décrit dans ici )

    
réponse donnée Uli 31.12.2010 - 00:37
la source
3

Je n’ajouterais pas cette ligne à votre fichier fstab, le dossier var / tmp est destiné à survivre aux redémarrages et cela pourrait causer des problèmes pour vous.

tmpfs /var/tmp tmpfs defaults,noatime,mode=1777 0 0

Lorsque je configure le nouveau système, je laisse tout le dossier tmp commenté de cette façon si quelque chose arrive, je peux vérifier les journaux et autres. Ensuite, une fois que je dispose de la configuration principale du système, je vais les supprimer, mais je n’ajoute jamais la ligne ci-dessus, voici ce que j’utilise:

tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/log tmpfs defaults,noatime,mode=0755 0 0 
tmpfs /var/log/apt tmpfs defaults,noatime 0 0

Et si je rencontre des problèmes avec mon système, je les commente pour pouvoir tout vérifier, même après un redémarrage ou un redémarrage forcé après un blocage.

Aussi, vous n'avez pas besoin de nodiratime, l'option noatime prend en charge les deux par lui-même.

En ce qui concerne TRIM, si votre hw / sw le supporte, c’est un must, je n’utilise pas la fonction de suppression dans fstab. Je crée un cron quotidien, car mon PC est toujours allumé en procédant ainsi:

gksu gedit /etc/cron.daily/trim

Puis ajoutez ceci au fichier et sauvegardez (si vous n'avez pas de partition séparée / home sur ssd, ou si vous avez d'autres parties sur SSD, vous devriez avoir l'idée de modifier ceci:

#!/bin/sh
LOG=/var/log/trim.log
echo "*** $(date -R) ***" >> $LOG
fstrim -v / >> $LOG
fstrim -v /home >> $LOG

Ensuite, rendez le fichier exécutable par:

sudo chmod +x /etc/cron.daily/trim

Je modifie aussi mon fichier rc.local comme suit:

gksu gedit /etc/rc.local

Ajoutez ceci ci-dessus "exit 0" et en dessous du dernier #:

# Modification for SSD
# you may want to add more folders to be checked/created to this list
for dir in apparmor apt ConsoleKit cups dist-upgrade fsck gdm installer news ntpstats samba speech-dispatcher unattended-upgrades; do
  if [ ! -e /var/log/$dir ] ; then
    mkdir /var/log/$dir
  fi
done

Vous pouvez copier et coller à partir d’ici pour qu’il n’y ait pas d’erreurs, pour le profane, il semble hors de question, ce n’est pas le cas.

J'ai également lu que laisser 10% de votre disque SSD non formaté peut aider à prolonger la durée de vie, ce qui reste à voir. Je n'ai pas beaucoup lu cela pour que je ne puisse pas garantir si cela est logique.

Il s’agit du meilleur guide complet, il n’a pas parcouru Google pendant un jour et a ensuite élaboré un guide, vous devriez le consulter ICI

    
réponse donnée JohnRB 29.07.2013 - 00:53
la source
3

TRIM permet à un système d'exploitation d'informer un SSD des blocs de données qui ne sont plus considérés comme pouvant être utilisés et qui peuvent être effacés en interne. L'ajustement permet au SSD de gérer la surcharge de la récupération de place, ce qui ralentirait de manière significative les futures opérations d'écriture sur les blocs concernés. 1

Dans Ubuntu 14.04, une nouvelle fonctionnalité a été ajoutée au paquet util-linux qui coupe automatiquement les SSD, mais seuls les SSD Intel et Samsung ont le TRIM activé par défaut, car certains SSD bon marché peuvent même eux-mêmes lors de l'exécution de TRIM. 2 Le contenu de /etc/cron.weekly/fstrim dans Ubuntu 14.04:

#!/bin/sh
# call fstrim-all to trim all mounted file systems which support it
set -e

# This only runs on Intel and Samsung SSDs by default, as some SSDs with faulty
# firmware may encounter data loss problems when running fstrim under high I/O
# load (e. g.  https://launchpad.net/bugs/1259829). You can append the
# --no-model-check option here to disable the vendor check and run fstrim on
# all SSD drives.
exec fstrim-all

1 lien
2 Comment Trim est-il activé?

    
réponse donnée karel 25.12.2013 - 02:52
la source
2

Il est clair que /var/tmp ne doit pas se trouver dans tmpfs car, par définition, son contenu doit être conservé au-delà des redémarrages:

  • Différences entre TMP et VarTMP
réponse donnée user95602 09.10.2012 - 18:12
la source
2

Ok "longue histoire courte":

  1. Oui. C'est comme un disque dur normal. Ici est un bon aperçu.
  2. Quelques bonus spéciaux que je vais couvrir.
  3. Assez bien. Je l'utilise avec un serveur.

Formatez-la en ext4 pendant l'installation et créez un petit échange ~ 1 Go. Après l'installation, éditez fstab avec sudo gedit /etc/fstab et ajoutez la ligne suivante

tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0

Cela créera un disque virtuel pour vos fichiers temporaires, ce qui réduira le vieillissement. Ajoutez également noatime,nodiratime,discard à votre ligne ext4 après les valeurs par défaut. Cela permettra également de réduire l'usure et d'activer la fonction TRIM. Enregistrez et redémarrez.

    
réponse donnée gajdipajti 24.04.2012 - 00:06
la source
2

Il y a de bonnes infos Comment modifier et optimiser SSD pour Ubuntu, Linux Mint à partir de lien pourrait vous intéresser

Utiliser le préchargement

Pour installer le préchargement sur les distributions Ubuntu, Linux Mint ou Debian

# apt-get update && apt-get install preload

Désactivez votre échange

Pour modifier le paramètre de permutation:

$ su -
# nano /etc/sysctl.conf

Et ajoutez cette ligne dans le fichier sysctl.conf.

vm.swappiness = 10
    
réponse donnée Sue Russell 09.11.2013 - 19:58
la source
2

UPS est requis.Dans le fichier /etc/sysctl.conf

vm.dirty_writeback_centisecs = 15000
vm.swappiness = 10

Recherchez le démon du fichier de configuration, généralement /etc/syslog.conf или /etc/rsyslog.d/ et tous les chemins de la forme /var/log/ changent en écrivant un signe moins ("-") avant. mail.err

/var/log/mail.err

Après
mail.err -/var/log/mail.err

utilisez FS btrfs et utilisez l’option -o ssd

Plus lien

    
réponse donnée Василий Алексеенко 12.05.2012 - 13:08
la source
1

Comment modifier et optimiser SSD pour Ubuntu, Linux Mint

Activer TRIM

TRIM (la commande Trim permet à un système d'exploitation de savoir quels blocs SSD ne sont pas utilisés et peuvent être effacés)

Sauvegardez d'abord fstab en cas de problème.

# cp /etc/fstab ~/fstab.bk

Modifier le fichier fstab

# nano /etc/fstab

Ajoutez la suppression à vos disques ou partitions SSD, après ext4

UUID=bef10b86-494d-41c6-aa46-af72cfba90fd / ext4 discard,errors=remount-ro 0 1
Adding noatime and nodiratime

noatime et nodiratime sont des options de montage dans linux pour le système de fichiers Linux. noatime désactive les mises à jour sur le système de fichiers et nodiratime désactive les mises à jour sur le système de répertoires. En ajoutant noatime et nodiratime, vous réduirez considérablement la charge de votre SSD.

Modifier le fichier fstab

# nano /etc/fstab

Ajoutez noatime, nodiratime à vos disques ou partitions SSD, après ext4

UUID=bef10b86-494d-41c6-aa46-af72cfba90fd / ext4 discard,noatime,nodiratime,errors=remount-ro 0 1
    
réponse donnée user223973 24.12.2013 - 23:44
la source
0

Je suggère de ne placer que les éléments lus au moment du démarrage sur le disque SSD, les applications nécessitant beaucoup de temps à charger. Données et journaux et autres éléments non critiques que je trouverais sur un disque dur normal. charger uniquement un grand initramfs à partir de SSD au démarrage et ne pas réécrire les modifications apportées à ssd. Cela présente l'avantage que les modifications apportées à cette partition ne sont pas persistantes, comme une protection de votre système de démarrage. bien sûr.

Je voudrais par exemple placer les partitions /, / etc, / usr, / boot, / lib 32/64 sur SSD alors que sth comme

/ opt, / bin, / sbin, / root, / home et même swap (augmentation de la RAM !!!) sur le disque dur

Wikipedia dit:

  

Le noyau Linux prend en charge la fonction TRIM à partir de la version 2.6.33. Le système de fichiers ext4 est pris en charge lorsqu'il est monté avec le paramètre "Discard". Les utilitaires de disque les plus récents (et donc les logiciels d’installation qui les utilisent) appliquent également un alignement de partition approprié.

Pour les sauvegardes, il existe de nombreuses manières, dont la plus simple est la synchronisation (r) et la tâche cron.

    
réponse donnée Michael K 09.12.2011 - 17:26
la source

Lire d'autres questions sur les étiquettes