Outils pour utilisateurs

Outils du site


mint_customization_19

Checklist installation de Linux Mint 19 Mate

Cette page est obsolète. Voir la nouvelle page.

Introduction

Cette page contient:

  • Des manipulations que j'ai effectuées pour l'installation et la customisation de Linux sur mon ordinateur portable.
  • Diverses astuces et conseils généraux pour Linux.

Les buts pour moi sont:

  • Avoir tout les logiciels dont j'ai besoin pour travailler et me distraire.
  • Confort d'utilisation et confort visuel.
  • Sécurité.

Ce sont des choix de configuration tout à fait personnels, mais cela pourra peut-être rendre service à d'autres. C'est pour cela que je le publie.
Ces manipulations sont destinées à un public averti (Ne commencez pas si la ligne de commande vous effraie).

J'utilise un Linux Mint 19 MATE 64 bits installé sur un Asus P2 520LA-XO0456T. Certaines manipulations peuvent être spécifiques à LinuxMint, Ubuntu, Debian ou la machine elle-même.

Pourquoi Linux Mint ?

Je ne veux pas troller, mais voici mes raisons:
Pourquoi Linux Mint et pas une autre distribution ?

  • Parce que je veux une distribution qui « juste marche »: ça s'installe vite et il y a tout ce qu'il faut.
  • Parce que je n'ai pas à me soucier de l'installation d'éventuels pilotes propriétaires, c'est inclus.
  • Une remarquable stabilité lors des mises à jour.
  • Parce que j'ai l'environnement de bureau MATE, efficace. Et c'est un terrain connu. (Pas la dernière lubie d'un éditeur qui veut "révolutionner" le bureau.)
  • Derrière c'est du Debian et c'est solide, avec les outils correspondants (packaging, etc.), mais avec les dépôts Ubuntu/Mint (logiciels plus récents).
  • Si j'ai besoin de versions cutting-edge de certains logiciels ou de logiciels non présents dans les dépôts, je peux facilement ajouter des PPA (LaunchPad) ou des flatpak.
  • Bref… Je peux facilement adapter le système et il sait se faire oublier. C'est ce que je demande à un OS.

Linux Mint est un système qui reste relativement peu gourmand. Vous pouvez l'utiliser avec 2 Go de RAM et 30 Go de disque dur. C'est utile pour recycler d'anciens ordinateurs.

Téléchargement

Variantes disponibles

Il existe plusieurs "variantes" de Linux Mint (voir la page de téléchargement).

  • versions 32 bits ou 64 bits.
  • environnement de bureau Cinnamon, MATE ou XFCE.

La plupart des processeurs étant 64 bits, il paraît raisonnable de prendre la version 64 bits.

La version 64 bits peut booter BIOS et UEFI. La version 32 bits ne peut booter que BIOS.

Quant à l'environnement de bureau, c'est principalement une question de goûts. Ceci dit, certains environnement exigent un processeur plus puissant. Dans l'ordre (plus gourmand au moins gourmand): Cinnamon, MATE, XFCE. J'ai une préférence pour MATE (terrain connu) et ne nécessitant pas de machine puissante.

Mon choix se porte donc sur la version MATE 64 bits.

Télécharger l'ISO

La page de téléchargement est . Préférez la solution torrent pour télécharger l'ISO. Cela évite de surcharger leurs serveurs et les miroirs.

Vérifiez toujours l'ISO après téléchargement:

  • Calculez la checksum du fichier ISO que vous avez téléchargé:
    > sha256sum linuxmint-19-mate-64bit.iso
    a5f9893d2960eaea1a4d35a86c1d2a627a2a8ee3e578f01514ab75c8ef323a8d *linuxmint-19-mate-64bit.iso
  • Dans cette page, allez dans le sous-répertoire correspondant à la version de Mint que vous avez téléchargée (/17.3, /18, /18.1, etc.) et ouvrez le fichier sha256sum.txt (par exemple ici pour Linux Mint 19)
  • La checksum du fichier mentionnée dans ce fichier doit être identique à celle que vous avez calculée.
  • N'installez jamais Linux si la checksum est différente. (L'avantage du téléchargement par torrent est justement que tous les clients Torrent vérifient automatiquement la checksum des ISO téléchargées.)

Une fois l'ISO téléchargée, vous pouvez:

Partitionnement

Depuis que j'ai écrit cette page, j'ai changé de méthode de partitionnement. Je suis passé à btrfs à la place d'ext4 pour faire des choses plus avancées. Voir la page dédiée. Ceci dit, un partitionnement comme ci-dessous en ext4 reste un excellent choix.

Avant installation du système, partitionnement du disque:

Note importante à propos de BIOS/MBR et UEFI/GPT

Note importante à propos de BIOS/MBR et UEFI/GPT

