Quelques recommandations pour une installation adaptée/pérenne sur un disque SSD1).
S'assurer que le TRIM s'execute régulierement (lors du démarrage, lors de chaque arret) en ajoutant la commande fstrim dans le fichier /etc/rc.local
La variable swappiness permet d'influencer la manière dont le système va utiliser la zone de swap. Sa valeur peut être définie entre 1-100. Plus la valeur est faible, plus le système privilégiera la RAM même pour faire face à une forte charge avant d'utiliser la mémoire virtuelle sur SSD.
Pour afficher la valeur swappiness:
cat /proc/sys/vm/swappiness
Pour baisser la valeur par défaut de swappiness, modifier sa valeur dans un fichier de conf sous /etc/sysctl.d. Ici on crée un nouveau fichier /etc/sysctl.d/60-custom-vm.conf:
vm.swappiness = 1
On recharge les fichiers de conf via la commande:
$ sudo procps start
Sur les systèmes utilisant systemd, on invoque la commande “systemd-sysctl” :
/usr/lib/systemd/systemd-sysctl
Le processus d'hibernation génère énormément d’écritures dans la zone de swap, il vaut mieux ne pas l'utiliser et s'assurer qu'elle est désactivée (c'est le cas par défaut sur Ubuntu).
Pour réduire encore les écritures sur le SSD il est possible de déplacer les fichiers temporaires et les logs en mémoire RAM.
Modifier le fichier /etc/fstab
tmpfs /var/log tmpfs defaults,noatime 0 0 tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
Sur les distributions utilisant systemd pour que le système prenne en compte les modifications apportées au fichier /etc/fstab
invoquer :
systemctl daemon-reload mount -a
Remarque: Comme toute l'arborescence sous /var/log disparaît après chaque redémarrage, certaines applications peuvent être perturbées. Dans ce cas, recréer l’arborescence nécessaire lors du démarrage via le script /etc/rc.local
On liste les dossiers existant sous /var/log:
$ cd /var/log $ find . -type d -print
On recrée chaque dossier par appel d'un script lors du démarrage du système:
# # Modification for SSD for dir in apparmor apt cups dist-upgrade fsck gdm installer samba unattended-upgrades ; do if [ ! -e /var/log/$dir ] ; then mkdir /var/log/$dir fi done