:!: Attention : La plupart des machines n'utilisent plus le système du MBR pour booter : Au lieu que ce soit le BIOS qui recherche le MBR pour booter dessus, c'est l'UEFI qui recherche une partition EFI (en FAT32) contenant les logiciels amorce des différents OS. Donc:

  • Il ne faut jamais supprimer les partitions EFI (ce sont de petites partitions FAT32 de 50 Mo à 300 Mo ayant le flag boot), sous peine de vous retrouver avec un ordinateur qui ne démarre plus (d'autant que certaines machines récente ne semblent plus du tout capables de booter en mode MBR).
  • Si SecureBoot est activé, la machine n'acceptera de booter que sur des logiciels amorce signés. Pour la plupart des distributions Linux, il faut désactiver SecureBoot.
  • L'option FastBoot peut poser problème, surtout si vous êtes en dual-boot où elle peut provoquer des corruptions de données dans les partitions NTFS. Désactivez-la.
  • Si vous voulez partitionner à la main:
    • gparted supporte sans problème GPT(UEFI), mais ce n'est pas le cas de tous les outils Linux. Faites attention !
    • Pensez à garder une partition EFI. Vous pouvez également la créer vous-même avant de lancer l'installation de Mint: Ce doit être une partition primaire en FAT32, portant le nom EFI et ayant le flag boot. Pour la taille, prévoyez 200 Mo, c'est largement suffisant.
    • (Vu sur un portable HP) Il arrive que gparted ne propose pas tous les disques dans son menu. Dans ce cas, lancez sudo fdisk -l (ou sudo parted -l) pour voir les /dev contenant vos disques, puis lancez gparted sur le disque en question: gparted /dev/nvme0n1
    • Pour voir tous vos disques, vous pouvez utiliser la commande lsblk.
  • Si vous voulez laisser faire l'installeur de Mint:
    • Si vous choisissez l'option Effacer tout le disque, l'installeur vous proposera automatiquement de re-créer une partition EFI viable. Vous pouvez donc choisir cette option sans risque si vous ne voulez pas partitionner à la main.


Mon choix de partitionnement:

Type de partition Nom Taille Utilisation Notes
FAT32 primaire EFI 230 Mo Démarrage Ne pas toucher. Cette partition doit avoir le flag boot.
ext4 primaire SYSTEM 80 Go Système (Monté sur /) J'ai vu large. 40 Go peuvent suffire.
ext4 primaire HOME le reste Données (Monté sur /home)

Le fait d'avoir mon /home séparé me permet de faire une réinstallation complète du système (ou même de changer de distribution) avec le moins de douleur possible (je garde ainsi tous mes fichiers perso et réglages d'applications).

Vous remarquerez que je n'ai pas de partition swap. C'est voulu. Dans cette page sont listées deux astuces qui - combinées - font qu'il n'y a pratiquement jamais d'utilisation du swap. J'ai donc décidé de le désactiver.

Note: Le fait de ne plus avoir de partition de swap empêche l'hibernation (suspend-to-disk). Mais c'est une fonctionnalité qui ne m'intéresse pas.

Conseil: Si votre machine a plus de 4 Go de RAM, vous pouvez probablement vous passer d'une partition swap.


Migration depuis d'anciennes version

Je préfère ne pas utiliser le système de migration interne de Mint, et procéder à une ré-installation complète. Cela permet de mettre à zéro des bidouilles que j'aurais effectué pour un système particulier, et qui ne sont plus forcément nécessaires pour la nouvelle version.

Quand une nouvelle version de Mint sort, je choisis donc une réinstallation complète depuis une clé USB. Cela n'est pas très long, car j'ai pris la précaution d'avoir ma partition /home séparée de celle du système. A la fin de l'installation, j'ai donc un système immédiatement opérationnel, avec tous mes fichiers et réglages conservés (raccourcis clavier, fond d'écran, plugins et marques-page Firefox…). C'est tout l'intérêt d'avoir une partition séparée pour /home, et je vous le recommande chaudement.

Cela simplifie grandement les changements de système d'exploitation ou les ré-installation. Même en repartant de zéro (ré-installation complète du système d'exploitation), il ne faut que quelques minutes pour retrouver un système opérationnel.

Voici ce que j'ai dû faire après ré-installation:

  • Changer de thème pour l'apparence des fenêtres (l'ancien thème n'existant plus).
  • Ré-installer les applications (j'ai simplement repris la ligne sudo apt install … que j'avais précédemment notée)
  • Ré-installer les logiciels hors dépôts (XNView par exemple)

Installation

  • Avant installation, désactivez SecureBoot et FastBoot dans l'UEFI.
  • Insérez le DVD de Linux (ou la clé USB), maintenez ESC enfoncé au démarrage et dans les options de démarrage il devrait vous proposer de démarrer sur le DVD (SlimDVD…) ou la clé USB. Notez que si vous voulez vous faire une clé USB Linux bootable pour installation, je vous recommande d'utiliser UNetBootin. Instructions dans cette page.
  • Conseils:
    • Lors de l'installation, coupez la connexion internet. Pour une raison que j'ignore, si vous êtes en UEFI, l'installation de grub dans Linux Mint 19 échouera si vous êtes connecté à internet.
    • Lors de l'installation, pensez à cocher la case pour installer les pilotes et codecs propriétaires:

Mises à jour

Après installation et activation du réseau, le système vous proposera de faire des mises à jour.

Après validation de cet écran, il va vous proposer d'activer Timeshift, ce qui est une bonne idée. Cela va créer une copie historisée des fichiers système, pratique pour revenir en arrière cas de problème (suite à des bidouilles ou des mises à jour). Notez que cela sauvegarde le système, mais pas vos fichiers perso (/home).

Pour la configuration de Timeshift:

  • Type d'instantanné: RSYNC
  • Vous pouvez faire la sauvegarde vers le disque de votre choix. Perso, je le fais sur la partition système elle-même (/).
  • Je garde: Hebdomadaire:4, Quotidienne:5.
  • Validez le tout dans Timeshift.

Revenez aux mises à jour, et cliquez sur le bouton "Actualiser" afin d'aller chercher la liste des mises à jour. Il va vous suggérer d'utiliser un miroir dépôt local, ce que je désactive:

  • Menu Édition > Préférences
    • Onglet "Options":
      • Cocher "Ne pas suggérer l'utilisation de dépôts locaux"
        • Raison: J'ai eu trop de problèmes avec des dépôts locaux qui n'étaient pas à jour. Ça suffit.
    • Onglet "Actualisation automatique":
      • D'abord… : Mettre 15 minute. (Je ne veux pas être embêté au démarrage avec les mises à jour)
      • Ensuite… : Mettre 1 jour (pas besoin de vérifier toutes les 2 heures, c'est excessif)
  • Cliquer sur le bouton "Appliquer".
  • Cliquez sur le bouton "Installer les mises à jour".
  • Note: il est possible que dans un premier temps, le gestionnaire de mise à jour ne vous propose qu'une ou deux mises à jour (dont MintUpdate), et après l'installation de celle-ci, vous en proposera d'autres. C'est normal: Mint a souvent ce mode de fonctionnement.
  • Support des langues : Si vous n'étiez pas connecté à internet lors de l'installation: Installer toutes les traductions manquantes: Centre de contrôle > Langues > Installer/supprimer des langues…, sélectionner French, France UTF-8. S'il n'est pas marqué «Entièrement installé», bouton Installer les paquets de langues. Une fois installé, cliquez sur Fermer puis Appliquer à tout le système.
  • Pilotes propriétaires : Il est possible que des pilotes propriétaires spécifiques à votre machine soient disponibles. Ils offrent dans certains cas de meilleures performances.
    • Allez dans Menu > Centre de contrôle > Gestionnaire de pilotes

Sécurisation

  • Le firewall ufw (et son interface graphique gufw) sont installés par défaut, mais pas activés. Activons-le:
    sudo ufw enable
    • Bien sûr, si vous utilisez des applications spécifiques (BitTorrent, serveur Minecraft, etc.) il vous faudra ouvrir des ports. gufw est une interface graphique assez simple (Menu > Préférences > Configuration du pare-feu)
  • Protéger Grub par mot de passe
    • Par défaut Grub est accessible en pressant ESC ou ⇧ Shift au moment du démarrage. N'importe qui peut démarrer en mode récupération. Nous allons protéger à la fois l'édition des menus Grub (touche E) et l'accès à certains menus (y compris ceux de récupération).
    • Générez un mot de passe grub: grub-mkpasswd-pbkdf2. Entrez deux fois un mot de passe et récupérez le texte (grub.pbkdf2.sha512.10000.E87FA7E3D21…)
    • Ensuite ajoutez à la fin du fichier /etc/grub.d/40_custom :
      set superusers="adm"
      password_pbkdf2 adm grub.pbkdf2.sha512.10000.E87FA7E3D21...

      Votre login grub sera 'adm' avec le mot de passe que vous avez défini.

    • Sauvegardez et lancez: sudo update-grub
    • Pour laisser la première option du menu Grub (boot par défaut) accessible sans mot de passe, il faut ajouter l'option –unrestricted à la première ligne menuentry:
      sudo mv /boot/grub/grub.cfg /boot/grub/grub.cfg.old
      sudo bash -c "sed '0,/--class ubuntu/s//--unrestricted --class ubuntu/' /boot/grub/grub.cfg.old > /boot/grub/grub.cfg"
    • PS: Selon votre version de Mint, le –class ubuntu est à remplacer par –class linuxmint (dans les versions de Mint plus récentes)
    • :!: grub.cfg étant écrasé par la commande update-grub (et donc à chaque mise à jour du paquet grub ou du noyau), il faudra relancer les deux commandes précédentes.

Ainsi:

  • La machine démarre normalement sur la première option de grub (démarrage du système) pour arriver sur l'écran de login utilisateur.
  • Toute autre action (sélection d'une autre option du menu grub ou édition d'une option de menu) exigera le login/mot de passe.


Apparence/comportement

J'aime les thèmes sombres car ils sont plus reposants pour les yeux (moins de luminosité). Avec mes réglages, ça donne ceci:

  • Thèmes:
    • Ajout de thèmes supplémentaires (fenêtres et icônes): sudo apt install mate-themes ubuntu-mate-themes community-themes
    • Centre de contrôle > Apparence:
      • Onglet Thème : Mint-Y-Dark, bouton Personnaliser…
        • Bordures de fenêtres > Ambiant-MATE-Dark
        • Pointeur > MATE
    • Centre de contrôle > Notifications d'évènement: Thème "Curseur".
    • Centre de contrôle > Paramètres du bureau : Tout décocher. (Je n'aime pas avoir plein d'icône sur le bureau.)
  • Barre des tâches:
    • Clic-droit sur la barre des tâches:
      • Orientation: En haut
      • Taille : 31 pixels
  • Comportement du menu Mint:
    • Clic-droit sur le bouton de menu > Préférences:
      • Onglet Applications, décocher Survoler (je préfère cliquer).
      • Onglet Système, cocher Autoriser la barre de défilement et mettre en Hauteur : 700 (de manière à ce que le menu soit plus grand à l'écran).
  • Navigateur de fichiers (Caja):
    • Menu Editer > Préférences
      • Onglet Vues > Vue par défaut: Compacte
      • Onglet Supports:
        • cocher Ne jamais demander ou démarrer des programmes à l'insertion d'un support
        • décocher Parcourir les supports lors de leur insertion
    • Note: Dans Caja, pensez à presser F3 pour avoir deux panneaux.
  • NumLock activé sur l'écran de login:
    • sudo apt install numlockx
    • Centre de contrôle > Écran de connexion > Options, cocher Activer le verrouillage du pavé numérique.
  • Trackpad: Centre de contrôle > Souris > Pavé tactile:
    • Cocher Désactiver le pavé tactile lors de la frappe au clavier (pour éviter les "click" intempestifs quand vous frappez au clavier.)
    • Défilement: deux doigts (je préfère au défilement par le côté droit)
    • Cocher Activer le défilement naturel afin que quand vous faites glisser deux doigts vers le haut la page monte.
  • Installation de RedShift pour ne pas m'exploser les yeux:
    • sudo apt install redshift-gtk
    • Création du fichier de config: xed ~/.config/redshift.conf (pris de cette page) (Pensez à corriger latitude et longitude dans ce fichier):

redshift.conf

redshift.conf

redshift.conf
[redshift]
temp-day=4600
temp-night=3500
transition=1
gamma=0.8
location-provider=manual
adjustment-method=randr
 
[manual]
lat=36.7
lon=6.8
  • Lancer redshift-gtk & et sur l'icône de la barre de notif, faire clic-droit > Lancement automatique (RedShift sera lancé automatiquement au démarrage de la session et ira prendre en compte le fichier de config s'il est présent).
  • Fonds d'écran:
    • Mint est déjà fourni avec un bon paquet de très chouettes fonds d'écran, mais si ça ne suffit pas, faites:
      sudo apt install mint-backgrounds-* ubuntu-wallpapers-*
    • Une fois installés, allez dans Changer l'arrière-plan du bureau, bouton Ajouter… et sélectionnez les images présentes dans /usr/share/backgrounds/ (car tous les fonds d'écran installés ne sont pas tous automatiquement proposé quand vous changez le fond d'écran).
    • Et je me garde aussi ma petite collection personnelle.
  • Quelques bricoles que je ne détaille pas (ajout de widgets dans la barre système: déloguer/éteindre/moniteur CPU/mémoire, changement de raccourcis clavier (ex: Ctrl+ pour agrandir les fenêtres), etc.)

Réglages divers

  • Démarrage: Il faut savoir que le système attend que le réseau soit disponible avant d'afficher la fenêtre de connexion. Comme je n'utilise que des comptes locaux, c'est totalement inutile et une perte de temps pour moi. On peut désactiver cette attente, ce qui permet de gagner quelques secondes sur le démarrage du système: sudo systemctl disable NetworkManager-wait-online.service
  • Changement des DNS: Je n'utilise pas les DNS des grands FAI français car ils sont censurés. Clic-droit sur le gestionnaire de connexion réseau > Modification des connexions > choisir une connexion > Modifier… > onglet Paramètres IPv4 > choisir «Adresses automatique uniquement (DHCP)» puis dans les DNS, mettre, 9.9.9.9 1.1.1.1
  • Réduction de l'utilisation du swap (1):
    • Le paramètre système vm.swappiness indique la propension du système à commencer à swapper en fonction de l'occupation mémoire. Il est par défaut à 60, mais pour une machine desktop, il est plus judicieux de le descendre à 10.
    • En le mettant à 10%, le système attendra que 90% de la mémoire soit remplie avant de "sortir" des pages mémoire vers le disque. Cela réduit donc le swapping.
      • Pour voir la valeur actuelle: cat /proc/sys/vm/swappiness
      • Pour changer la valeur dans les paramètres système:
        sudo bash -c 'echo "vm.swappiness=10" >> /etc/sysctl.conf'
      • Pour prendre en compte ce paramètre, redémarrer ou faire sudo sysctl -p
  • Réduction de l'utilisation du swap (2):
    • zram fournit des segments de mémoire compressés sous forme de block-device qui peuvent être utilisé pour swapper en priorité sur le swap disque.
    • Dans la pratique, zram permet d'utiliser plus de mémoire avant que le système commence réellement à swapper sur disque.
      • Illustration: Sur ma machine qui a 4 Go de RAM, en lançant trois tonnes d'applications pour saturer la RAM, en me retrouvant avec 1,1 Go de swap utilisé, pas un seul octet n'a commencé à être écrit dans le swap disque. Le gain de performances est énorme.
    • Installation: sudo apt install zram-config
    • En principe, c'est directement actif (sans redémarrer). Vérifiez en tapant: cat /proc/swaps. Exemple:
      Filename				Type		Size	Used	Priority
      /dev/sda4                               partition	7166972	0	-2
      /dev/zram0                              partition	465804	277464	5
      /dev/zram1                              partition	465804	279844	5
      /dev/zram2                              partition	465804	279168	5
      /dev/zram3                              partition	465804	276544	5
    • Si vous n'avez pas les '/dev/zram*', redémarrez.
    • Pour voir l'utilisation des segments zram, tapez zramctl
    • Fonctionnement:
      • Les blocs mémoire compressés seront utilisés en priorité sur votre vraie partition de swap (ici: /dev/sda4).
      • S'il n'y a plus de place dans zram, votre swap disque commencera à être utilisé.
      • Si aucune donnée n'est stockée dans zram, il ne consomme pratiquement pas de mémoire. Il n'y a donc pas de pénalité à l'activer.
      • Il y a par défaut autant de zram que vous avez de cœurs dans votre CPU: Cela permet d'avoir de meilleures performance pour le swap en répartissant la compression sur les différents cœurs.
    • Gains:
      • Si vous avez un disque dur normal, votre CPU sera plus rapide à (dé)compresser les données que le disque à les lire/écrire. Vous êtes donc forcément gagnant.
      • Si vous avez un SSD, cela permet au système de swapper en évitant au maximum les écritures disque. Vous allongez donc la durée de vie de votre SSD.
    • Activez-le ! Vous avez juste à faire sudo apt install zram-config et zram s'occupe du reste.
  • Fichier de swap:
    • Avec les deux astuces précédentes, le swap disque est rarement utilisé (même sur une machine avec 4 Go de RAM !). J'ai donc choisi d'utiliser un fichier de swap au lieu d'une partition de swap. L'avantage est que si je change d'avis, je peux facilement changer la taille du swap sans avoir à toucher aux partitions.
    • sudo dd if=/dev/zero of=/swapfile bs=1024 count=4000000  # Création d'un fichier swap de 4 Go
      sudo chmod 0600 /swapfile
      sudo e4defrag -v /swapfile  # Défragmentation si besoin (peu probable)
      sudo mkswap /swapfile       # Préparation du swap
      sudo swapon /swapfile       # Activation
    • Puis ajouter une ligne dans /etc/fstab:
      /swapfile none swap sw 0 0
    • Si vous aviez une partition de swap, il faut commenter la ligne dans votre fstab. Vous pouvez ensuite booter sur la clé USB de LinuxMint pour supprimer votre partition de swap et agrandir les autres partitions (gparted est fourni).
    • Notez que la partition de swap est utilisée pour l'hibernation. Sans swap égale au moins à la taille de la mémoire vive, l'hibernation n'est plus possible.

Note à propos de la désactication du swap

Note à propos de la désactication du swap

  • Si vous avez désactivé votre partition de swap, l'hibernation ne sera plus possible. Cependant, le système cherchera quand même la partition de swap pour sortir d'hibernation, ce qui fait perdre du temps au démarrage. Donc:
  • Dans le fichier /etc/initramfs-tools/conf.d/resume:
    • Remplacez : RESUME=UUID=388a79ac-27b7-42f5-ac13-…
    • par: RESUME=none
    • puis faites: sudo update-initramfs -u
    • afin que le système n'essaie plus de trouver cette partition pour sortir d'hibernation.
  • Réduire les écritures disque (1) : /tmp en RAM seulement: Vous pouvez mettre le répertoire des fichiers temporaires /tmp en mémoire (oui, même si votre machine n'a que 4 Go de RAM ! N'hésitez pas).
    • Avantages:
      • Beaucoup plus rapide que sur disque.
      • Réduit les écritures disque (rallonge la durée de vie des SSD).
    • Notes:
      • Les données écrites dans /tmp seront perdues au redémarrage.
      • tmpfs ne consomme pas toute la RAM qu'on lui alloue, mais seulement les fichiers qu'il stock.
      • Si des applications réclament de la RAM, tmpfs écrira ses données dans le swap pour laisser la place aux applications.
        • Et donc si vous avez installé zram, cela compressera les données de tmpfs en RAM au lieu de les swapper vers le disque.
    • Mise en place: Ajoutez la ligne suivante dans /etc/fstab (taille à votre convenance):
      tmpfs /tmp tmpfs defaults,relatime,mode=1777,nosuid,size=8192M 0 0
    • Note: Il ne faut pas mettre /var/tmp en RAM de la même manière. Certaines applications pourraient ne pas fonctionner correctement..
  • Réduire les écritures disque (2):
    • Par défaut, le système attendra au plus 5 secondes avant d'écrire réellement sur disque des données en attente d'écriture. On peut augmenter cette valeur (par exemple 60 secondes). C'est utile dans le cas où vous avez beaucoup de lectures mélangées à quelques écritures disque (ce qui correspond à la majorité des cas d'utilisation de machines de bureau).
      • Avantages: Réduit globalement les écritures sur disque (très utile pour les SSD), et offre de meilleures performances (certaines applications qui lisent des données ne seront pas bloquées par les écritures en cours).
      • Inconvénient: En cas de coupure, vous perdrez potentiellement jusqu'à 60 secondes d'écritures en cours. (Cela n'augmente cependant pas le risque de corruption du système de fichier, grâce à la journalisation).
      • Si vous avez un SSD, vous pouvez très bien monter à 600 secondes (10 minutes).
      • Mise en place: Modifiez votre fichier /etc/fstab pour ajouter le paramètre commit=60. Exemple:
        UUID=4a5773ef-7833-4741-c53f-8de2dd3d7527 /               ext4    errors=remount-ro,commit=60 0       1
  • Réduire les écritures disque (3):
    • Vous verrez sur beaucoup de sites l'astuce de l'option noatime/nodiratime à ajouter à votre fstab (pour réduire les écritures disque). Ne le faites pas. (Cette option permet à Linux de cesser d'enregistrer la date d'accès à un fichier/répertoire, ce qui provoque habituellement une écriture disque à chaque lecture de fichier.)
    • Ne le faites pas, parce que par défaut tous les noyaux Linux récents montent vos disques avec l'option relatime qui fait à peu près la même chose. Pour le vérifier: cat /proc/mounts | grep relatime
  • Améliorer l'économie d'énergie:
    • sudo apt install tlp tlp-rdw
      sudo service tlp start
    • C'est tout !
    • tlp a une configuration par défaut bien faite, mais je change les paramètres suivants dans son fichier de config (/etc/default/tlp):
      • WIFI_PWR_ON_BAT=off pour ne pas économiser l'énergie du WiFi quand je suis sur batteries (pour une connexion plus stable)
      • DEVICES_TO_DISABLE_ON_STARTUP="bluetooth" pour désactiver le blutooth au démarrage, car je ne m'en sers pas.
    • Pourquoi TLP et pas PowerTop ? :
      • TLP possède des réglages par défaut meilleurs que PowerTop (exemple: TLP n'active pas l'économie d'énergie sur la souris, ce qui évite la latence (quand elle se "réveille") quand on recommence à la bouger)
      • TLP a deux préréglages secteur/batterie entre lesquels il bascule automatiquement. PowerTop propose un réglage unique pour une économie maximale. TLP permet d'avoir de meilleures performances quand on est sur secteur.
      • (Voici une vidéo en anglais qui explique bien la différence entre les deux.)
  • Surveillance santé disque dur : Activer le démon smartd:
    • sudo apt install smart-notifier gsmartcontrol
    • Dans /etc/default/smartmontools, mettre start_smartd=yes et lancer le démon: sudo service smartmontools start
    • smart-notifier affichera automatiquement une notification en cas de problème détecté sur le disque dur.
    • gksu gsmartcontrol permet d'aller examiner les paramètres du disque dur, et de voir également - dans l'onglet Error log - les erreurs qui se produisent sur le disque (erreurs de lecture, écriture, etc. pouvant signaler un début de problème)

Installation de logiciels des dépôts

  • Installation de logiciels:
    sudo apt install firejail fail2ban ttf-mscorefonts-installer synapse zeitgeist qbittorrent htop playonlinux gparted gimp-data-extras gimp-gmic gimp-plugin-registry gimp-texturize ffmpeg libavcodec-extra steam fslint pigz pbzip2 geany geany-plugins meld shutter kazam
    • firejail : permet de lancer des applications les isolant du système. Par exemple, on peut interdire à une application d'aller sur le net, ou lui fournir un répertoire /home bidon pour qu'elle ne puisse pas aller fourrer son nez dans nos fichiers perso (coucou Skype…).
    • fail2ban : protection contre les attaques bruteforce (je m'en sers pour protéger le serveur ssh et autres).
    • ttf-mscorefonts-installer : Polices Windows.
    • synapse zeitgeist : Synapse est un lanceur rapide (Ctrl+Espace) plus pratique de Gnome-Do ou Kupfer. Zeitgeist permet à Synapse d'améliorer ses prédictions.
      • zeitgeist est un peu l'équivalent des "fichiers récents" dans Windows. Vous pouvez installer le paquet zeitgeist-explorer et lancer l'exécutable du même nom pour voir les évènements enregistrés. Les fichiers sont stockés dans ~/.local/share/zeitgeist.
    • qbittorrent : Client BitTorrent très complet que je préfère à Transmission.
    • htop : un bon gestionnaire de processus en terminal. (P=tri par CPU, M=tri par mémoire, t=affichage par arbre, H=masquer multiples threads, F4=filtrer, k=tuer, q=quitter)
    • playonlinux : Installe Wine pré-configuré. Utile pour faire tourner certaines applications Windows sans avoir à lancer VirtualBox.
    • gparted : pour (re)partionner des disques.
    • gimp-data-extras gimp-gmic gimp-plugin-registry gimp-texturize : plugins supplémentaires pour Gimp.
    • ffmpeg libavcodec-extra : Le fidèle convertisseur audio/vidéo.
    • steam : Pour avoir mes jeux Steam.
    • fslint : pour trouver les fichiers en double et faire le ménage.
    • pigz pbzip2 : Version parallélisées de gzip et bzip2. En gros, ils fonctionnent pareil que gzip/bzip2, mais tirent partie des multi-coeurs. Ils vont donc beaucoup plus vite, et produisent des fichiers totalement compatibles avec gzip/bzip2. D'ailleurs vous pouvez très bien mettre dans votre .bashrc:
      alias gzip=pigz
      alias bzip2=pbzip2
    • geany geany-plugins : Je ne suis pas fan de l'éditeur xed fourni en standard. Geany est plus sympa.
      • Une fois geany installé, penser à activer les plugins: menu Outils → Gestionnaire de plugins et cocher ce qui vous intéressent.
      • Thèmes pour Geany: https://github.com/codebrainz/geany-themes/archive/master.zip Dézipper et copier les fichiers *.conf du répertoire colorschemes dans ~/.config/geany/colorschemes puis aller dans le menu Affichage → Changer le jeu de couleurs….
    • meld : Un excellent outils pour comparer des fichiers ou des répertoires.
    • shutter : Un très bon outils pour faire des captures d'écran.
    • kazam : Un outils pour faire des captures vidéos de l'écran.

Installation de logiciels hors dépôts

Installation de logiciels hors dépôts:

  • VeraCrypt (volumes chiffrés): https://www.veracrypt.fr/en/Downloads.html
    • Télécharger la dernière version ( veracrypt-x.xx-setup.tar.bz2)
    • Décompresser le .tar.bz2
    • Lancer l'installeur qui correspond à votre archi (veracrypt-x.xx-setup-gui-x64 pour les 64 bits ou veracrypt-x.xx-setup-gui-x86 pour les 32 bits).
    • Notez que VeraCrypt ne peut pas monter certaines partitions TrueCrypt.
  • BorgBackup pour avoir la version la plus récente:
    • sudo wget https://github.com/borgbackup/borg/releases/download/1.1.7/borg-linux64  # (1.1.7 ou plus récent)
      sudo cp borg-linux64 /usr/local/bin/borg
      sudo chmod 755 /usr/local/bin/borg
  • VirtualBox (machines virtuelles) : Je prend la dernière version du site officiel, toujours un peu plus récente que celle des dépôts.
    • Page de téléchargement : Prenez le package pour Ubuntu 18.04 (Linux Mint 19 est basée sur Ubuntu 18.04).
    • Vous pouvez aussi télécharger le Oracle VM VirtualBox Extension Pack, qui permet une meilleure intégration de la machine virtuelle dans le système (USB, dossiers partagés, etc.)
  • xnviewmp : Un excellent gestionnaire d'image auquel je suis habitué. Fonctions de conversion en lot très pratiques. (Gratuit pour une utilisation personnelle.)
  • Jeux (non-Steam):
    • Pour Minecraft : Je n'utilise pas le package minecraft-installer car c'est l'ancien lanceur, et il pose parfois problème (login/mot de passe refusés alors qu'ils sont bons). Je prend le package officiel.
    • Note: Pour certains jeux de GOG, il faut installer certaines librairies:
      sudo apt install libc6:i386 libasound2:i386 libasound2-data:i386 libasound2-plugins:i386 libstdc++6:i386 libx11-6:i386 libxau6:i386 libxcb1:i386 libxcursor1:i386 libxdmcp6:i386 libxext6:i386 libxfixes3:i386 libxinerama1:i386 libxrandr2:i386 libxrender1:i386 libglu1:i386 libcurl3:i386 libgtk2.0-0:i386 libopenal1:i386
  • Installation de polices de caractères supplémentaires (polices pour développeurs):
    mkdir -p ~/.fonts
    cd ~/.fonts
    
    wget https://github.com/madmalik/mononoki/releases/download/1.2/mononoki.zip
    unzip mononoki.zip && rm mononoki.zip
    
    wget https://robey.lag.net/downloads/mensch.ttf
    
    fc-cache -fv

Suppression de paquets

sudo apt purge transmission-gtk
  • transmission-gtk : Ce client torrent n'est pas mauvais, mais je préfère qbittorrent (plus complet).
  • Nettoyage d'éventuels paquets qui ne sont plus utiles: sudo apt autoremove

Clé USB bootable

Je garde toujours une clé USB bootable de Linux Mint avec moi pour plusieurs raisons:

  • Si un jour le système est complètement crashé et ne démarre plus, je peux booter sur la clé pour récupérer mes fichiers.
  • Je peux me servir de la clé pour réparer mon système ou le réinstaller entièrement en cas de problème (mon /home étant dans une partition séparée, je peux réinstaller le système sans perdre mes données).
  • Je peux également m'en servir pour re-partitionner mes disques.
  • Je peux dépanner d'autres personnes avec, même celles qui sont sous un Windows qui ne démarre plus.
  • Je peux m'en servir pour surfer sur une machine sans craindre un keylogger 1).

Instructions: Création d'une clé bootable USB Linux Mint

Opérations optionnelles et astuces

Améliorer le cache DNS (dnsmasq)

  • Par défaut, dans Linux Mint, le gestionnaire réseau (NetworkManager) lance un serveur DNS local (dnsmasq) (qui lui-même pointe sur systemd-resolved)
  • Par défaut, dnsmasq garde un petit cache (150) des réponses DNS, mais on peut le forcer à plus:
    sudo bash -c "echo 'cache-size=2000' >> /etc/NetworkManager/dnsmasq-shared.d/cache.conf"
    sudo service network-manager restart
  • Pour voir le status de dnsmasq:
    • ouvrez un terminal et tapez:
      tail -f /var/log/syslog | grep dnsmasq
    • et tapez dans un autre terminal:
      sudo pkill -10 dnsmasq
    • Vous devriez voir la taille du cache (2000):
      Aug  6 11:09:53 mint181mate dnsmasq[982]: taille de cache 2000, 0/28 insertions dans le cache entrées non-expirées réutilisées
    • ainsi que le nombre de requêtes résolues grâce au cache:
      Aug  6 11:09:53 mint181mate dnsmasq[982]: requêtes transmises 147, requêtes résolues localement 61
  • PS: La version de dns-masq fournie avec Linux Mint 19 ne semble malheureusement pas supporter le paramètre min-cache-ttl qui permettrait de forcer le TTL des domaines (et ainsi réduire le nombre de requêtes DNS sortantes). Dommage.

Autres

  • Alias : que j'ajoute à la fin de ~/.bashrc:
    • alias ni='nice -n 19 ionice -c3' me permet de lancer un programme avec la priorité CPU et disque minimale. Quand je veux lancer une commande en tâche de fond, j'ajoute juste ni devant la commande.
  • Firefox : J'applique les réglages de cette page.
  • Envoi d'un SMS quand quelqu'un ouvre une session:
    • J'ai bricolé un truc simple qui me permet de recevoir un SMS sur chacun des évènements suivants: ouverture de session, fermeture de session, mauvais mot de passe.
    • Tout est documenté dans cette page.

D'autres astuces (et installations optionnelles) sont disponibles dans la page de Linux Mint 17.3 Mate

Notes diverses

  • Ne faites plus ifconfig mais ip addr
  • Activer/déactiver le WiFi en ligne de commande: nmcli radio wifi on / nmcli radio wifi off.
  • Réseau en vrac ? Redémarrer complètement le gestionnaire: sudo service network-manager restart
  • Pour lister tout le matériel présent dans la machine (avec numéros de série): sudo lshw. (Et spécifiquement pour la partie réseau: sudo lshw -C network)
    • Vous pouvez aussi utliser l'excellent sudo inxi -F (faites un man inxi pour plus d'options).
  • ncdu est fantastique pour voir la place occupée par vos fichiers et répertoires.
  • L'interface graphique ne répond plus ? Tuez-la avec Ctrl+Alt+← Backspace
  • Besoin rapidement d'un terminal en mode texte ? Ctrl+Alt+F1 (jusqu'à F6). Il vous suffit d'entrer votre login et mot de passe.
    • Pressez Alt+F7 ou Alt+F8 pour revenir au mode graphique.
    • Quand vous êtes dans le terminal en mode texte, Ctrl+Alt+Suppr redémarrera rapidement la machine.
  • Si après avoir lancé puis quitté un jeu, vous n'avez plus de son, essayez:
    pulseaudio -k
  • Vous voulez ajouter des actions dans le menu clic-droit du gestionnaire de fichiers (Caja) ? Déposez vos script exécutables dans ~/.config/caja/scripts/ (n'oubliez pas de les rendre exécutables). Exemple:
    Créer rapidement une archive tar-gzip
    #!/bin/bash
    # Créer rapidement une archive .tar.gz
    IFS=$'\n'
     
    for FILENAME in $CAJA_SCRIPT_SELECTED_FILE_PATHS; do
     if [ -d "$FILENAME" ]; then
      tar -c "$FILENAME" | pigz -c > "$FILENAME.tar.gz"
     fi
     if [ -f "$FILENAME" ]; then
      cat "$FILENAME" | pigz -c > "$FILENAME.gz"
     fi
    done
  • Ou si vous voulez faire plus évolué (pensez à faire sudo apt install pv xterm):
    #!/bin/bash
    # Créer rapidement une archive .tar.gz
    IFS=$'\n'
     
    for FILENAME in $CAJA_SCRIPT_SELECTED_FILE_PATHS; do
        if [ -d "$FILENAME" ]; then
            cmd="tar -c \"`basename \"$FILENAME\"`\" | pv | nice pigz -c > \"$FILENAME.tar.gz\""
            xterm -T "Compression de `basename $FILENAME`" -e /bin/bash -l -c "$cmd"
            notify-send -i info -t 20000 "Compression terminée." "`basename $FILENAME`.tar.gz"
        fi
        if [ -f "$FILENAME" ]; then
            cmd="pv \"$FILENAME\" | nice pigz -c > \"$FILENAME.gz\""
            xterm -T "Compression de `basename $FILENAME`" -e /bin/bash -l -c "$cmd"
            notify-send -i info -t 20000 "Compression terminée." "`basename $FILENAME`.gz"
        fi
    done

Notes sur l'ASUS P2 520LA-XO0456T

Logiciel

  • Après l'installation, tout a immédiatement marché: Démarrage de Grub en UEFI. Le WiFi fonctionne.
  • Besoin d'aucun pilote propriétaire.
  • L'hibernation fonctionne, avec reprise du WiFi.
  • Le trackpad fonctionne (y compris tape-2 et 3 doigts, scrolling avec deux doigts, glisser-déplacer avec double-tape+glisser…).
  • Les touches spéciales (Fn-x) fonctionnent: luminosité, volume…

Matériel

  • L'ordinateur a un bel aspect, sombre et sobre. Coque en plastique noir avec texture "aluminium brossé" (même si au toucher le plastique donne un peu l'impression d'être "cheap").
  • La machine est relativement fine et légère.
  • Il y a 4 ports USB (1 en USB2, 3 en USB3). Les ports USB 3 sont rétro-compatibles USB 2.
  • Les ports USB sont durs. Il faut tirer comme une brute pour débrancher un périphérique USB. Après quelques mois d'utilisation, ils sont parfaitement normaux.
  • Je suis heureux que les diodes d'état (allumé, disque dur, WiFi…) soient petites, discrètes et pas trop lumineuses.
  • La machine (et son disque dur) font très peu de bruit.
  • Je peux garder la machine sur les genoux sans me faire cuire les cuisses. Elle ne chauffe pas. Très bien ! (C'est souvent le point noir des ordinateurs portables, mêmes chez les MacBook à 2000€).
  • Je suis globalement très content de la machine.

Maintenance

La légende dit vrai: une machine Linux ne "pourrit" pas avec le temps comme une machine Windows. Sans maintenance particulière, le système tourne comme une horloge pendants des mois (si on met de côté les problèmes de stabilité de X-Windows).

Ceci dit, on peut préventivement faire un peu de maintenance:

Une fois par semaine

  • Mises à jour du système (si vous n'utilisez pas le widget de signalement des mises à jour):
    sudo apt update && sudo apt upgrade
  • Faites des backups !!!
    • J'ai documenté dans cette page ma procédure de backup.

Une fois par mois (ou tous les deux mois)

  • Faire une petite vérification du système de fichier:
    sudo touch /forcefsck
    sudo touch /home/forcefsck

    puis redémarrer. Cela va forcer une vérification du système de fichiers.

  • De temps en temps, supprimer les paquets qui ne sont plus utilisés par aucun logiciel:
    sudo apt autoremove
  • Et supprimer les fichiers .apk des anciennes versions des logiciels:
    sudo apt autoclean
  • Fichiers en double: Lancez fslint. Par défaut, votre c'est votre répertoire /home qui est sélectionné et l'onglet "Duplicatas". Autrement dit, la recherche de fichiers en double dans votre répertoire perso. Cliquez sur le bouton "Recherche" et laissez-le travailler. Il affichera les fichiers en double les plus gros en premier.

Retirer les anciens noyaux

A force de mises à jour, votre système conserve les anciens noyaux. Ce n'est pas forcément utile, et on peut gagner pas mal de place en supprimant les anciens.

Ouvre le gestionnaire de mises à jour > Menu Vue > Noyaux Linux

Vous pouvez alors cliquer sur un noyau et utiliser le bouton pour le supprimer.

Liens

Dans le même genre:

1)
sauf un keylogger matériel, bien sûr
mint_customization_19.txt · Dernière modification : 2022/01/19 11:33 de sebsauvage