Outils pour utilisateurs

Outils du site


trucs_persos

Préambule

Je rassemble ici quelques trucs et commandes qui me sont / seront utiles. J'ai écrit tout ceci avant tout pour moi (j'ai une mémoire de moineau, et j'en ai marre de ré-inventer la roue à chaque fois), et puis finalement, une fois de plus, je me suis ravisé, et tente d'apporter un peu de pédagogie pour ceux que ça pourrait intéresser.

Je ne suis pas une référence sur le sujet (autodidacte), à vos risques et périls, mais je fais de mon mieux, et tout ceci reflète une quinzaine d'années de pratique au quotidien de Linux Debian Sid puis Testing.

L'idée n'est pas de faire un nième manuel sur l'administration Linux (je n'ai de toute façon pas le niveau pour çà), mais de m'accompagner dans l'installation et le dépannage de mes PC sous Linux.

Et pour preuve, si vous recherchez des documentations de qualité, je vous suggère notamment celles-ci :

Je pense que mon WIKI n'est pas non plus dénué d'intérêt, par son approche pragmatique de l'utilisation quotidienne de Debian côté utilisateur final. C'est ma meilleure arme pour m'installer un système aux petits oignons et ensuite pour lutter contre ses affreux petits bugs :)

Profitez-en : c'est libre !

Guide d'installation et commandes utiles

Installateur Debian

L'installation d'une distribution Debian commence généralement par la création d'une clé USB d'installation Debian, dénommée “netinstall Debian”. D'autres méthodes sont possibles, notamment en passant par un DVD d'installation du commerce distribué via des revues d'informatique, et les geek ont aussi certainement d'autres moyens d'installer une Debian.

Néanmoins, personnellement je vous recommande cette clé USB à faire vous-même : c'est simple, vous apprendrez quelque-chose, vous pourrez plus tard l'effacer pour mettre un netinstall Debian plus récent et ça vous donnera un outil supplémentaire pour du dépannage éventuel de votre PC.

Cet installateur Debian vous permettra d'avoir une bonne vue d'ensemble des périphériques (pour avoir leurs noms), de lancer un shell sur le disque souhaité et d'effectuer les opérations courantes nécessaires à l'installation (partitionnement, formatage, choix des points de montage, installation, …). C'est donc un outil très utile pour le dépannage.

Il vous faudra une clé USB avec 500Mo de disponible et disposer d'une connexion internet au cours de l'installation (le PC à passer sur Linux devra être relié si possible directement à votre box internet ou via une connexion Wi-Fi, bien que je n'ai pas testé ce dernier cas), car le netinstall va devoir télécharger des composants complémentaires (il détectera votre matériel réseau).

Le netinstall Debian 64-bit se télécharge ici : Installer Debian par Internet.

Je suggère pour les débutants le téléchargement “Petits CD ou clefs USB” (le livrable pèse 350Mo). Je n'ai pas testé “Très petits CD, clefs USB personnalisées, etc.” qui abouti à un livrable “mini.iso” de 50Mo plus minimaliste (voir un netboot de 37Mo), qui me semble plus indiqué pour les geeks Linux (qui se débrouillent bien avec la ligne de commande). J'ai très envie de tester ce dernier, mais c'est trop tard (au moment où j'écris ces lignes j'installe une Debian avec un ancien installateur :).

Plusieurs architectures sont disponibles (amd64, i386, arm64, …).

  • amd64 : pour un PC Debian 64-bit, que vous ayez un processeur AMD ou INTEL (le nom est trompeur)
  • i386 : pour un PC Debian 32-bit, que vous ayez un processeur AMD ou INTEL
  • arm64 : pour les processeurs ARM équipant les smartphones, tablettes et autres systèmes embarqués

N'installez plus de Debian 32-bit, elle est dépassée, le support va s'arrêter d'ici quelques années au plus tard (et de plus l'interface de Steam ne supporte plus Linux 32-bit, vous pourrez charger l'interface de Steam mais ne pourrez pas naviguer depuis cette interface, ce qui le rend quasiment inutilisable). Donc pour votre PC de bureau ou votre PC portable, choisissez “amd64” pour installer votre Debian 64-bit.

Une fois votre netinstall téléchargé (c'est un fichier “.iso”), il vous faut en extraire le contenu et le copier sur votre clé USB (inutile de la formater). Je vous laisse vous débrouiller pour trouver comment faire :). Une fois le contenu (pas le fichier iso lui-même, mais son contenu) entièrement copié, votre clé est prête.

Rendez-vous dans le BIOS (ou l'UEFI) de votre PC : vous redémarrez votre PC et maintenez la touche “Suppr” (ou “Del”) jusqu'à ce que vous voyez apparaître un menu (c'est le BIOS pour les PC anciens, ou l'UEFI pour les PC récents). Là vous naviguez dans les menus jusqu'à trouver l'option permettant de sélectionner l'ordre de démarrage des périphériques (sur les BIOS en général il se trouve dans les menus de droite, juste avant l'option d'enregistrement de vos modifications, dans l'UEFI il faut chercher dans les options de démarrage). Dans ce menu sélectionnez comme 1er périphérique de démarrage la clé USB, puis en 2nd le disque dur. Puis vous sélectionnez l'option permettant d'enregistrer vos modifications avant de quitter, et quittez.

Vous insérez votre clé USB et attendez que votre système démarre dessus. Ensuite vous suivez les instructions, je ne décris pas tout ici, seulement le démarrage et quelques conseils (le reste est intuitif) :

  • Dans le menu de la clé USB, choisissez Graphical Install
  • pour la langue : Français
  • Situation géographique : France
  • Disposition du clavier : Français
  • Ensuite, il va installer quelques composants, puis rechercher une connexion réseau avec votre box internet en DHCP :
    1. Si votre PC est relié directement à votre Box internet, il va trouver la connexion et vous n'aurez rien à faire.
    2. Si votre PC est relié à un autre (que l'on nomme “passerelle”) pour sa connexion et que vous l'avez configuré en IP statique (par opposition au DHCP, ce qui est mon cas), il vous indique que la configuration DHCP a échouée (normal puisqu'il n'y en a pas), donc vous :
      1. cliquez sur “Continuer” puis sélectionnez “Configurer vous-même le réseau”,
      2. cliquez sur “Continuer” puis entrez l'adresse IP que vous avez choisi pour ce PC (dénommé “machine”) : moi je rentre 192.168.0.2 (j'avais choisi la 192.168.0.1 pour l'interface correspondante sur le PC relié à Internet. Je précise “l'interface correspondante” car sur ce PC Internet il y en a 3 au total)
      3. cliquez sur “Continuer” puis on vous propose le masque de sous-réseau “255.255.255.0”. Pour un petit réseau domestique, c'est OK, vous pouvez valider (seuls les Geek / les entreprises avec un énorme réseau changerons éventuellement ce masque)
      4. cliquez sur “Continuer” puis entrez l'adresse IP de la passerelle (=l'autre PC relié à internet), il me propose par défaut “192.168.0.1”, c'est ok, je valide.
      5. cliquez sur “Continuer”, et là il vous demande les adresses des serveurs de noms, en vous proposant par défaut l'adresse de votre passerelle (il me propose “192.168.0.1”). Mais ce qu'il propose ne correspond pas à mon souhait (je n'ai pas installé de serveur de nom sur ma passerelle), je souhaite qu'il utilise des serveurs de noms externes (il est probable que vous lui indiquiez les adresses des serveurs de nom de votre FAI, mais vous pouvez aussi lui donner d'autres serveurs de noms gratuits que l'on trouve sur le net : voir plus bas). Personnellement je lui donne les adresses de serveurs de noms de mon FAI : 217.27.40.240 217.27.40.241 (jusqu'à 3 adresses maxi, espacées par un espace). A noter que ces adresses seront modifiables plus tard une fois votre distribution installée (dans le fichier /etc/network/interfaces).
  • Ensuite il va vous demander le nom de ce système : donnez-lui un nom court (et pas trop débile :), car ce nom apparaîtra un peu partout une fois installé (on doit aussi pouvoir le changer postérieurement). Moi j'ai choisi “goup2net” (pourquoi pas :).
  • Ensuite il vous demande le nom de domaine. Si vous êtes un Geek, et que donc vous savez ce que vous faites, vous allez entrer quelque-chose. Personnellement je ne met rien. Je valide.
  • Ensuite il vous demande le mot de passe du super-utilisateur (aussi nommé “root”, il aura tous les droits sur ce PC, y compris celui de modifier / d'effacer des fichiers systèmes) : ne l'oubliez pas celui-là :). Choisissez puis validez.
  • Ensuite il vous demande de lui donner le nom du 1er utilisateur normal (il aura des droits restreints, il ne pourra pas modifier des fichiers système). Moi je rentre goupil2 et je valide.
  • Ensuite il vous propose de choisir un identifiant (aussi nommé “login”). Par défaut il propose le même (goupil2 pour moi). Je valide.
  • Puis viens le mot de passe de cet utilisateur. Je le saisi et valide.
  • Vient ensuite la phase de partitionnement des disques. Il propose plusieurs choix : “Assisté - utiliser un disque entier”, “Assisté - utiliser tout un disque avec LVM”, “Assisté - utiliser tout un disque avec LVM chiffré”, ou “Manuel”. Personnellement je préfère le faire manuellement, donc je choisi “Manuel” et valide.
  • Ayant choisi “Manuel”, il me propose “Partitionnement assisté”, “Configurer les volumes iSCSI”, puis il me liste les disques trouvés, et ensuite les options “Annuler les modifications des partitions” et “Terminer le partitionnement et appliquer les changements”. ATTENTION à ne pas sélectionner votre clé USB ou un disque important autre que celui à formater ! Je choisi mon disque (en l'occurrence un nouveau SSD, qu'il me trouve, répondant au doux nom de “/dev/nvme0n1 - 960.2 GB Unknown”) et valide.
  • J'arrive alors au menu “Partitionner les disques”.
    • Il m’avertis que j'ai choisi de partitionner un disque entier, et me demande “Faut-il créer une nouvelle table des partitions sur ce disque ?”. Je choisi “oui”.
    • Il m'affiche ensuite un menu avec comme choix “Partitionnement assisté”, “Configurer le RAID avec gestion logicielle”, “Configurer le gestionnaire de volumes logiques (LVM)”, “Configurer les volumes chiffrés”, “Configurer les volumes iSCSI”, et mon disque “/dev/nvme0n1 - 960.2 GB Unknown” avec une première partition “pri/log 960.2GB Espace libre”, et ensuite les options “Annuler les modifications des partitions” et “Terminer le partitionnement et appliquer les changements”. Je choisi la partition “pri/log 960.2GB Espace libre” et valide.
    • J'arrive à un autre menu “Action sur cet espace disponible :” où j'ai comme choix “Créer une nouvelle partition”, “Partitionner automatiquement l'espace disponible” ou “Afficher les informations sur les cylindres, têtes et secteurs”. Je choisi “Créer une nouvelle partition”.
    • Là il me propose par défaut 960.2 GB (la taille maxi de mon disque SSD). Si vous validez, cela revient à utiliser tout le disque et vous n'aurez donc qu'une seule partition. Pour un utilisateur débutant, c'est un choix valide. Néanmoins si votre disque est de grande taille, il y a quelques inconvénients (notamment : les vérifications de disque ultérieures seront très longues et si vous saturez votre disque par des données perso, le système ne pourra plus démarrer sans une intervention externe via une clé de dépannage). Personnellement je préfère le couper en partitions. Je commence par créer la partition racine (/), j'utilise ma cartographie citée ci-après, donc je retiens 150GB (on saisi également le “GB”), je valide.
    • J'arrive au menu “Type de la nouvelle partition”, où il me propose “Primaire” ou “Logique”. Sur ce type de partitionnement (sans LLVM) on ne peux avoir que 4 partitions primaires et autant de partition secondaires que l'on veut (ce n'est pas gênant qu'elles soient secondaires). Il se trouve que de toute façon je n'en créé que 4, donc je vais toutes pouvoir les mettre en primaire. Je sélectionne donc “Primaire”. Je valide.
    • Au menu suivant il demande “Veuillez indiquer si vous souhaitez placer la nouvelle partition au début ou à la fin de l'espace disponible”. Ne voyant pas dans quel cas cela pourrait être utile de la placer à la fin, je choisi “Début” et je valide.
    • Au menu suivant, il m'indique “Vous modifiez la partition n°1 sur /dev/nvme0n1. Aucun système de fichiers n'a été détecté sur cette partition. Caractéristiques de la partition :
      • Utiliser comme : système de fichiers journalisé ext4 (j'ai choisi de rester en ext4, mais si vous créez une partition de swap (voir plus bas), vous préciserez ici un formatage en swap pour votre partition de swap, vous pouvez aussi choisir d'autres systèmes de formatage tel que BTRF ou XFS, ou choisir du RAID ou LVM)
      • Point de montage : / (par défaut, ce que je retiens pour cette partition, mais pour les prochaines partitions en appuyant sur ENTER vous avez là aussi la possibilité de sélectionner l'un des points de montages classiques ou de créer le votre - comme par exemple /mnt/DDprc/, voir plus bas).
      • Options de montage : defaults (par défaut, je ne change rien ; les Geek pourrons retenir d'autres options)
      • Étiquette : aucune ⇒ je change et j'indique “Racine”, car j'aime bien voir les étiquettes, c'est souvent plus parlant quand des utilitaires affichent les étiquettes. Mais vous pouvez indiquer “Toto”, ça n'a pas d'importance.
      • Blocs réservés : 5% (par défaut, je ne change rien)
      • Utilisation habituelle : standard (par défaut, je ne change rien, à réserver aux Geek)
      • Indicateur d'amorçage : absent ⇒ je le sélectionne et valide ce qui a pour effet de le basculer en “présent”. IMPORTANT si vous voulez que ce disque soit amorçable/bootable sur cette partition racine. On ne le fait que pour la partition racine (/).
      • Supprimer la partition
      • Fin du paramétrage de cette partition (je valide sur ce menu une fois mes modifications ci-dessus réalisées).
    • Je me retrouve au menu précédent avec comme choix “Partitionnement assisté”, “Configurer le RAID avec gestion logicielle”, “Configurer le gestionnaire de volumes logiques (LVM)”, “Configurer les volumes chiffrés”, “Configurer les volumes iSCSI”, et mon disque ”/dev/nvme0n1 - 960.2 GB Unknown“ avec une première partition “pri/log 150.0GB B f ext4 /”, et une seconde partition “pri/log 810.2GB Espace libre”, puis les options “Annuler les modifications des partitions” et “Terminer le partitionnement et appliquer les changements”. Je choisi la partition “pri/log 810.2GB Espace libre” et valide, afin de passer au partitionnement de mon /home. Je ne vous redétaille pas tout, c'est le même principe, j'ai choisi le système ext4, une étiquette “Home”, pas d'indicateur d'amorçage.
    • Je fais de même pour /mnt/DDprc et /usr.
    • Puis je sélectionne “Terminer le partitionnement et appliquer les changements” et valide.
    • Là il m’avertis “Aucune partition n'a été choisie comme espace d'échange. L'activation d'un espace d'échange (“swap”) est recommandée pour que le système utilise au mieux la mémoire physique disponible et se comporte mieux quand elle est limitée. Vous pourriez rencontrer des difficultés lors de l'installation si vous ne disposez pas asse de mémoire physique. Si vous ne revenez pas au menu de partitionnement pour choisir une partition pour l'espace d'échange l'installation continuera sans celui-ci. Souhaitez-vous revenir au menu de partitionnement ? Non Oui (par défaut). Comme je l'ai précisé plus bas, mon cas est un peu particulier, ce PC dispose de beaucoup de mémoire (32GB) donc je n'en ai pas besoin, c'est normal (donc j'ai sélectionné : Si vous avez moins de 16GB de mémoire sur votre PC je vous recommande fortement de réserver 8-10GB de mémoire de SWAP dans les menus précédent (vous pouvez encore revenir en arrière sans soucis à ce stade, et modifier votre partitionnement).
    • Menu suivant, il précise “Si vous continuez, les modifications affichées seront écrites sur les disques. Dans le cas contraire, vous pourrez faire d'autres modifications. Les tables de partitions des périphériques suivants seront modifiées : /dev/nvme0n1. Les partitions suivantes seront formatées : partition n°1 /dev/nvme0n1 de type ext4, partition n°2 /dev/nvme0n1 de type ext4, partition n°3 /dev/nvme0n1 de type ext4, partition n°4 /dev/nvme0n1 de type ext4. Faut-il appliquer les changements sur les disques ? Je sélectionne “oui” et valide.
  • Le système de base s'installe et vient ensuite une autre série de questions (voir le paragraphe plus bas, après “Nota”).

Serveurs de noms utilisables :

  • Pour Free : 217.27.40.240, 217.27.40.241
  • Autres serveurs de noms gratuits alternatifs : Lifewire (Free and Public DNS Servers)
  • J'ai déjà testé avec succès ceux :
    • d'OpenDNS : 208.67.222.222, 208.67.220.220
    • de Google : 8.8.8.8

Il faut juste avoir en tête que le serveur en question connaîtra toutes vos connexions en temps réel, donc prenez-en un de confiance.

Cartographie de formatage de mon SSD de 960.2GB (choix retenus pour un PC avec pas mal de jeux installés) :

  • / 150GB
  • /home 500GB
  • /mnt/DDprc 110.2GB (pour des données de stockage perso)
  • /usr 200GB

Nota :

  • si vous ne créez pas de partitions spécifiques (exemple : si vous ne créez pas de partition /usr ou /home, …), les autres répertoires systèmes (/home, /usr/, /var, …) seront automatiquement rattachés à /
  • Je n'ai pas créé de partition de swap (/swap) car ce PC est équipé de 32GB de mémoire. En dessous de 16GB de mémoire, il est fortement recommandé d'en créer (sur mon autre PC, quand il n'avait encore que 6GB de mémoire, j'avais régulièrement des plantages lorsque je lançais des jeux qui saturaient la mémoire).
  • Formatage des disques en RAID (utilise ensuite mdadm) : je ne suis plus fan du tout. C'est devenu compliqué et je ne trouve plus cela fiable. En cas de plantage de votre système Linux, ça complique beaucoup la récupération. Il vaut mieux utiliser un système de sauvegarde par un logiciel spécialisé (à étudier). N'utilisez donc pas le RAID sauf si vous êtes un geek et n'avez pas peur de perdre vos données (j'ai longtemps pratiqué et je n'ai plus envie).
  • Vient ensuite le menu “Configurer l'outil de gestion des paquets”. Pour le choix du dépôt Debian à utiliser, retenez les dépôts Debian des États-Unis (tout en bas de la liste, ce sont les plus fiables). Si vous avez raté l'option il vaut mieux revenir en arrière ou recommencer l'installation.
  • Puis le menu “Si vous avez besoin d'utiliser un mandataire HTTP (souvent appelé “proxy”) pour accéder au monde extérieur, indiquez ses paramètres ici. Sinon laissez ce champ vide. Je laisse ce champ vide (même si j'ai a une passerelle). À réserver là aussi aux Geeks.
  • Dans le choix du bureau à installer, n'installez que la version minimaliste Debian (c'est le choix par défaut) ou mieux, n'installez que les paquets fournis par la clé elle-même). Ne prenez pas KDE, ni les autres choix. L'idée est de n'installer que le stricte minimum, car si vous souhaitez basculer vers une distribution plus récente (la Debian Testing), vous devrez ensuite mettre à jour tous ces paquets (vous pourrez le faire depuis votre système Linux Debian toute fraîche), ce qui sera beaucoup plus long et difficile si vous avez installé énormément de paquets.
    • La version minimaliste Debian abouti tout de même à un bureau Gnome tout à fait opérationnel, idéale pour débuter sous Linux. Gros avantage : elle installe un noyau moins récent avec tout le nécessaire pour faire fonctionner l'accélération graphique (version de gcc adaptée et fichier d'entête du noyau).
    • À NE PLUS FAIRE : La version minimaliste se contentant des paquets de la clé aboutit à un système Debian opérationnel mais sans bureau graphique, ce qui serait suffisant pour un utilisateur qui a déjà manipulé la console, et à priori serait idéale pour passer tout de suite à la version Testing, voir ci-après (“pour les Geeks”).

Sauf que dans la pratique (vécu) c'est une grosse galère pour obtenir une accélération graphique opérationnelle avec une carte graphique récente. Pourquoi ? Parce que les mainteneurs Debian ne gèrent pas l'aspect dépendances de l'accélération graphique dans Debian Testing (qui ne fonctionne pas avec le dernier noyau disponible, d'où l'intérêt de conserver tout ce qui faut pour installer l'accélération avec le précédent noyau).

Pour exemple, en partant de cette version minimaliste je suis parvenu à installer l'accélération graphique des dépôts Debian (installé avec la commande # m-a a-n (…)) avec ma carte graphique Nvidia RTX 2700. J'avais un bureau graphique et glxgears affichait sa roue dentée avec 1200FPS (ces 1200FPS auraient du me mettre la puce à l'oreille). Mais je me suis aperçu (ou plutôt Louis, bravo à lui pour sa suggestion que l'accélération ne devait pas fonctionner !) que cette accélération graphique ne fonctionnait que partiellement avec cet installateur des dépôts. En effet en lançant le jeu Zero-K, le processeur tournait à fond alors que le jeu tournait au ralenti. J'ai donc tenté d'installer le pilote propriétaire nvidia et c'est là que la galère à commencée et que je voulais en venir.

NB : Pour éviter la galère qui suit, les mainteneurs Debian devraient veiller à systématiquement conserver dans la version Testing un ancien noyau avec son fichier headers (linux-headers-version) et la version de gcc avec laquelle il a été construit.

En effet, il n'y a aucun suivi entre les noyaux, fichiers d'entête de noyaux, et les versions de gcc. Les versions doivent correspondre pour pouvoir compiler un pilote de carte graphique.

C'est quand même pas compliqué (ils sont vraiment nuls sur le sujet les mainteneurs Debian) : la compilation d'un driver pour un noyau donné nécessite :

  • une version de gcc/g++ sur 2 digits (exemple : gcc-6.3 ; elle est indiquée par la commande # cat /proc/version), donc il faut qu'elle reste disponible en dépôt Debian tant que ce noyau est disponible
  • et le fichier d'entête de la même version que le noyau (exemple : linux-headers-4.19.0-8-amd64 si le noyau est un noyau linux-image-4.19.0-8-amd64).

Mais ils ne sont pas foutus de veiller à cette correspondance dans les dépôts. La plupart du temps on a un noyau mais pas l'entête qui va avec, ou l'entête mais pas la version de compilateur gcc utilisée pour le compiler. Et c'est pas une nouveauté, cela fait des années (dizaines ?) que la situation persiste. C'est le bordel, ils sont nuls sur le sujet !

Je me demande s'ils ont conscience du temps perdu pour les utilisateurs expérimentés, et du découragement des utilisateurs non expérimentés (qui vont voir ailleurs), à cause de cela.

En effet, lorsque j'ai voulu compiler le driver nvidia propriétaire, il ne parvenait pas à compiler le fichier d'entête. J'ai donc dû renouveler l'opération sur un noyau moins récent (le 4.19.0-8-amd64). Mais celui-ci n'était plus dans Testing (bullseye). J'ai ajouté le dépôt (buster) et l'ai installé. Mais là le problème est qu'il avait été compilé avec gcc-8.3 alors que la version disponible était la 8.4. Pour revenir à la 8.3 j'ai du désinstaller quelques paquets (mais heureusement pas trop) pour installer la 8.3 puis recréer les liens dynamiques gcc et g++ (voir ce WIKI pour les créer). J'ai eut aussi un souci avec le lien dynamique “cc” qui n'existait pas (message “unable to find the development tool 'cc' in your path. Please make sure you have the package 'gcc' installed. If gcc installed on your system, please check 'cc' is in your path”). Il suffisait de créer le lien (# ln -s /usr/bin/gcc /usr/bin/cc). Bref, un nombre de soucis importants qui auraient pu être évités si j'avais installé la version minimaliste Debian avec le bureau gnome, citée ci-avant.

Après des heures passées à chercher une combinaison disponible et cohérente, je l'ai trouvée :
# cd /var/cache/apt/archives
# dpkg -i linux-headers-4.9.0-12-common_4.9.210-1_all.deb
# dpkg -i cpp-6_6.3.0-18+deb9u1_amd64.deb
# dpkg -i gcc-6_6.3.0-18+deb9u1_amd64.deb
# rm /usr/bin/gcc
# rm /usr/bin/g++
# ln -s /usr/bin/gcc-6 /usr/bin/gcc
# ln -s /usr/bin/gcc-6 /usr/bin/cc
# ln -s /usr/bin/g++-6 /usr/bin/g++
# cd /mnt/DDprc/Download
# sh nvidia.run

Le driver nvidia se compile bien. Mais Xorg ne démarre pas :)) Il y a des jours comme ça…

En fait, contrairement à mon habitude, il fallait autoriser l'installateur propriétaire à créer le fichier /etc/X11/xorg.conf (ça se fait dans la dernière ou avant dernière question de l'installateur, il suffit de répondre “Yes” à la question correspondante). L'analyse du fichier d'erreur de Xorg (/var/log/Xorg.0.log) m'ayant montré en effet qu'il chargeait les drivers (nouveau, nv et nvidia, bien que nouveau soit blacklisté et nv inexistant) mais que le chargement du driver nvidia (sans erreur) ne provoquait pas la reconnaissance des écrans, alors qu'en installant le fichier xorg.conf ça l'a aidé.

Mais ceci est à faire au cas par cas : sur l'un de mes PC (celui du Bottin), il n'y a pas de fichier xorg.conf (c'est en principe la règle maintenant, il n'en a pas besoin), alors que sur l'autre (celui relié à Internet), la création du fichier xorg.conf a été nécessaire.

À retenir : si l'installateur du driver ne signale pas d'erreur, que le module nvidia se charge sans erreur par un ”# modprobe nvidia” et que Xorg ne démarre pas avec votre gestionnaire de connexion, recomnencez l'installation du driver et autorisez la création du fichier de configuration xorg.conf.

Pour les Geeks :

  • Ce n'est pas une bonne idée de récupérer en vrac /boot et /etc sur un ancien disque (il vaut mieux se reposer les bonnes questions).
  • Finalement pas une bonne idée (voir ci-avant) : opérations à réaliser le plus vite possible (dès le 1er redémarrage sans la clé USB) si vous souhaitez passer en Debian Testing :
    • changez le dépôt (Debian Testing vs Debian Stable) en commentant (ajoutez un ”#” devant les lignes) les anciennes lignes et en ajoutant son dépôt dans le fichier /etc/apt/sources.list (ajout de la ligne suivante) :
      deb http://ftp.us.debian.org/debian/ testing main contrib non-free
    • Puis vous lancez les commandes suivantes :
# apt update
# apt install aptitude
# apt install MATE
# apt remove plymouth (car il plante à l'installation lors du passage en Debian Testing)
# apt install gnome sddm module-assistant build-essential
# apt install linux-headers-5.5.0-1-all-amd64 linux-image-5.5.0-1-all-amd64 mesa-utils
# 
  • Redémarrez votre PC (pour charger le noyau que vous venez d'installer). S'il n'y a pas de console graphique apparente (il n'y a pas encore d'accélération graphique), essayez une autre console (Ctrl Alt F1 à F8 jusqu'à ce que vous trouviez une console disponible).
  • Installez le pilote graphique de votre carte graphique (installez le pilote propriétaire si vous avec une carte graphique récente, car celui des dépôts ne fonctionne pas complètement. pour une nvidia : # m-a a-i -f nvidia-kernel-source)
  • Redémarrez votre PC (pour recharger le gestionnaire de démarrage en mode graphique). Vous devriez avoir votre bureau graphique !
  • D'une manière générale, installez dès que possible le paquet “aptitude” qui permet de résoudre des conflits très difficile à résoudre uniquement avec apt et dpkg. Si vous tardez trop à installer ce paquet, vous risquez de ne plus pouvoir l'installer en cas de conflits de paquets (vécu, j'ai dû tout ré-installer).
  • Modifiez dès que possible (car c'est pénible, ils sont incomplets) le PATH incomplet du système : éditez le fichier /etc/bash.bashrc, celui de l'utilisateur courant et celui de l'utilisateur root : en dernière ligne de chacun de ces fichiers ajoutez : PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/local/games:/usr/games
  • Puis je m'attaque à la mise à jour des paquets sous Synaptic (je clique sur le bouton “Recharger” pour mettre les paquets à jour puis sur le bouton “Filtres personnalisés” et dans la section “Nouvelle version amont du logiciel” je sélectionne les paquets à mettre à jour par groupes. Quand le jeu des dépendances induit trop de désinstallations j'essaie d'autres paquets. Ça ne se passe jamais bien, il faut y aller par petites touches, jusqu'à ce que l'on ne puisse plus installer de paquets sans en désinstaller plein d'autres. Ensuite pour débloquer la mise à jour du reste des paquets, bien souvent il suffit de désinstaller quelques paquets puis de les réinstaller.
  • Vérifiez bien qu'il n'y a pas d'erreurs signalées à la mise à jour. Surtout ne redémarrez pas votre système si une erreur est détectée sur Grub, le noyau, ou le fichier de cache initrd sinon vous risquez d'obtenir une Debian qui ne démarre plus (vous seriez contraint de la réparer manuellement par une clé USB - ce qui est assez compliqué, ou de la réinstaller). Si le cas se produit, surtout notez sur un papier les paquets qui plantent et essayez de les réinstaller.
  • Si Synaptic plante sur des conflits, pas de soucis, vous ne perdez rien en quittant. Quittez-le et relancez-le. Tentez l'installation d'autres paquets. Par sécurité, après en avoir terminé avec vos mises à jour, lancez en console un “# apt-get -f install” pour lancer la réparation de paquets éventuellement cassés ou dont l'installation n'est pas achevée (il vous signalera s'il y en a).
  • Lorsque Synaptic n'y arrive plus, votre arme c'est la commande “# aptitude install nom_simplifié_du_paquet” (on ne précise ni la version ni le “.deb”) à utiliser en console pour installer les récalcitrants. Il vous proposera une 1ere solution qui passera par la désinstallation de certains paquets, si elle ne vous convient pas, vous dites non et il vous en proposera une autre. Si aucune ne convient il faut tenter de mettre à jour d'autres paquets.
  • Une fois mon système à jour et qu'il démarre, j'ai choisi (en plus des options par défaut) : les environnement MATE (car je l'utilise au quotidien) et XFCE (pour sa stabilité et sa légèreté, en dépannage, car il fonctionne même lorsque MATE, GNOME et KDE sont plantés). Je n'ai pas retenu dès le départ GNOME et KDE (ce dernier m'a généré des conflits insolubles lors de ma précédentes installation + mise à jour de paquets sans aptitude : j'ai dû tout ré-installer). Ce n'est qu'une fois l'accélération graphique installée et le bureau MATE opérationnel ainsi que Synaptic, que j'installe GNOME et KDE.

Commandes utiles

Je rassemble ici des informations utiles pour un dépannage (en général sans interface graphique :) (à peu près) serein.

Sur les disques

  • Voir un résumé des disques (un peu trop détaillé) : /sbin/fdisk -l
  • ou plus concis (mais pas disponible sur une clé de démarrage) : /bin/lsblk ou mieux : /bin/lsblk -o NAME,UUID (pas d'espace entre NAME et UUID)
  • Monter un disque par son label (si vous donnez une étiquette à votre partition, c'est ensuite plus facile et plus fiable pour monter le bon disque, pas besoin de spécifier le système de fichier) : # mount -L Svg1 /mnt/Svg1 (pour monter la partition libellée “Svg1” sur le répertoire /mnt/Svg1), ou dans /etc/fstab : LABEL=Svg1 /mnt/Svg1 ext4 defaults 0 0
  • Voir l'état des montages RAID : cat /proc/mdstat et cat /run/mdadm/map
  • Voir les UUID des disques ​et leur système de fichier (ext4 ou autre) ​: # blkid
  • Mise à jour des RAMDISK (après mise à jour de mdadm.conf par exemple) : update-initramfs -u
  • Monter un disque en lecture seule (à adapter) : # mount -o ro -t ext4 /dev/sde1 /mnt/cle

Pour ceux qui utilise le RAID logiciel avec mdadm : Si possible vérifier les disques et montages RAID avant de les monter (les monter éventuellement en lecture seule) pour éviter les mauvais assemblages.

Une fois sous le gestionnaire de fenêtre :

  • le gestionnaire de partition de gnome : gparted
  • ou celui de kde : partitionmanager

Sur Grub2

Généralités

  • Paramétrages généraux : éditer /etc/default/grub (puis ne pas oublier : update-grub)
  • À chaque fois que l'on modifie /etc/default/grub ou un fichier de /etc/grub.d/, ne pas oublier de lancer un: # update-grub (sinon /boot/grub/grub.cfg ne sera pas mis à jour)
  • (contrairement à ce que j'ai lu ici (forum UBUNTU (bravo Beru :))) si l'on modifie un fichier dans /etc/grub.d/, il ne faut pas en faire une copie dans ce même répertoire sinon celle-ci est également assemblée pour former un méga-doublon dans /boot/grub/grub.cfg :))
  • Dépannage sous Grub : CoursInfoRevest (WIKI Grub-Rescue)

Résoudre le problème des consoles TTY (qui ont tendance à se figer)

(voir l'excellente doc sur Fedora.fr)

  • Éditer /etc/default/grub
  • Au paragraphe # GRUB_GFXMODE=800×600, mettre :
  • GRUB_GFXMODE=1280×1024,800×600,auto
  • GRUB_GFXPAYLOAD_LINUX=keep

Remarques :

  • pas d'espaces entre les résolutions
  • il tentera d'abord de passer en 1280×1024, puis s'il n'arrive pas il tentera 800×600, puis le mode auto en dernier recours

Accélérer un peu (gagner 4 secondes) le démarrage du système

Par défaut, Grub attend 5 secondes au cas où vous voudriez changer de noyau. Personnellement je trouve qu'1 seconde suffit amplement pour se décider.

  • Éditer /etc/default/grub
  • Remplacer GRUB_TIMEOUT=5 par GRUB_TIMEOUT=1

Sur le matériel

Pour obtenir des infos sur votre matériel :

  • Il y a bien-sûr la commande : # lspci -vnn (ces options “Be verbose” et “Show both textual and numeric ID's” permettent notamment de voir quels sont les drivers utilisés : utile pour voir si un matériel ne dispose pas de driver disponible, surveillez notamment “Kernel driver in use: ”)
  • Il y a aussi (à adapter à ce que vous cherchez) les messages système au démarrage : # dmesg | grep -i bluetooth
  • Si vous avez une interface graphique opérationnelle, il y a aussi : hardinfo (paquet éponyme)
  • Pour récupérer les infos des capteurs de votre carte mère, installez le paquet : lm-sensors
  • L'outil pour résumer de manière élégante les caractéristiques de votre installation : neofetch

Sur les processus

  • Voir les processus en cours (en console) : $ top (ou mieux : $ htop mais paquet éponyme à installer)
  • Voir les processus en cours (graphique) : $ mate-system-monitor (n'affiche pas les processus root et ne permet pas la recherche de processus) ou mieux, $ gnome-system-monitor (un peu moins beau mais plus performant)

Sur la console

Modifier le bug Debian sur le PATH

Je considère que c'est un bug car j'ai le même souci sur mes 2 PC (dont le dernier fraîchement installé) et c'est un truc élémentaire qui ne devrait pas exister : celui du chemin des répertoires systèmes incomplet.

Par défaut, un : # echo $PATH affiche : /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

Or dans ce chemin de recherche il manque des répertoires (/sbin, /usr/sbin, /usr/local/bin, /usr/local/sbin

Les 2 derniers sont vides, on peut s'en passer mais pas les autres.

Il suffit d'éditer le fichier /etc/bash.bashrc et en dernière ligne ajouter :

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/local/games:/usr/games

Sur le clavier

Le clavier Français ne pose en principe pas de soucis. Si vous souhaitez ajouter une autre langue, sous MATE ça se passe dans le Centre de Contrôle ➜ Matériel ➜ Clavier ➜ Onglet “Agencements”.

En ce moment j'ai un bug sur le clavier sous MATE : le clavier reste en Anglais et quand je tente d'ajouter le Français dans l'onglet “Agencements” en cliquant sur le bouton “+Ajouter” je vois une fenêtre qui s'ouvre et se referme aussitôt et ça plante la fenêtre en cours.

Si je lance en console :

$ mate-keyboard-properties
dpy: 0x55d6691aaa10
evt/error/major/minor: 85/137/1/0
Gdk-Message: 17:30:23.806: mate-keyboard-properties: Fatal IO error 11 (Ressource temporairement non disponible) on X server :0.

Alors qu'en console standard (Ctrl Alt F2) j'ai bien un clavier AZERTY mate-keyboard-properties appartient au paquet mate-control-center, il est en version 1.24.0-1 et ce même paquet dans la même version fonctionne bien sur mon autre PC :) Je pense que ce n'est pas cet utilitaire qui est en cause, mais il doit faire appel à un autre composant qui plante (je viens d'installer ce PC et des tas de paquets ont été mis à jour, installés et désinstallés, il est probable que l'un d'eux est mal installé ou pas installé). Mais lequel ?

En attendant, si ça ne fonctionne pas, on peux lancer en console : $ setxkbmap fr (ou $ setxkbmap us si vous voulez retourner en Anglais), ça fonctionne bien.

Sur les paquets & fichiers

Dépôts (contenu de mon fichier /etc/apt/sources.list) :

deb http://ftp.us.debian.org/debian/ stable main contrib non-free
deb http://ftp.us.debian.org/debian/ testing main contrib non-free

deb http://ftp.us.debian.org/debian/ sid main contrib non-free (trop peu sûr pour une utilisation courante)

(je conserve les dépôts “Stable” pour avoir un choix plus large de noyaux installables (notamment pour les cas où les noyaux courants ne fonctionnent pas)

Les premiers paquets à installer ensuite :

  • aptitude : comme ça si vous rencontrez un souci de dépendances, vous disposerez d'une arme très efficace pour régler le problème
  • mc (Midnight Commander) et gpm : (voir la doc spécifique plus bas) un navigateur de fichier en mode texte, avec une boîte à outils. Permet de naviguer plus facilement dans l'arborescence de vos disques, d'éditer des fichiers (utilise nano) et de taper des commandes en récupérant les noms des fichiers (les noms des paquets sont souvent très longs et pénibles à saisir). gpm est un démon pour la souris permettant d'utiliser la souris sous Midnight Commander.

Recherche d'un paquet en console :

  • Recherche dans les paquets installés (à adapter) : # dpkg -l | grep nvidia
  • (paquet apt-file à installer au préalable) Recherche dans les paquets disponibles en dépôts (avec versions, lancer au préalable : # apt-file update) : # apt search nom
  • (paquet apt-file à installer au préalable) Recherche à quel paquet (installé ou non) appartient un binaire (à adapter, lancer au préalable : # apt-file update) : # apt-file search /usr/bin/binaire
  • (Moins bien) Recherche à quel paquet installé appartient un binaire (à adapter) : # dpkg -S /usr/bin/binaire

Recherche d'un fichier :

  • Il y a les commandes ci-avant (s'il fait parti d'un paquet)
  • La commande (lancer au préalable # updatedb avec les droits root si vous souhaitez une recherche dans les répertoires ayant les droits root, sinon $ updatedb avec les droits utilisateurs pour une recherche exclusive dans les répertoires de l'utilisateur courant) : # locate fichier ou $ locate fichier (voir ci-avant pour la raison). Il faudra remettre sa base de données à jour (updatedb) de temps en temps, ce qui prend un peu de temps (quelques minutes) pour examiner tous vos répertoires.

Reconfigurer un paquet :

  • # dpkg-reconfigure nom_du_paquet (sans le “.dpkg”, ni sa version)

Désinstaller un paquet (voir le WIKI UBUNTU):

  • Désinstallation en conservant les fichiers de configuration : # apt remove paquet
  • Désinstallation y compris les fichiers de configuration : # apt purge paquet

Une recherche beaucoup plus simple si vous avez un autre PC fonctionnel à côté : Debian

Sur les versions de gcc/g++

Si vous tentez d'installer / de compiler un driver (un pilote propriétaire nvidia par exemple), vous serez probablement confronté tôt ou tard à un message d'erreur signalant que l'installateur ne parvient pas à compiler ce driver car la version de gcc (par défaut) n'est pas la même que celle qui a servie à compiler le noyau (même les noyaux récents sont souvent compilés avec d'anciennes versions de gcc).

À savoir (sur le bout des doigts :)

  • Les mainteneurs Debian aiment les noms à rallonge, ça permet de se muscler les doigts :)
  • Le paquet gcc est nommé “gcc_version.deb”, celui de g++ est nommé “cpp_version.deb”
  • ils doivent être installés conjointement, avec la même version en 2 digits (exemple 9.3 ou 10.2, même si leur version réelle comporte davantage de digits, exemple gcc-9_9.3.0-3_amd64.deb avec gcc-9-base_9.3.0-3_amd64.deb et cpp-9_9.3.0-3_amd64.deb).
  • gcc et g++ sont installés dans /usr/bin/. Plusieurs versions sont en général disponibles dans ce répertoire. La version utilisée par défaut par le système, est un groupe de liens dynamique :
    • /usr/bin/gcc et /usr/bin/cc pointent vers le même binaire (exemple /usr/bin/gcc-9.3 - qui peut lui-même être un lien pointant vers le binaire du compilateur en question fournit par le paquet gcc-9_9.3)
    • /usr/bin/g++ pointe vers le binaire d'une version identique à celle de gcc (exemple /usr/bin/g++-9.3 - qui peut lui-même être un lien pointant vers le binaire fournit par le paquet cpp-9_9.3)
  • Un noyau est compilé avec une version de gcc spécifique. Si vous avez besoin de compiler un driver parce qu'il n'est pas livré avec ce noyau (le driver propriétaire nvidia par exemple, ou un autre driver de périphérique), vous devez compiler votre driver avec la même version de compilateur (gcc) que celle utilisée pour compiler ce noyau, afin que le driver soit compatible avec lui. Pour connaître la version de compilateur utilisée, installez ce noyau, démarrez dessus (il se sélectionne dès le démarrage, dans le menu de Grub) puis en console lancez : # cat /proc/version

Comment installer la version souhaitée de gcc/g++

Partie commune pour Synaptic, apt ou dpkg

  • Installez le méta-paquet des fichiers d'entête de noyaux (il installera systématiquement les fichiers d'entête des derniers noyaux disponibles) : # apt install linux-headers-amd64
  • Il vous faut connaître la version de gcc/g++ précise (sur 2 digits, exemple la 8.3) requise par votre noyau (voir ci-avant ; une fois démarré sur ce noyau, lancez en console : # cat /proc/version).

1ere alternative : via Synaptic (la plus simple, mais ne permet d'installer que la dernière version)

Par défaut cette méthode ne permet d'installer que la dernière version disponible du compilateur sur un seul digit (pour exemple, vous allez sélectionner gcc-9, et il va vous installer la 9.4, alors que votre noyau aura été compilé avec la 9.3).

La plupart des difficultés de compilation de drivers seraient résolus si les mainteneurs Debian utilisaient une version à 2 digits pour nommer les paquets gcc/g++.

Sous le gestionnaire de paquets Synaptic, l'installation d'une version intermédiaire n'aboutit généralement pas (si l'on change la source depuis synaptic dans le menu “Préférences” puis “Préférer les versions de stable”, la sélection d'une version antérieure “casse” les propositions d'installation).

Néanmoins avec un peu de chance, la dernière version de paquet disponible sera celle requise. Dans ce cas, installez les paquets gcc, gcc-version-base, g++ et g++-version (exemple : installez gcc, gcc-9-base, g++ et g++-9, notez qu'il n'existe pas de paquet g++-version-base en dépôt).

2nde alternative : via apt (un peu moins simple, mais permet d'installer une version précise)

Là aussi par défaut (via la classique commande # apt install), apt installe la dernière version disponible du compilateur - qui ne comporte qu'un seul digit (pour exemple, si vous sélectionnez gcc-9, il vous proposera d'installer la v.9.4, alors que le noyau courant requiert la v.9.3).

Mais une astuce (# apt install nompaquet=version) permet d'installer une version très précise d'un paquet.

De même que précédemment, commencez par trouver la version de gcc/g++ requise avec la commande “# cat /proc/version”.

Puis si elle est disponible en dépôt (d'où l'intérêt de laisser d'anciens dépôts dans votre fichier /etc/apt/sources.list), installez le tout.

Exemples :

1er exemple, avec de la chance, la version gcc/g++ par défaut correspond à la version requise (la 6.3) :

# cat /proc/version
Linux version 4.9.0-12-amd64 (debian-kernel@lists.debian.org) (gcc version 6.3.0 20170516 (Debian 6.3.0-18+debu1)) #1 SMP Debian 4.9.210-1 (2020-01-20)
# apt install gcc gcc-6-base g++-6
# gcc --version
gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

2nd exemple, votre noyau requiert gcc/g++ en version 8.3, alors que la v.8.4 serait installée par défaut.

Vous pouvez lui spécifier d'installer la version 8.3 de la manière suivante (j'ai aussi du ajouter libgcc-8-dev libmpx2 sinon il refusait l'installation lors de mes tentatives) :

# apt install gcc-8=8.3.0-6 cpp-8=8.3.0-6 gcc-8-base=8.3.0-6 libgcc-8-dev=8.3.0-6 libmpx2=8.3.0-6
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
  fonts-cabin glx-alternative-mesa libirs161 libncurses5 libncursesw5 libstd-rust-1.42 libstd-rust-dev
  linux-image-4.9.0-7-amd64 pulseaudio-module-gsettings python-gobject-2 python-gtk2 python3-distro-info rust-gdb update-glx
Veuillez utiliser « apt autoremove » pour les supprimer.
Paquets suggérés :
  gcc-8-locales gcc-8-multilib gcc-8-doc libgcc1-dbg libgomp1-dbg libitm1-dbg libatomic1-dbg libasan5-dbg liblsan0-dbg
  libtsan0-dbg libubsan1-dbg libmpx2-dbg libquadmath0-dbg
Les paquets suivants seront mis à une VERSION INFÉRIEURE :
  cpp-8 gcc-8 gcc-8-base libgcc-8-dev libmpx2
0 mis à jour, 0 nouvellement installés, 5 remis à une version inférieure, 0 à enlever et 282 non mis à jour.
Il est nécessaire de prendre 20,9 Mo dans les archives.
Après cette opération, 29,7 ko d'espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer ? [O/n] o

# /usr/bin/gcc-8 --version
gcc-8 (Debian 8.3.0-6) 8.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

# rm /usr/bin/gcc
# rm /usr/bin/cc
# rm /usr/bin/g++
# ln -s /usr/bin/gcc-8 /usr/bin/gcc
# ln -s /usr/bin/gcc-8 /usr/bin/cc
# ln -s /usr/bin/g++-8 /usr/bin/g++

3ème alternative : via dpkg (longue et fastidieuse, à utiliser si les autres échouent)

J'utilisais cette méthode avant de découvrir la possibilité de le faire depuis apt. Elle permet l'installation précise (à 2 digits) de la version de gcc/g++ nécessaire, mais reste plus fastidieuse à réaliser en raison des dépendances et de la longueur des noms des paquets.

  • De même que précédemment, je trouve le nom du fichier du noyau/d'entête et la version de gcc/g++ nécessaire avec la commande “# cat /proc/version”, et j'installe ce fichier d'entête. Exemple :
# cat /proc/version
Linux version 4.9.0-12-amd64 (debian-kernel@lists.debian.org) (gcc version 6.3.0 20170516 (Debian 6.3.0-18+debu1)) #1 SMP Debian 4.9.210-1 (2020-01-20)
# apt install linux-headers-4.9.0-12-amd64
  • La version de gcc/g++ nécessaire est la 6.3.
  • Je recherche la disponibilité de cette version dans le cache des paquets (/var/cache/apt/archives). Si ce n'est pas le cas, il faut la télécharger sur le site de Debian.
    • Personnellement j'utilise ce lien de recherche de paquet Debian. L’inconvénient c'est que cela nécessite d'avoir un autre PC à côté avec une connexion internet.
    • une autre alternative existe pour trouver les versions disponibles en dépôt d'un paquet avec la commande “apt search nomdupaquet”, exemple :
# apt search gcc-6
En train de trier... Fait
Recherche en texte intégral... Fait
gcc-6/now 6.3.0-18+deb9u1 amd64  [installé, local]
  GNU C compiler

gcc-6-base/now 6.3.0-18+deb9u1 amd64  [installé, local]
  GCC, the GNU Compiler Collection (base package)

libgcc-6-dev/now 6.3.0-18+deb9u1 amd64  [installé, local]
  GCC support library (development files)

linux-compiler-gcc-6-x86/now 4.9.210-1 amd64  [installé, local]
  Compiler for Linux on x86 (meta-package)

Mais je ne comprends pas pourquoi cette même commande ne trouve pas gcc-8.3.0-6 qui est pourtant dans les dépôts stable :

# apt update
Atteint :1 http://ftp.us.debian.org/debian stable InRelease
Atteint :2 http://ftp.us.debian.org/debian testing InRelease
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
278 paquets peuvent être mis à jour. Exécutez « apt list --upgradable » pour les voir.
# apt search gcc-8 | grep 8.3.0-6

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

D'autant qu'on a vu ci-avant qu'avec le même dépôt, la commande “# apt install gcc-8=8.3.0-6” est valide, donc elle le trouve :)

  • Ensuite je télécharge les paquets nécessaires, les copie dans /var/cache/apt/archives/ (exemple : # wget http://ftp.us.debian.org/debian/pool/main/g/gcc-8/gcc-8_8.3.0-6_amd64.deb) afin de les conserver pour une éventuelle réutilisation ultérieure s'ils venaient à être désinstallés par mégarde) et les installe manuellement à coups de dpkg dans ce cache. Long et fastidieux.

Partie commune pour Synaptic, apt ou dpkg

Une fois la version de gcc/g++ requise installée, il reste à la rendre disponible au système si ce n'est pas celle qui est utilisée par défaut (rappel, pour voir la version par défaut : # gcc --version). Pour cela on met efface les liens dynamiques précédent /usr/bin/gcc, /usr/bin/cc et /usr/bin/g++, et on les ré-écrit pour qu'ils pointent vers la bonne version de gcc/g++.

Exemple, pour faire pointer ces liens vers la v.6.3 au lieu de la v.8.3 :

# rm /usr/bin/gcc
# rm /usr/bin/cc
# rm /usr/bin/g++
# ln -s /usr/bin/gcc-6 /usr/bin/gcc
# ln -s /usr/bin/gcc-6 /usr/bin/cc
# ln -s /usr/bin/g++-6 /usr/bin/g++

Quelques commandes utiles

  • version de gcc utilisée par défaut par votre système : # gcc --version
  • voir les versions déjà installées : # ls -la /usr/bin | grep gcc
  • version de gcc utilisée par le noyau courant (rappel) :
 # cat /proc/version 
Linux version 4.19.0-8-amd64 (debian-kernel@lists.debian.org) (gcc version 8.3.0 (Debian 8.3.0-6)) #1 SMP Debian 4.19.98-1 (2020-01-26)

Nota :

  • il existe une méthode plus simple à privilégier pour des besoins ponctuels avant une compilation par exemple, c'est d'utiliser la variable d'environnement CC, exemple : CC=gcc-6 ./script
  • Mais ici cette méthode simple (de variable d'environnement) n'a pas fonctionné (j'imagine que le script DKMS n'y fait pas appel ou ne la voit pas), donc pas d'autre solution que de changer les liens symboliques (en même temps ça n'est pas non plus très compliqué).
  • Si vous avez le message “unable to find the development tool 'cc' in your path. Please make sure you have the package 'gcc' installed. If gcc installed on your system, please check 'cc' is in your path”). Il suffit de créer le lien : # ln -s /usr/bin/gcc-(version) /usr/bin/cc (ici “(version)” est à remplacer par 6, 8,…).

Sur les droits root

Sous Linux on a très souvent besoin d'acquérir les droits root pour accéder aux paramètres ou fichiers système.

La plus connue, celle utilisée notamment par UBUNTU, est sans doute la commande sudo ($ sudo binaire). Personnellement à mes débuts sous Debian je ne suis pas parvenu à l'utiliser. Il me semble qu'il faut utiliser visudo qui permet d'éditer le fichier /etc/sudoers, et je crois que ceci n'est même pas nécessaire, il suffit en fait de s'ajouter au groupe sudo. Finalement j'ai laissé tomber car je trouve de toute façon pénible de devoir saisir la commande sudo avant chaque commande, tant pis pour les puristes.

Donc j'ai toujours fais ce qui faisait dresser les cheveux des puristes : me connecter en root pour faire ce que j'avais à faire. Mais je suis bien d'accord qu'il ne faut pas en abuser (on peux faire des tas de trucs dangereux pour le bon fonctionnement de son système, propager les droits root sur tous les fichiers et répertoires que l'on manipule ainsi, ou encore ouvrir les portes de son système à des scripts potentiellement malsains dans le cas de jeux par exemple, les exemples sont nombreux).

L'idée ici est tout de même de présenter quelques outils permettant de le faire :

  • $ su root (le plus classique) : on saisi le mot de passe root en console, puis de la console on lance des commandes. Il m'est arrivé (autrefois) à de nombreuses reprises de lancer des applications du bureau tel que les gestionnaires de fichiers ou éditeurs, mais tous ne l'acceptent pas. À présent j'utilise plutôt Caja qui l'intègre nativement (voir ci-après).
  • $ pkexec binaire : on retrouve assez souvent cette commande dans les raccourcis pour lancer des applications nécessitant les droits root.
  • $ gksu binaire (n'est plus en dépôt “Testing” 64-bit) : donne les droits root à l'application jusqu'à ce qu'on la ferme (là aussi je l'utilisais en général pour ouvrir un gestionnaire de fichier)
  • Caja (dans son menu “Fichier” ➜ “Ouvrir en tant qu'administrateur”) : je suis ravi que les développeurs acceptent enfin que les utilisateurs puissent s'y connecter de la sorte.
  • $ su-to-root -X -c binaire : j'ai découvert récemment (c'est elle qui m'a donné l'envie de créer ce paragraphe). Très bien aussi

Outils en mode texte

Je rassemble ici quelques docs basiques sur 2-3 outils de dépannage très utiles lorsque l'on n'a plus de console graphique.

Midnight Commander

Installation : # apt install mc gpm
(gpm est un démon de capture de la souris permettant d'utiliser la souris en mode texte sous mc !)

Doc :

Un outil qui gagne à être connu (il m'a bien rendu service). C'est un gestionnaire de fichier en mode texte qui révèle toute son utilité lorsque le bureau est planté et que l'on n'a que la console de disponible. Ses raccourcis clavier ne sont pas intuitifs (sauf ceux en bas de l'interface pour F1-F10), mais une fois que l'on a compris le fonctionnement et que l'on en connaît quelques-uns, ils évitent de fastidieuses frappes au clavier, et font de Midnight Commander un outil indispensable pour le dépannage en console.

Cerise sur le gâteau : il fonctionne avec la souris ! (à condition d'avoir installé le paquet gpm).

La plupart des commandes sont “à bascule à 2 états” : lorsque l'on applique une commande, celle-ci reste active jusqu'à ce qu'on la sélectionne à nouveau (le comportement revient à l'état précédent).

2 panneaux affichent l'arborescence courante de vos répertoires. On passe de l'un à l'autre avec la touche TAB. On peut ainsi sélectionner des répertoires avec le curseur, y rentrer (ENTER), sélectionner des fichiers, les éditer (F4), les copier (F5), les supprimer (F8), compresser/décompresser un fichier ou un répertoire (via le menu F2) et même se connecter en FTP (F9 puis dans le menu “Gauche” ou “Droite”, non testé).

D'autres vues sympa :

  • Vue arborescence : le menu arborescence (F9 pour aller dans le menu, puis dans le menu “Gauche” je sélectionne “Arborescence”) assez proche du comportement d'un gestionnaire de fichier classique, avec l'arborescence dans le panneau de gauche et le contenu de ce qui est sélectionné dans le panneau de droite.
  • Panneaux horizontaux (permet de mieux visualiser les fichiers longs) : ALT “,” (syntaxe : M-,)

Je n'avais pas compris la convention d'écriture des raccourcis :

  • C- = Maintien de la touche CTRL enfoncée et appui sur la touche de la lettre indiquée suivant le tiret en suite on relâche les 2 touches et on appui sur l'éventuelle lettre suivante. Exemple pour copier le chemin courant dans la console du bas : C-x p = maintenez de la touche CTRL enfoncée et appuyez sur la touche “x”, puis relâchez les 2 touches et appuyez sur la touche “p”)
  • M- = Idem mais avec la touche ALT.

Quelques exemples courants :

  • C-x p : copie le chemin courant sur la console en bas de l'écran
  • C-m : copie le nom du fichier sélectionné dans la console en bas de l'écran
  • C-x q : vue rapide du contenu des fichiers sélectionnés (on se promène sur les fichiers et l'on voit leur contenu)
  • C-x i : information (propriétaire du fichier, droits, …)
  • C-x c : chmod
  • C-x o : chown
  • C-x s : création d'un lien symbolique vers le fichier courant
  • C-o : basculer en console plein écran
  • C-x d : Comparer 2 répertoires
  • M-! : Vue filtrée
  • M-+ : Sélectionner des fichiers / répertoires avec critères (pour faire des copies par exemple)
  • M- : Désélectionner
  • M-* : inverser la sélection
  • M-? : Recherche de fichiers

(voir le man Français ci-avant pour les nombreuses autres commandes)

Links2

J'étais à la recherche d'un navigateur internet ne nécessitant pas d'interface graphique, pour du dépannage lorsque celle-ci ne fonctionne plus.

J'ai testé (en dépôts, paquets éponymes) : elinks lynx w3m links2
et pour l'instant c'est links2 qui me semble le plus ergonomique (à voir à l'usage).

Pour son installation : # apt install links2

Evidemment, lorsque l'on est habitué à un navigateur internet en mode graphique, ça pique un peu les yeux. Mais links2 s'en sort pas trop mal avec le peu de moyen que je lui donne.

Lancement : $ links2 https://duckduckgo.com/
(si vous ne saisissez pas d'adresse URL, le navigateur démarre sans rien afficher, tapez ESC pour faire apparaître le menu)

Quelques touches :

  • F1 : aide
  • ESC : menu
  • S : menu des signets pour enregistrer / charger un signet
  • Q : Quitter

Ca reste néanmoins très difficile de naviguer sans graphisme sur un site tel que nvidia par exemple.

Le graphisme (accéléré)

Ce paragraphe - relatif à l'accélération matérielle, ne devrait pas vous servir, car l'installateur Debian abouti à un bureau avec accélération graphique fonctionnelle.

Pour le vérifier, vous pouvez lancer le petit utilitaire suivant en console (livré avec le paquet mesa-utils) : $ glxgears

Si vous voyez une petite roue dentée tourner en 60 FPS environ, c'est que l'accélération graphique fonctionne bien sur votre PC, inutile d'aller plus loin :).

Je ne parle ci-après que de l’installation du pilote graphique nvidia car c'est le matériel dont je dispose.

Des infos sur le matériel

Quelques outils pour obtenir des infos sur votre carte graphique et sa reconnaissance par Linux

Adresses PCI :

$ lspci | egrep "3D|VGA"
1c:00.0 VGA compatible controller: NVIDIA Corporation TU106 [GeForce RTX 2070] (rev a1)

Notez que l'adresse est en hexadécimal (1Ch=28d), dans /etc/X11/xorg.conf cette même adresse est en décimal, ce qui donnera : BusID “PCI:28:0:0”

Voir comment votre matériel graphique est-il perçu et géré par votre serveur graphique Xorg :

  • Une première option (pas la plus révélatrice) est d'examiner le fichier de log du serveur d'affichage Xorg : /var/log/Xorg.0.log
  • Finalement la lecture la plus riche (merci au site KODI (Configuring resolution via xorg.conf)) :
  • On quitte (Ctrl Alt F1) Xorg et on l'arrête (à adapter) : # /etc/init.d/sddm stop
  • On lance : # X -verbose 6 > xlog.txt 2>&1
  • On revient à la console de départ et on interrompt la commande : Ctrl Alt F1 et Ctrl C
  • On édite le fichier et on le lit sur cette même console (# nano xlog.txt)

(pour différents tests on peut l'améliorer en : rm xlog.txt && X -verbose 6 > xlog.txt 2>&1)

Sa lecture :

  • permet d'obtenir notamment la fréquence de rafraîchissement de votre écran et les interprétations de vos (optionnels) paramétrages de /etc/X11/xorg.conf
  • m'aura montré que de nombreuses options (la plupart) citées sur les forums sont à présent obsolètes et ignorées car déjà implémentées par Xorg (il n'en a pas besoin).

Installation du pilote

Ce paragraphe ne traite que de l'installation du pilote graphique des cartes graphiques nVidia (car je n'ai pas de carte graphique AMD, mais ça pourra venir).

Une doc concise et claire : Lecrabeinfo (Installer le pilote propriétaire NVIDIA sur Debian Linux)

Un pilote graphique libre (dénommé “nouveau”) est intégré au noyau et chargé dès le démarrage lors de l'installation de votre distribution. Il est fonctionnel (permet notamment d'obtenir un bureau graphique) mais il est encore loin du niveau du pilote propriétaire nvidia - incontournable pour les jeux.

Ce pilote “nouveau” ne peut être utilisé simultanément avec le pilote nvidia. Si vous installez le pilote nvidia, il faudra “blacklister” le pilote “nouveau” (c'est très simple, voir ci-après) pour qu'il ne soit pas lancé au démarrage suivant.

Il est possible d'installer le pilote nvidia propriétaire depuis les dépôts ou depuis le site de Nvidia. Mais là aussi, vous devrez faire un choix : utiliser l'un ou l'autre, pas les deux en même temps.

Installation préalable et commune

  • Installez le méta-paquet des fichiers d'entête de noyaux (il installera systématiquement les fichiers d'entête des derniers noyaux disponibles) : # apt install linux-headers-amd64
  • Installez la version de gcc/cc/g++ requise pour compiler un driver compatible avec le noyau courant, et contrôlez qu'elle est active par défaut (voir le paragraphe sur les versions de gcc/g++)
  • Installez les autres utilitaires suivants : # apt install module-assistant kernel-package

Nota : Il n'est pas nécessaire de Blacklister vous-même le pilote nouveau, car l'opération est réalisée par les installateur de pilote nvidia. Je maintien la procédure ci-après pour info. Si un “# rmmod nouveau” vous renvoi un truc du genre “module in use”, ça veux dire que le pilote “nouveau” est chargé en mémoire. Pour le blacklister, dans /etc/modprobe.d/ éditez le fichier nvidia-kernel-common.conf ou un nom similaire (le nom du fichier n'a pas d'importance, seule la présence de cette ligne dans l'un des fichiers de ce répertoire compte), et ajoutez la ligne “blacklist nouveau” (sans les guillemets). À noter que si vous désinstallez tous les pilotes nvidia (pour installer le pilote propriétaire), le fichier de blacklist sera lui aussi supprimé par le processus de désinstallation.

1ere alternative : Installation du pilote nvidia (propriétaire) des dépôts

Avantage : le pilote nvidia en dépôt fonctionne (généralement) bien et sa version est upgradée automatiquement (par les mainteneurs Debian). Il se compile automatiquement à chaque fois que vous changez votre noyau Linux (grâce à l'utilitaire DKMS).

Inconvénient : si votre carte est récente, il est possible qu'il ne fonctionne pas (à tester en premier). À noter qu'il installe un grand nombre de paquets (dont le pilote propriétaire nvidia).

  • Lancez l'utilitaire (paquet éponyme ; indique quelle version de pilote installer) : $ nvidia-detect
  • Installez le pilote nvidia correspondant (en dépôt) :
    • si votre carte graphique est récente : # apt install nvidia-driver
    • si votre carte graphique est ancienne (remplacez yyy par 340 ou 390 en fonction de votre carte graphique) : # apt install nvidia-legacy-yyyxx-kernel-source
  • (pour une réinstallation manuelle : m-a a-i -f nvidia-kernel-source)

2nde alternative : Installation du pilote nvidia obtenu depuis le site du constructeur Nvidia

Avantage :

  • c'est le pilote le plus récent disponible (et le plus fiable à l'usage, quand on met à jour sa distribution) au moment où vous l'installez (néanmoins les dépôts Debian sont très réactifs). Le pilote nvidia propriétaire propose aussi l'installation de l'utilitaire DKMS (donc il se compilera lui aussi automatiquement à chaque fois que vous installerez un nouveau noyau).
  • Ce pilote est aussi bien plus clair dans ses messages que l'interface des dépôts Debian - surtout si vous repassez par l'interface “m-a” dont les messages d'anomalies sont tronqués et qui n'est pas d'une grande aide lorsque la compilation se passe mal. Le pilote du site Nvidia est à privilégier en roue de secours si le pilote des dépôts ne fonctionne pas pour vous.

Inconvénient : pas de mise à jour automatique du driver.

Installation :

  • Téléchargez le pilote sur : Nvidia (unix). ATTENTION : vérifiez à quelle branche (Latest / Legacy et dans Legacy, à quelle version) appartient votre carte graphique. Les cartes graphiques passent assez vite dans la branche Legacy. Ne vous trompez pas de version de driver sinon il refusera l'installation (et si vous avez déjà désinstallé l'accélération et n'avez plus de bureau opérationnel ça risque d'être un peu compliqué pour retourner naviguer sur le site de nvidia).
  • Autre méthode de téléchargement (si vous êtes en console) : repérez (via un autre PC ou smartphone sur le site ci-dessus) quelle est la version du driver nécessaire, et adaptez la ligne de commande suivante (adaptée à mes anciennes cartes graphiques GTX 260 et 275) : $ wget http://us.download.nvidia.com/XFree86/Linux-x86/340.108/NVIDIA-Linux-x86-340.108.run
  • Rendez le pilote exécutable (à adapter) : chmod +x NVIDIA-Linux-x86_64-430.26.run
  • Désinstallez tous les paquets nvidia* précédents (tentez votre chance avec # apt remove *nvidia*).
  • Redémarrez en mode sans échec (# reboot, puis au démarrage de Grub sélectionnez “Advanced options for Debian GNU/Linux” puis le noyau Linux souhaité comportant l'option “(recovery mode)”, validez, et en fin de démarrage tapez le mot de passe root (ne pas faire de Ctrl D qui poursuit le démarrage).
  • Lancez le pilote Nvidia par : $ ./NVIDIA-Linux-x86_64-430.26.run (à adapter en fonction de votre version).
  • Il est possible qu'il affiche l'erreur suivante (due au chargement par défaut du pilote “nouveau” lorsque votre installation Debian n'a encore jamais vue de pilote propriétaire nvidia) : “ERROR: The Nouveau kernel driver is currently in use by your system. This driver is incompatible with the NVIDIA driver, and must be disabled before proceeding. Please consult the NVIDIA driver README (…)” puis “For some distributions, Nouveau can be disabled by adding a file in the modprobe configuration directory. Would you like nvidia-installer to attempt to create this modprobe file for you?”. Répondez “Yes”. Ensuite il affiche “ERROR: Installation has failed. Please see the file '/var/log/nvidia-installer.log' for details. You may find suggestions on fixing installation problems in the REAME available on the Linux driver download page at wwww.nvidia.com.”. Mais pas de soucis, le driver nouveau a bien été désactivé pour le prochain redémarrage (vous remarquerez que la police de caractère des messages de boot restera plus grande au démarrage suivant), il suffit de rebooter le PC et de relancer le driver Nvidia ci-avant.
  • À la question : “Install NVIDIA's 32-bit compatibility libraries” : Répondez “Yes” ! Si vous voulez pouvoir jouer à Steam (toujours en 32-bit) et d'autres jeux restés en 32-bit.
  • À la question : “Would you like to run the nvidia-xconfig to automatically update your configuration file so that the NVIDIA X driver will be used when you restart X? Any pre-existing X configuration file will be backed up.” Réponse : (voir ci-dessous).
  • Rebootez : l'accélération graphique doit être opérationnelle (sinon vous l'auriez su pendant la compilation par un message d'erreur).

Nouveau le 03/05/2020 (testé avec le driver 340.108 et X.Org X Server 1.20.8, sur le PC Internet) : “Would you like to run the nvidia-xconfig to automatically update your configuration file so that the NVIDIA X driver will be used when you restart X? Jusqu'à ce jour à cette question je répondais toujours : “No”, et donc l'installateur nvidia ne créait pas de fichier /etc/X11/xorg.conf. Le serveur X démarrait sans cela (il s'auto-configure au démarrage. Mais ça c'était avant. Il semble qu'à présent (selon les messages lus dans /var/log/Xorg.0.log) au lancement de Xorg (lorsque le gestionnaire de connexion sddm ou lxdm se charge) ce dernier charge bien le module nvidia (ainsi que nouveau - malgré qu'il soit blacklisté, et une tentative de nv) mais il ne se passe rien. J'ai testé la ré-installation du driver plusieurs fois, rien n'y faisait. Mais en testant la réponse “Yes” (et donc l'installation d'un fichier /etc/X11/xorg.conf), et en redémarrant Xorg : ça marche, Xorg démarre avec de l'accélération graphique !

Si vous souhaitez désinstaller le driver propriétaire : # nvidia-installer --uninstall

Nota :

  • Les messages d'erreur de cet installateur (uniquement) se trouvent dans : /var/log/nvidia-installer.log
  • Les messages d'erreur de Xorg se trouvent dans : /var/log/Xorg.0.log
  • La version du compilateur gcc utilisée par défaut (voir le WIKI ci-avant pour savoir comment vous pouvez la changer) doit être la même que celle utilisée pour compiler le noyau (afin que ce driver lui soit compatible). Si la compilation plante, le fichier /var/log/nvidia-installer.log vous informera de la version de gcc à utiliser.

Paramétrage du serveur Xorg

Dans la majorité (totalité ?) des cas, créer un fichier /etc/X11/xorg.conf ne sert (plus) à rien car le serveur Xorg sait trouver de lui-même les configurations optimum.

Si ça ne vous intéresse pas, vous pouvez donc vous abstenir de lire ce paragraphe.

Initialisation du fichier /etc/X11/xorg.conf

Il y a plusieurs méthodes :

  • À l'aide de la commande : # X :1 -configure puis on copie le fichier /root/xorg.conf.new obtenu dans /etc/X11/xorg.conf
  • On peut aussi le créer avec le pilote nvidia (en fin d'installation du pilote notamment).
  • Mais ces méthodes ne donnent pas un fichier xorg.conf très lisible. Vous obtiendrez un fichier nettement plus compréhensible si vous le créez sur la base d'un exemple récupéré ailleurs et que vous le peaufinez vous-même. Pour base vierge, j'ai retenu l'exemple de la doc UBUNTU. Le fichier du site UBBUNTU-fr fonctionne à condition de commenter (ajout d'un # devant la ligne) la ligne “BusID “PCI:1:0:0”” puisque l'adresse du bus PCI de votre carte graphique sera très certainement différente.

Mon fichier actuel /etc/X11/xorg.conf (pour exemple) :

Section "Module"
    Load    "bitmap"
    Load    "freetype"
    Load    "glx" # client GLX pour OpenGL
    Load    "int10"
    Load    "type1"
    Load    "vbe"
EndSection

Section "Device"
    Identifier    "Carte"
     Driver         "nvidia"
#    Driver         "nouveau" # mais ne supporte pas encore la carte Geforce RTX 2070
#    Driver         "vesa"
    BusID           "PCI:28:0:0"  # à adapter pour vous
    VendorName     "NVIDIA Corporation"
EndSection

Section "Monitor"
    Identifier "Moniteur"
    
    Option     "VendorName" "HP" # Pas nécessaire, permet juste de mieux le repérer dans les logs
    Option     "ModelName" "LP3065" # Pas nécessaire, permet juste de mieux le repérer dans les logs
    
    Option     "DPMS" "false"
    Option     "IgnoreEDIDChecksum" "CRT"
    Option     "AllowDualLinkModes" "true" # Pour le driver nouveau et mon écran spécifique en DualLink

    HorizSync 19.3-96.5
    VertRefresh 59.9-59.9 

Modeline "2560x1600_60.00" 348.50  2560 2760 3032 3504  1600 1603 1609 1658 -hsync +vsync 
# Modeline "2560x1600_30.00" 164.25 2560 2696 2960 3360  1600 1603 1609 1630 -hsync +vsync

EndSection

Section "Screen"
    Identifier    "Ecran"
    Device        "Carte"
    Monitor       "Moniteur"

# Pour Edid :
Option "ExactModeTimingsDVI" "TRUE"
# A commenter pour laisser EDID trouver automatiquement les bons modes disponibles :
# Option "ModeValidation" "NoEdidModes"

    SubSection "Display"
        Depth        24
    EndSubSection
EndSection

Section "ServerLayout"
    Identifier    "Default Layout"
    Screen        "Ecran"
EndSection
Les Modelines

Les Modelines sont des lignes de paramétrage de l'affichage. Elles sont calculées avec l'utilitaire cvt (# cvt -h pour l'aide), on lance : # cvt résolHoriz résolVert fréquence_souhaitée

Exemples :

# cvt 2560 1600 60
# 2560x1600 59.99 Hz (CVT 4.10MA) hsync: 99.46 kHz; pclk: 348.50 MHz
Modeline "2560x1600_60.00" 348.50  2560 2760 3032 3504  1600 1603 1609 1658 -hsync +vsync 

# cvt 2560 1600 24
# 2560x1600 23.97 Hz (CVT) hsync: 38.95 kHz; pclk: 127.75 MHz
Modeline "2560x1600_24.00" 127.75 2560 2664 2920 3280 1600 1603 1609 1625 -hsync +vsync

Nota :

  • le driver “nouveau” ne supporte pas encore la Nvidia RTX 2070 (la liste des cartes supportées est affichée dans les logs de Xorg).
  • le driver “vesa” : c'est un driver standard, mais peu adapté aux cartes récentes, et dans mon cas il n'a pas fonctionné (il démarre X mais pas moyen de saisir mon mot de passe de connexion)
Voir comment Xorg interprète vos paramétrages

La commande : # X -verbose 6 > xlog.txt 2>&1)
produit le fichier xlog.txt dans le répertoire courant, permettant de voir comment Xorg interprète vos paramétrages. Ces logs sont très instructifs, vous permettant notamment de détecter les paramétrages inutiles ou erronés (voir un exemple dans le journal de mes recherches cité ci-avant).

Le son

La bible sur le sujet : UBUNTU-fr

Cas habituel

Le son est déjà opérationnel sans paramétrage compliqué (ceux qui ont connu oss et alsa savent combien il était compliqué autrefois). Pulseaudio est installé et opérationnel. Les touches multimédia de mon clavier sont également immédiatement opérationnelles.

Il ne reste que quelques réglages simples via le clic droit sur le symbole du haut-parleur dans la boîte à miniatures de la barre de menu (clic droit puis “Préférences du son”). Si elle plante (rare), cette application est aussi disponible via le menu Applications ➜ Son et vidéo ➜ Son, ou en console en lançant : $ mate-volume-control).

NB : à noter que si vous changez de destination sonore (du son des enceintes vers celui du casque par exemple), il est nécessaire de redémarrer votre application source (par exemple le lecteur multimédia Clémentine, ou votre jeu).

Système Audio 4.0 sur un système Audio 7.1

Je traite ici d'un cas particulier, le mien, consistant à raccorder un système Audio 4.0 sur une carte mère fournissant un système Audio 7.1

J'ai une carte mère “msi B450 Gaming Pro Carbon AC” équipée notamment d'un chipset Realtek ALC1220 avec système Audio 7.1 et une sortie S/PDIF optique. Sur ce système Audio 7.1 je viens connecter un (ancien) système Audio 4.0 Altec Lansing (un petit caisson de basse + 4 petits HP). Et c'est là où le bât blesse probablement (pour que ça marche j'ai l'impression que ma carte son nécessite une impédance sur la sortie ligne).

Ça s'est en effet un peu compliqué depuis l'achat d'un nouveau microphone (un USB SAMSON G TRACK PRO disposant aussi d'une prise casque sur laquelle je viens brancher mon nouveau casque, un DT 770 PRO 80 ohm). N'ayant plus besoin de mon ancien casque, je l'ai débranché des prises arrière de ma carte mère (il utilisait une prise USB + 1 prise casque verte + 1 prise micro rose). Dans ma nouvelle configuration je n'ai besoin de brancher sur mon PC que la prise USB (puisque je branche mon casque sur le microphone). Et là le constat est que la carte son ne sort plus rien.

La seule manière d'obtenir du son est de brancher un casque (ou un micro :) sur la prise casque de ma carte son (prise “Sortie ligne/Front/Casque” verte, voir ci-dessous). Une autre alternative (non testée pour l'instant) serait de connecter un petit HP supplémentaire (je n'en ai pas sous la main) sur cette sortie (ça ne changerait pas grand-chose au rendu sonore mais permettrait de récupérer le casque pour autre chose.

J'ai bien pensé à brancher mon nouveau casque sur cette sortie casque (verte), mais dans ce cas, dans le menu Audio il ne détecte pas ce casque et sort le son à la fois sur les HP et sur le casque (pour la carte “Family 17h” je n'ai qu'un “Connecteur : Sortie ligne” et pas de “Connecteur : Sortie casque” qui m'aurait permis de sélectionner l'un ou l'autre).

Disposition des connecteurs audio à l'arrière de ma carte mère :

S/PDIF (nc) Sortie Audio Surround (noir de l'ALTEC) (conn.) Sortie Caisson de basse (vert de l'ALTEC) (conn.)
Entrée micro (Rose) (nc) Sortie ligne/Front/Casque AV (vert du casque) (conn.) Entrée ligne / Sortie audio HP côté (nc)

Légende :

  • nc : non connecté
  • conn. : connecté

Ci-dessous les réglages retenus dans mate-volume-control :

  • En haut de l'interface, le niveau sonore de sortie
  • Onglet matériel :
    • ☑ “Family17h (Models 00h-0fh) HD Audio Controller - 1 Sortie / 2 entrées” (la carte son intégrée à ma carte mère), puis le “Paramètres du périphérique sélectionné” (en bas de l'interface) ➜ “Sortie Surround analogique 4.0 + Entrée Stéréo analogique” (ce qui a pour effet d'utiliser mes 4 petites enceintes satellites et le caisson de basse)
    • ☐ “HD Pro Webcam C920 - 1 entrée” (ma webcam), puis le “Paramètres du périphérique sélectionné” (en bas de l'interface) ➜ “Entrée Stéréo analogique”
    • ☐ “Samson G-Track Pro - 1 Sortie / 2 entrées” (mon micro avec son entrée casque + son entrée instrument), puis le “Paramètres du périphérique sélectionné” (en bas de l'interface) ➜ “Duplex stéréo analogique”
    • ☐ “TU106 High Definition Audio Controller - 1 Sortie / 1 entrée” (le système Audio de l'un de mes 2 écrans), puis le “Paramètres du périphérique sélectionné” (en bas de l'interface) ➜ “Sortie Digital Stereo (HDMI)”
  • Onglet Entrée, j'ai le choix entre :
    • ☐ “Family17h (Models 00h-0fh) HD Audio Controller Surround analogique 4.0” - Surround 4.0) : “Connecteur” sur “Sortie analogique” (pas d'autres choix)
    • ☑ “Samson G-Track Pro Stéréo analogique” - Stéréo : “Connecteur” sur “Sortie analogique” (pas d'autres choix)
    • ☐ “TU106 High Definition Audio Controller Digital Stéréo (HDMI) - Stéréo : “Connecteur” sur “Sortie analogique” (pas d'autres choix)

Rappel (bug) : pour que le son se fasse entendre sur la sortie “Family17h (Models 00h-0fh) HD Audio Controller” il faut aussi connecter la prise verte de mon ancien casque sur l'entrée Jack Verte de la carte son.

Ainsi dans l'onglet “Matériel”, lorsque je sélectionne ma carte son “Family17h” et que je clique sur le bouton “Tester les haut-parleurs”, je peux sélectionner indépendamment les 4 HP satellite et entendre distinctement le message de test correspondant (“Front Left”, “Front Right”, “Rear Left” et “Rear Right”). Le potentiomètre “Surround” sur l'une des enceintes me permet de règler la balance AVANT/ARRIERE des HP (même si ce n'est pas fait pour cela, car en même temps cela sature les graves, ce qui en devient un peu désagréable à la longue).

Redirection audio

Je traite ici de la redirection (pour son enregistrement dans un fichier) d'un flux audio avec PulseAudio

Je souhaitais enregistrer un extrait musical entendu sur une Webradio dans un fichier afin de le passer sur un site de reconnaissance musicale (AudioTag, un équivalent à l'application Shazam sur les portables) pour obtenir le nom du morceau.

Installez le paquet suivant : # apt install pavucontrol Installez votre outil d'enregistrement sonore (j'ai testé avec succès Audacity) : # apt install audacity

À noter que GNOME dispose d'un outil simple (dénommé simplement “Enregistreur de son” / gnome-sound-recorder). Il sait enregistrer le son sous différents formats sous son interface. Les sons sont enregistrés dans ~/Recordings. C'est un outil très pratique pour faire des tests rapides d'enregistrement.

pavucontrol est un outil de paramétrage de PulseAudio, permettant de régler les volumes de sortie des sources audio mais aussi de rediriger les flux audio de manière très puissante.

1ere utilisation (ensuite PulseAudio semble enregistrer le comportement) :

  • Lancez votre flux audio (web radio par exemple)
  • Lancez l'enregistrement sur votre enregistreur de son
  • puis (pas avant) lancez : $ pavucontrol
  • dans l'onglet “Enregistrement” de pavucontrol apparait alors “ALSA plug-in [Audacity]: ALSA Capture de ” et sélectionnez votre carte son (moi je sélectionne “Family17h (Models 00h-0fh) HD Audio Controller Surround analogique 4.0”).

Lorsque vous interrompez l'enregistrement sous votre enregistreur numérique (Audacity par exemple), l'onglet “Enregistrement” de pavucontrol se vide, c'est normal.

Pour la petite histoire, j'ai ensuite passé mon enregistrement de 45 secondes sur le site AudioTag et il ne l'a pas trouvé (la musique n'était vraisemblablement pas assez courante :)).

À noter qu'il existe sur GitHub un projet Shazam sous Linux mais nécessitant un enregistrement sur le site ACRCloud services. Je ne l'ai pas testé.

J'ai notamment pu tester avec succès la redirection du son de mon smartphone (activé sur celui-ci, en maintenant le doigt appuyé sur l'icône Bluetooth puis en sélectionnant “Audio pour les appels”. Tandis que l'option “Audio pour les médias” permet de rediriger la musique lue sur mon smartphone vers le PC : testé ok aussi) sur mon PC en Bluetooth et l'enregistrement de la conversation.

Le revers de la médaille c'est que c'est tellement puissant que personnellement je m'y perd un peu par moment.

Réglage du micro

Pour sélectionner la source d'enregistrement (du micro vers le logiciel type Audacity), utiliser le logiciel pavucontrol (voir ci-avant pour la méthodologie).

Désactivation des sources non désirées

Cette application pavucontrol permet notamment via son onglet “Périphérique d'entrée” de désactiver tous les micros non désirés en désélectionnant les icônes “haut-parleur” devant chaque entrée. J'ai ainsi désactivé celui de mon écran “Monitor of TU106 High Definition Audio Controller Digital Stereo (HDMI)” et de ma Webcam “HD Pro Webcam C920 Stéréo analogique” (une véritable salle d'écoute chez moi :), pour ne conserver que le microphone principal “Samson G-Track Pro Stéréo analogique” de meilleur qualité avec son bouton poussoir en façade pour couper le son.

Réglages sur le microphone lui-même

1er Sélecteur :

  • ☐ Fig 8 (aka bidirectionnel devant/derrière le micro) : pour 2 personnes face à face
  • ☑ Cardioïde (capture devant le micro) : pour du solo, face à l'étiquette SAMSON
  • ☐ Omnidirectionnel (capture à 360°) : pour plusieurs personnes autour d'une table. Inconvénient : capture plus de bruits ambiants.

Les noms semblent étranges au premier abord ; en fait ils représentent de manière figurée l'aspect de l'onde captée par le micro (et sont ainsi faciles à mémoriser). Il faut se représenter le 8 de “Fig 8” comme le micro au centre du “8”. Quant à Cardioïde il faut se représenter un cœur dans sa forme anatomique (et non pas figurative), dans laquelle la base du cœur est le micro.

2nd Sélecteur :

  • ☑ Mono : entrée microphone & instrument mélangées sous la forme d'un signal unique.
  • ☐ 2 Track :entrée microphone et entrée instrument sont envoyées sur deux pistes différentes.

3ème sélecteur :

  • ☑ Monitor On/☐ Off : marche/arrêt du moniteur direct de surveillance de latence d'enregistrement du son (engendrée par sa numérisation), depuis le casque (sans nécessiter un retour de l'ordinateur). À mettre sur OFF si l'on souhaite n'entendre que la lecture du logiciel du PC.

Réglage du niveau d'enregistrement

Que ce soit pour le niveau du micro ou de l'instrument (non testé, je n'en ai pas), le réglage du niveau se fait de la manière suivante : on met le potentiomètre correspondant au maximum et l'on teste avec la voix/instrument le niveau ne saturant plus l'entrée (lorsque l'entrée sature le voyant se met à clignoter sur le micro et l'on voit simultanément la courbe saturer sur l'enregistreur de son).

Quelques applications relatives au son

  • Pavucontrol (paquet éponyme) : l'outil indispensable pour PulseAudio, permet de contrôler quelle est le périphérique matériel associé à une application et de régler les volumes sonores. Permet aussi de faire de la redirection de son (voir ci-avant), et de bloquer les nombreuses sources sonores non désirées (le micro de la webcam et des moniteurs, pour ne conserver que celui du micro principal avec son bouton Marche/Arrêt). Les réglages sont fort heureusement mémorisés entre 2 sessions (si vous coupez une entrée sonore au cours d'une session, à la session suivante elle reste coupée !).
  • PulseEffects (paquet éponyme) : affiche un diagramme de fréquences du plus bel effet sur le bureau, en plus de permettre des tas de pré-réglages du son. En cours de test en ce qui me concerne. Après quelques tests, il a fini par planter et pas moyen de le redémarrer, même en effaçant le répertoire ~/.config/PulseEffects/. Au redémarrage suivant, planté aussi. Finalement l'astuce pour le redémarrer aura été de le lancer en console avec la commande “$ G_MESSAGES_DEBUG=pulseeffects pulseeffects” (mode debug). Mais il ne semble plus fonctionner (plus de diagramme de fréquence affiché). L'astuce finale (trouvée au même endroit) aura été de re-lancer pulseaudio en console “$ pulseaudio -k && pulseaudio –start” puis PulseEffects “$ pulseeffects”.
  • Pavumeter (paquet éponyme) : affiche un vu-mètre pour Pulseaudio sympathique sur le bureau. Néanmoins il lui manque une fonction permettant de choisir l'entrée mesurée. Car si l'on change d'entrée (des enceintes classiques vers le casque par exemple) il est nécessaire de relancer l'application car elle continue à suivre l'entrée trouvée à son lancement.
  • Enregistreur de son Gnome (gnome-sound-recorder) : il lui manque une fonction d'enregistrement à l'endroit souhaité (il enregistre les sons obligatoirement dans ~/Recordings). Néanmoins ça reste un outil très simple et facile à utiliser pour des tests d'enregistrement au micro.
  • Deepin's Voice recorder (deepin-voice-recorder) : là aussi un enregistreur de son (il enregistre les sons obligatoirement dans ~/Musique/Recordings). Un outil beau, très simple et facile à utiliser pour des tests d'enregistrement au micro.
  • Audacity (paquet éponyme) : la boîte à outils pour enregistrer du son ou le modifier (édition et effets sonores). Un must.
  • Une autre utilisation intéressante de sox avec pulseaudio pour obtenir une voix très grave (trouvée sur askubuntu):
    • créez un lien de redirection audio : $ pactl load-module module-null-sink
    • en console, lancez sox avec une hauteur / un pitch de 800 (voix très grave) : “$ sox -t pulseaudio default -t pulseaudio null pitch -800”.
    • activez votre micro
    • sous l'interface de gestion du son (accès via la zone de notification), vous verrez dans les onglets “Entrée” et “Sortie” un nouveau périphérique virtuel “Monitor of Sortie vide”. Pour que cela fonctionne, dans l'onglet “Entrée”, vous devrez probablement activer 1 fois ou 2 “Monitor of Sortie vide” à la place de votre micro puis votre micro lui-même (c'est celui-ci qui doit être retenu ensuite), et idem dans l'onglet “Sortie” entre “Monitor of Sortie vide” et votre périphérique habituel de sortie du son (c'est celui-ci qui doit être retenu en définitive). Quand ça fonctionne bien, vous voyez un barre-graphe en console (retour de sox) qui suit

vos vocalises :).

  • d'autres effets sont disponibles (non testé, voir “$ man sox”).

Les Réseaux

Ce paragraphe vient compléter le paragraphe Réseau (paramétrage simplifié) (en début de WIKI) pour développer davantage son paramétrage et son optimisation.

Le Réseau ethernet (filaire)

Tout un programme. Il me faudra encore plein de soucis techniques pour remplir ce paragraphe :))
Là encore je n'ai pas le niveau d'un administrateur réseau, je ne suis qu'un débutant qui essaie de faire marcher son matériel correctement.
Je ne vais pas me lancer dans un cours sur les quelques compétences acquises (ça serait trop long, pas d'un niveau suffisant et il y aurait très certainement des erreurs de ma part), juste un mémo et des pistes de recherche pour moi (ça m'aide dans la résolution des soucis techniques rencontrés).

Connexion ethernet (filaire) en IPv4 via une passerelle (autre PC) avec utilisation automatique du serveur DNS le moins chargé

J'ai ouvert un Journal sur la résolution DNS avec nm-tray / network-manager / network-manager-gnome pour tracer mes errances explorations sur le sujet. Je n'en conserve ici que le résultat final.

On va utiliser notamment (pour la solution retenue et fonctionnelle) :

  • network-manager : un service système pour le réseau qui gère le matériel réseau et les connexions en essayant de garder la connectivité.
  • network-manager-gnome : un outil (utilisant network-manager) qui fournit une entrée dans le Centre de contrôle de MATE (“Configuration réseau avancée”) facilitant le paramétrage Wi-Fi, et un applet pour la zone de notification GNOME (également compatible avec MATE) affichant le débit de connexion,
  • nm-tray : une interface en Qt dans la zone de notification pour NetworkManager, permettant d'activer/désactiver rapidement et facilement la connexion Wi-Fi (et de choisir la box à utiliser).
  • resolvconf : un framework réseau permettant de maintenir à jour les informations système concernant les serveurs de nom.
  • net-tools : un ensemble d'utilitaires permettant de contrôler le sous-système réseau du noyau Linux (arp, ifconfig, netstat, rarp, nameif et route)

L'idée de départ est de remplacer ma configuration précédente - issue de l'installation de ma Debian Sid, par quelque-chose de plus évolué et intégré au bureau, qui sache (enfin je l'espère) maintenir la connectivité Internet lorsqu'un serveur DNS est saturé.

En plus, ça me permet de regrouper en une seule interface mes connexions Bluetooth, Wi-Fi et filaire vers ma box et de choisir en quelques clics laquelle je souhaite utiliser. Comme j'ai déjà installé ces outils, il n'y a rien de plus à installer.

À noter que le changement du paramétrage réseau va vous faire perdre le réseau, donc ne faites cette opération que si vous êtes à l'aise avec cela. Par prudence, prévoyez de pouvoir revenir à la situation précédente en n'effaçant pas vos réglages initiaux (vous les commentez au lieu de les effacer), au cas où ça ne fonctionnerait pas pour vous.

Inconvénient important : si vous perdez le bureau (vécu : plus d'accélération graphique opérationnelle), vous n'avez plus d'internet, donc pour réparer votre système sans internet, c'est très handicapant. Donc surtout n'effacez pas (commentez-les au lieu de les effacer) vos réglages dans /etc/network/interfaces !

Avant de commencer, le paramétrage du PC passerelle (PC Internet / goup1) elle-même :

Dans ce WIKI je m'intéresse surtout à la partie paramétrage du client (le PC du Bottin). Pour être complet, je dois aussi faire un aparté sur le paramétrage de ma passerelle, que j'ai dénommé “PC Internet”, un vieux PC qui me sert à la fois de PC de dépannage si l'autre a un souci (sécurité) et de passerelle distribuant internet.

Ce PC est équipé de 3 interfaces ethernet :

  • l'interface enp4s0 (sur la carte mère) est reliée à ma Box,
  • l'interface enp6s0 (sur la carte mère) est reliée au PC du Bottin,
  • l'interface enp8s1 est une petite carte réseau additionnelle ajoutée sur le slot libre de ce PC avec un câble ethernet sur lequel mon fils (Louis) vient ponctuellement se connecter avec son portable sous Windows

Pour pouvoir utiliser le “PC Internet” en passerelle j'active sur cette machine :

  • l'IP forwarding (en IPv4 dans /etc/sysctl.conf on décommente la ligne “net.ipv4.ip_forward=1”)
  • et l'IP masquerading pour la translation d'adresse réseau (Network address translation, en IPv4 j'utilise guidedog, en dépôts, un outil graphique dédié, voir ci-après)

PC passerelle : le paramétrage de guidedog (en dépôts, opération indispensable)

ATTENTION : il faut lancer guidedog en root (via une console en root) pour qu'il enregistre vos paramétrages dans son fichier /etc/rc.guidedog (sinon au prochain démarrage vous devrez recommencer : vécu :).

Onglet “Routing” :

  • ☑ Enable routing
  • IP Masquerade : ☑ Enable IP Masquerade, ☑ Masquerade FTP, ☑ Masquerade IRC
  • C'est tout

Onglet “Forwarding” :

  • Vous pouvez y mettre quelques ports spécifiques en TCP et UDP (exemples pour le torrent : ports TCP/UDP 6881, TCP 4662, UDP 4672, TCP 5000, TCP 4661, TCP/UDP 4665, TCP 445, TCP 4242, TCP 4500, ou pour les jeux en WAN tel qu'openra : TCP 1234 → 192.168.2.2 et UDP 1234 → 192.168.2.2)

Onglet “Advanced” : ☐ (désactivé) Disable Guidedog

Vous validez et enregistrez, c'est tout.

PC passerelle - Alternative n°1 : le paramétrage du fichier /etc/network/interfaces

Cette 1ere alternative est la plus simple. Elle fait le job. Néanmoins je lui préfère à présent la 2nde alternative (voir plus bas) qui fait appel à network-manager-gnome, car elle offre un contrôle plus facile du réseau (je peux activer/désactiver les réseaux en quelques clics depuis la zone de notification de mon bureau MATE).

Pour cette 1ere alternative, il vous suffit simplement de paramétrer le fichier /etc/network/interfaces comme suit (à adapter pour vous) :

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# 1ere connexion : vers ma Box (une connexion DHCP) :
auto enp4s0
allow-hotplug enp4s0
iface enp4s0 inet dhcp

# 2nde connexion : vers le PC du Bottin (une connexion en IP statique, c'est plus simple pour le pare-feu) :
auto enp6s0
allow-hotplug enp6s0
iface enp6s0 inet static
        address 192.168.2.1
        netmask 255.255.255.0

# 3ème connexion (une petite carte réseau supplémentaire) : vers le portable de Louis (sous Windows)
auto enp8s1
allow-hotplug enp8s1
iface eth2 inet static
        address 192.168.3.1
        netmask 255.255.255.0

Ensuite rebootez votre PC (préférable) ou redémarrez le réseau (c'est le plus rapide mais pas le plus fiable) par :

# service network-manager restart

ou, si la commande service n'est pas reconnue :

# systemctl restart networking.service

Numérotation IPv4 des interfaces : Pour un petit réseau local on choisi généralement un dérivé de 192.168.x.x (avec un netmask de “255.255.255.0”, on trouve aussi la notation 192.168.x.x/24, le 24 représentant le nombre de bits de masques, je ne m'étend pas davantage 255d=FFh=11111111b, 3 x 11111111b=24bits, le reste des réseaux dépassent mes faibles compétences) en séparant bien les numérotations pour chaque interface (le 3ème digit doit être différent pour chaque interface réseau du même PC). Sur un même réseau chaque PC à son numéro (exemple 192.168.2.1 pour le serveur et 192.168.2.2 pour le client).

PC passerelle - Alternative n°2 : définir le paramétrage via network-manager (interface graphique)

Sur ce même PC Internet passerelle, au lieu de modifier ce fichier /etc/network/interfaces , vous pouvez le faire depuis le Centre de configuration de MATE. Cela paraît long - parce que j'ai listé ci-dessous le contenu de tous les onglets de l'interface afin qu'il n'y ai pas de zones d'ombres, mais il n'y a pas grand-chose à saisir en réalité.

L'intérêt de cette 2nde alternative est un contrôle plus facile et rapide depuis la zone de notification de mon bureau MATE (on peut activer/désactiver une interface en quelques clics).

Pour cela, commencez par installer sur ce PC les paquets : # apt install network-manager network-manager-gnome nm-tray resolvconf net-tools

  • Puis dans le Centre de configuration MATE, section “Internet et réseau”, cliquez sur l'icône “Configuration réseau avancée”.
  • Une fenêtre “Network Connections” (ou “Connexion réseau”) s'ouvre.
  • Cliquez sur le signe ”+” pour créer une nouvelle connexion (auquel je fais référence par : “fichier de connexion”).

1. Paramétrage de la connexion vers ma Box

Sous ce nouveau fichier de connexion que j'ai par la suite nommé “Box” j'ai :

Onglet Ethernet :

  • Périphérique : enp4s0 (via le déroulant)
  • Adresse MAC clonée : (vide)
  • MTU : automatique (par défaut)
  • Wake on LAN : ☑ Par défaut (par défaut)
  • Mot de passe Wake on LAN : (vide)
  • Négociation de lien : Ignorer (par défaut)
  • Vitesse : (désactivé)
  • Duplex : (désactivé)

Onglet Général :

  • ☑ Se connecter automatiquement avec priorité 0 (par défaut, ce qui permet la connexion dès le démarrage)
  • ☑ Tous les utilisateurs peuvent se connecter à ce réseau (par défaut)
  • ☐ Se connecter automatiquement au VPN (par défaut)
  • Connexions limitées : Automatique (par défaut)

Onglet Sécurité 802.1X

  • ☐ Utiliser la sécurité 802.1X pour cette connexion (par défaut)

Onglet DCB

  • ☐ Utiliser Data Center Bridging (DCB) pour cette connexion (par défaut)

Onglet Proxy

  • Méthode : Aucune

Onglet Paramètres IPv4

  • Méthode : Automatique (DHCP)
  • Adresses : (vide) (adresse), (vide) (Masque de réseau), (vide) (Passerelle) (par défaut)
  • Serveurs DNS : vide (par défaut)
  • Domaines de recherche : vide (par défaut)
  • ID de client DHCP : désactivé (par défaut)
  • ☐ Requiert un adressage IPv4 pour que cette connexion fonctionne (par défaut)
  • Bouton “Routes…” : (vide)

Onglet Paramètres IPv6

  • Méthode : Automatique
  • Adresse statique supplémentaire : (vide)(par défaut)
  • Serveurs DNS supplémentaires : (vide)(par défaut)
  • Domaines de recherche supplémentaires : (vide)(par défaut)
  • Extension de confidentialité IPv6 : Activé (adresse temporaire préférée)(par défaut)
  • Mode de génération d'adresse IPv6 : EUI64 (par défaut)
  • ☐ Requiert un adressage IPv6 pour que cette connexion fonctionne (par défaut)

2. Paramétrage de la connexion vers goup2net

Sous ce nouveau fichier de connexion que j'ai par la suite nommé “goup2net” j'ai :

Onglet Ethernet :

  • Périphérique : enp6s0 (via le déroulant)
  • Adresse MAC clonée : (vide)
  • MTU : automatique (par défaut)
  • Wake on LAN : ☑ Par défaut (par défaut)
  • Mot de passe Wake on LAN : (vide)
  • Négociation de lien : Automatique
  • Vitesse : (désactivé)
  • Duplex : (désactivé)

Onglet Général :

  • ☑ Se connecter automatiquement avec priorité 0 (par défaut, ce qui permet la connexion dès le démarrage)
  • ☑ Tous les utilisateurs peuvent se connecter à ce réseau (par défaut)
  • ☐ Se connecter automatiquement au VPN (par défaut)
  • Connexions limitées : Automatique (par défaut)

Onglet Sécurité 802.1X

  • ☐ Utiliser la sécurité 802.1X pour cette connexion (par défaut)

Onglet DCB

  • ☐ Utiliser Data Center Bridging (DCB) pour cette connexion (par défaut)

Onglet Proxy

  • Méthode : Aucune

Onglet Paramètres IPv4

  • Méthode : Manuel
  • Adresses : 192.168.2.1 (adresse), 24 (Masque de réseau), (vide) (Passerelle)
  • Serveurs DNS : vide (par défaut)
  • Domaines de recherche : vide (par défaut)
  • ID de client DHCP : désactivé (par défaut)
  • ☐ Requiert un adressage IPv4 pour que cette connexion fonctionne (par défaut)
  • Bouton “Routes…” : (vide)

Onglet Paramètres IPv6

  • Méthode : Automatique (par défaut)
  • Adresses : (désactivé)
  • Serveurs DNS : (désactivé)
  • Domaines de recherche : (désactivé)
  • ID de client DHCP : (désactivé)
  • ☐ Requiert un adressage IPv6 pour que cette connexion fonctionne (par défaut)
  • Bouton “Routes…” : (vide)

3. Paramétrage de la connexion vers le PC portable de Louis

Sous ce nouveau fichier de connexion que j'ai par la suite nommé “louis” j'ai :

Onglet Ethernet :

  • Périphérique : enp8s1 (via le déroulant)
  • Adresse MAC clonée : (vide)
  • MTU : automatique (par défaut)
  • Wake on LAN : ☑ Par défaut (par défaut)
  • Mot de passe Wake on LAN : (vide)
  • Négociation de lien : Automatique
  • Vitesse : (désactivé)
  • Duplex : (désactivé)

Onglet Général :

  • ☑ Se connecter automatiquement avec priorité 0 (par défaut, ce qui permet la connexion dès le démarrage)
  • ☑ Tous les utilisateurs peuvent se connecter à ce réseau (par défaut)
  • ☐ Se connecter automatiquement au VPN (par défaut)
  • Connexions limitées : Automatique (par défaut)

Onglet Sécurité 802.1X

  • ☐ Utiliser la sécurité 802.1X pour cette connexion (par défaut)

Onglet DCB

  • ☐ Utiliser Data Center Bridging (DCB) pour cette connexion (par défaut)

Onglet Proxy

  • Méthode : Aucune

Onglet Paramètres IPv4

  • Méthode : Manuel
  • Adresses : 192.168.3.1 (adresse), 24 (Masque de réseau), (vide) (Passerelle)
  • Serveurs DNS : vide (par défaut)
  • Domaines de recherche : vide (par défaut)
  • ID de client DHCP : désactivé (par défaut)
  • ☐ Requiert un adressage IPv4 pour que cette connexion fonctionne (par défaut)
  • Bouton “Routes…” : (vide)

Onglet Paramètres IPv6

  • Méthode : Automatique (par défaut)
  • Adresses : (désactivé)
  • Serveurs DNS : (désactivé)
  • Domaines de recherche : (désactivé)
  • ID de client DHCP : (désactivé)
  • ☐ Requiert un adressage IPv6 pour que cette connexion fonctionne (par défaut)
  • Bouton “Routes…” : (vide)

ATTENTION : NE PAS OUBLIER CI-DESSOUS (j'écris ça pour moi :) :

Puis éditez le fichier /etc/NetworkManager/NetworkManager.conf qui contient avant modification :

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

et remplacez “managed=false” par “managed=true”
(si vous souhaitez revenir à votre configuration précédente n'oubliez pas de faire l'inverse)

L'option “managed=true” a parfois tendance à revenir seule à “managed=false”, et dans ce cas il n'y a plus de réseau. À surveiller (est-ce dû à la mise à jour du paquet correspondant ou à la détection par le système de ma modification du fichier /etc/network/interfaces lorsque j'ai besoin de réseau en dehors du serveur Xorg ?)

Ensuite :

  • clic droit sur l'icône de nm-tray dans la zone de notification du bureau (ressemble à un petit rectangle)
  • Sélectionnez “Informations de connexion”. Pour l'instant la fenêtre est probablement vide, mais lorsque la connexion s'établie elle vous donne les paramètres utilisés (pour info uniquement).
  • clic gauche sur l'icône de nm-tray, et décochez puis recochez “Activer le réseau”, ce qui aura pour effet de réinitialiser le réseau. La fenêtre “Informations de connexion” vous affiche les paramètres correspondants.
  • Votre connexion internet est opérationnelle. That's all folks! :)

Retour au PC du Bottin :

Si vous ne l'avez pas déjà fait, là aussi commencez par installer les paquets : # apt install network-manager network-manager-gnome nm-tray resolvconf net-tools

Pour rappel, les valeurs utilisées sous l'installateur Debian :

  • Interface : enp24s0
  • Adresse : 192.168.2.2/24
  • Gateway : 192.168.2.1
  • dns-nameservers 217.27.40.240 217.27.40.241

Mon cas est un peu spécifique, puisque je passe par mon autre PC (le “PC Internet”, un “vieux coucou”, en 192.168.2.1) qui historiquement me sert de pare-feu et de serveur internet pour ce PC et celui de Louis).

Mon interface réseau filaire (ma carte réseau) est nommée ci-après : enp24s0

Ces réglages se retrouvent ensuite dans le fichier /etc/network/interfaces :

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug enp24s0
iface enp24s0 inet static
	address 192.168.2.2/24
	gateway 192.168.2.1
	# dns-* options are implemented by the resolvconf package, if installed
	dns-nameservers 217.27.40.240 217.27.40.241

Sauf si vous avez installé le paquet resolvconf - auquel cas les adresses DNS se trouvent dans /etc/resolv.conf qui est lui-même un lien symbolique qui pointe vers /etc/resolvconf/run/resolv.conf

Nota dans le cas de cette ancienne méthode : pour la résolution de nom, on peut soit indiquer les noms de serveurs DNS dans ce fichier (ligne “dns-nameservers 217.27.40.240 217.27.40.241” ci-dessus), soit ne pas préciser cette ligne et mettre ces adresses (une par ligne) dans le fichier /etc/resolv.conf (mais dans ce cas pensez à désinstaller au préalable le paquet resolvconf - qui sinon viendra écraser vos modifications dès le prochain démarrage de votre PC)

Inconvénient important : si vous perdez le bureau (vécu : plus d'accélération graphique opérationnelle), vous n'avez plus d'internet, donc pour réparer votre système sans internet, c'est très handicapant. Donc surtout n'effacez pas (commentez-les au lieu de les effacer) vos réglages dans /etc/network/interfaces !

On commence donc par simplifier / commenter (car je préfère conserver la possibilité de revenir en arrière rapidement si je ne suis plus satisfait) une bonne partie de ces commandes, ce qui donne pour le fichier /etc/network/interfaces :

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
# allow-hotplug enp24s0
# iface enp24s0 inet static
#	address 192.168.2.2/24
#	gateway 192.168.2.1
	# dns-* options are implemented by the resolvconf package, if installed
#	dns-nameservers 217.27.40.240 217.27.40.241

ATTENTION : NE PAS OUBLIER CI-DESSOUS (j'écris ça pour moi :) :

Puis éditez le fichier /etc/NetworkManager/NetworkManager.conf qui contient avant modification :

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

et remplacez “managed=false” par “managed=true”
(si vous souhaitez revenir à votre configuration précédente n'oubliez pas de faire l'inverse)

L'option “managed=true” a parfois tendance à revenir seule à “managed=false”, et dans ce cas il n'y a plus de réseau. À surveiller (est-ce dû à la mise à jour du paquet correspondant ou à la détection par le système de ma modification du fichier /etc/network/interfaces lorsque j'ai besoin de réseau en dehors du serveur Xorg ?)

Ensuite rebootez votre PC (préférable) ou redémarrez le réseau (c'est le plus rapide mais pas le plus fiable) par :

# service network-manager restart

ou, si la commande service n'est pas reconnue :

# systemctl restart networking.service

Pour voir l'état du réseau : # systemctl status -l networking.service

  • Puis dans le Centre de configuration MATE, section “Internet et réseau”, cliquez sur l'icône “Configuration réseau avancée”.
  • Une fenêtre “Network Connections” (ou “Connexion réseau”) s'ouvre.
  • Cliquez sur le signe “+” pour créer une nouvelle connexion (auquel je fais référence par : “fichier de connexion”).

Sous ce nouveau fichier de connexion que j'ai par la suite nommé “Connexion Ethernet (enp24s0)” j'ai :

Onglet Ethernet :

  • Périphérique : enp24s0 (via le déroulant)
  • Adresse MAC clonée : (vide)
  • MTU : automatique
  • Wake on LAN : ☑ Par défaut (par défaut)
  • Mot de passe Wake on LAN : (vide)
  • Négociation de lien : Automatique
  • Vitesse : (désactivé)
  • Duplex : (désactivé)

Onglet Général :

  • ☑ Se connecter automatiquement avec priorité 0 (par défaut)
  • ☑ Tous les utilisateurs peuvent se connecter à ce réseau (par défaut)
  • ☐ Se connecter automatiquement au VPN (par défaut)
  • Connexions limitées : Automatique (par défaut)

Onglet Sécurité 802.1X

  • ☐ Utiliser la sécurité 802.1X pour cette connexion (par défaut)

Onglet DCB

  • ☐ Utiliser Data Center Bridging (DCB) pour cette connexion (par défaut)

Onglet Proxy

  • Méthode : Aucune

Onglet Paramètres IPv4

  • Méthode : Manuel
  • Adresses : 192.168.2.2 (adresse), 24 (Masque de réseau), 192.168.2.1 (Passerelle)
  • Serveurs DNS : 217.27.40.240, 217.27.40.241 (DNS de Free, ajoutez-en, voir + bas au # “Infos annexes”)
  • Domaines de recherche : vide (par défaut)
  • ID de client DHCP : désactivé (par défaut)
  • ☐ Requiert un adressage IPv4 pour que cette connexion fonctionne (par défaut)
  • Bouton “Routes…” : (vide)

Onglet Paramètres IPv6

  • Méthode : Ignore (pour l'instant, mais je regarde si je peux faire fonctionner également l'IPv6)
  • Adresses : (désactivé)
  • Serveurs DNS : (désactivé)
  • Domaines de recherche : (désactivé)
  • ID de client DHCP : (désactivé)
  • ☐ Requiert un adressage IPv6 pour que cette connexion fonctionne (par défaut)
  • Bouton “Routes…” : (vide)

Ensuite :

  • clic droit sur l'icône de nm-tray dans la zone de notification du bureau (ressemble à un petit rectangle)
  • Sélectionnez “Informations de connexion”. Pour l'instant la fenêtre est probablement vide, mais lorsque la connexion s'établie elle vous donne les paramètres utilisés (pour info uniquement).
  • clic gauche sur l'icône de nm-tray, et décochez puis recochez “Activer le réseau”, ce qui aura pour effet de réinitialiser le réseau. La fenêtre “Informations de connexion” vous affiche les paramètres correspondants.
  • Votre connexion internet est opérationnelle. That's all folks! :)

Infos annexes

Ajoutez (dans l'ordre de vos préférences) d'autres serveurs DNS (accélérera vos connexions si le serveur DNS de votre FAI est lent) : Lifewire (Free and Public DNS Servers) (une excellente doc sur les serveurs DNS gratuits alternatifs disponibles)

nm-tray me permet à présent :

  • (via son menu “Informations de débogage” et dans le dépliant “root”) de choisir pour ma connexion internet, entre la connexion filaire (Ethernet passant par mon autre PC) ou la connexion Wi-Fi (directe à ma box).
  • D'activer ou désactiver le Wi-Fi en un clic.
  • D'activer ou de désactiver tout le réseau en un clic.

And last but not least, les connexions aux pages internet sont redevenues rapides :)
Ça me convient parfaitement.

Infos en console lorsque la connexion est fonctionnelle :

$ route -n
Table de routage IP du noyau
Destination    Passerelle    Genmask         Indic Metric Ref Use Iface
0.0.0.0        192.168.2.1   0.0.0.0         UG    100    0   0   enp24s0
192.168.2.0    0.0.0.0       255.255.255.0   U     100    0   0   enp24s0

$ route
Table de routage IP du noyau
Destination    Passerelle    Genmask         Indic Metric Ref Use Iface
default        _gateway      0.0.0.0         UG    100    0   0   enp24s0
localnet       0.0.0.0       255.255.255.0   U     100    0   0   enp24s0

$ ifconfig -a
enp24s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
      inet 192.168.2.2  netmask 255.255.255.0 broadcast 192.168.2.255
      inet6 fe80::2d8(...)
      (...)

$ nmcli d
DEVICE   TYPE      STATE          CONNECTION                      
enp24s0  ethernet  connecté       Connexion Ethernet (enp24s0) (la ligne est affichée en vert)
wlo1     wi-Fi     indisponible   --                           (la ligne est affichée en gris)
lo       loopback  non-géré       --                           (la ligne est affichée en gris)

$ ping 192.168.2.1
PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.
64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=1025ms
64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=0.099 ms
(Ctrl C)
--- 192.168.2.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1025ms 
rtt min/avg/max/mdev = 0.099/0.113/0.128/0.014 ms

$ ping yahoo.net
PING yahoo.net (74.6.136.151) 56(84) bytes of data.
64 bytes from w2.src1.vip.bf1.yahoo.com (74.6.136.151): icmp_seq=1 ttl=42 time=118 ms
64 bytes from w2.src1.vip.bf1.yahoo.com (74.6.136.151): icmp_seq=2 ttl=42 time=118 ms
^C
--- yahoo.net ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 117.799/118.068/118.338/0.269 ms

Remarque : Ne vous préoccupez pas du Metric (100 ou 0, ça ne le gêne pas du tout :)), ni du mtu de 1500.

nm-tray (dans “Informations de connexion”) m'affiche :

Général
Interface:             Ethernet (enp24s0)
Adresse matériel:      00:D8:xx:xx:xx:xx
pilote:                igb
Vitesse:               1000000 Kb/s

IPv4
Adresse IP:            192.168.2.2
Masque de sous-réseau: 255.255.255.0
Route par défaut:      192.168.2.1
DNS(1):                217.27.40.240
DNS(2):                217.27.40.241
DNS(3):                8.8.8.8

(j'ai ensuite testé d'autres DNS à la place de ceux-ci : ça marche très bien)

Et lorsque je clique sur l'icône de connexion de network-manager-gnome dans la barre des tâches je vois çà :

Réseau Ethernet
   Connexion Ethernet (enp24s0)
   Se déconnecter
Réseau Wi-Fi
   Le réseau Wi-Fi est désactivé
.......................
Connexions VPN   >

Connexion ethernet (filaire) en IPv6 via une passerelle (autre PC) avec utilisation automatique du serveur DNS le moins chargé

Pour l'instant je ne sais pas faire :))
Je laisse ce paragraphe pour mémo. J'espère y arriver un jour.
Je sais par contre me connecter en IPv6 en Wi-Fi (voir le paragraphe Le Wi-Fi (en IPv4 et IPv6!) ci-avant).

Je suis bloqué parce que :

  • l'outil que j'utilise sur ma passerelle, guidedog n'est à priori plus maintenu et ne fonctionne qu'en IPv4 pour l'instant. L'autre alternative est iptables ou nftables (son remplaçant), mais ces outils sont trop arides pour moi, je ne souhaite pas y mettre les mains.
  • l'IP forwarding fonctionne bien - et logiquement, en IPv4, mais en IPv6 il se comporte différemment (il me désactive le réseau IPv6 sur le “PC Internet”). Je n'ai pour l'instant pas compris cette manière de fonctionner.

Sur le PC du Bottin, je suis à peu près sûr de mes réglages sous network-manager-gnome (accessible dans le Centre de configuration MATE, section “Internet et réseau”, cliquez sur l'icône “Configuration réseau avancée”) :

Onglet IPv6 Settings

  • Method : Manual
  • Addresses : fe80::2d8:61ff:fe4f:2fd (“Adress” : l'adresse IPv6 locale du PC du Bottin obtenue par un “$ ifconfig -a” en console sur ce PC) / 64 (“Prefix”, le netmask pour un réseau IPv6) / fe80::221:85ff:fe34:d3e2(“Gateway”, l'adresse IPv6 locale du “PC Internet” obtenue par un “$ ifconfig -a” en console sur ce PC)
  • DNS servers : 2a01:e00::2, 2a01:e00::1, 2620:119:35::35, 2620:119:53::53 (les 2 premières sont les adresses DNS IPv6 de free, les 2 autres celles d'OpenDNS au cas où celles de Free feraient défaut)
  • Additional search domains : vide (par défaut)
  • IPv6 privacy extensions : Disabled (par défaut)
  • IPv6 address generation mode : Stable privacy (par défaut)

* ☐ Requiert un adressage IPv6 pour que cette connexion fonctionne (désactivé, par défaut)

  • Bouton “Routes…” : (pas utilisé, rien de défini sous ce menu additionnel)

Le Bluetooth

Il s'agit ici de la version allégée (sans trop de pédagogie) de ma documentation initiale.
Si la version longue vous intéresse, consultez le journal correspondant : Installation du Bluetooth

C'est encore expérimental pour moi, ma nouvelle carte mère (une MSI B450 Gaming pro carbon AC) est équipée d'une antenne WIFI et d'une antenne Bluetooth. J'espère pouvoir m'amuser un peu avec.

Le noyau utilisé :

# uname -a
Linux goup2net 4.19.0-5-amd64 #1 SMP Debian 4.19.37-5 (2019-06-19) x86_64 GNU/Linux

Quelques documentations :

On va utiliser notamment :

  • rfkill (paquet éponyme, déjà installé par les dépendances) : un outil permettant d'activer/désactiver les périphériques sans fil,
  • blueman-manager (paquet blueman) : un outil de gestion de la connexion Bluetooth. Il permet de lancer des recherches de périphériques, de les valider, de les paramétrer et de faire des échanges de fichiers.
  • Différents drivers/firmwares (paquets firmware-iwlwifi, et bluez-firmware) et infrastructures logicielles pour le Bluetooth (paquets bluetooth bluez bluez-tools),
  • Pulseaudio (paquet éponyme, le serveur de son), mais aussi pavucontrol (paquet éponyme, PulseAudio Volume Control, pour un contrôle plus fin des paramétrages sonores) et pasystray (paquet éponyme, PulseAudio controller for the system tray, permettant d'accéder plus facilement aux paramètres de pavucontrol via son raccourci situé dans la zone de notification).

Installation :

Nota : le paquet firmware-iwlwifi listé ci-après couvre les appareils (votre carte Wireless) basés sur Intel. Si votre matériel est basé sur un autre composant, il faudra remplacer ce paquet par un autre (firmware-atheros pour Qualcomm, ou firmware-realtek pour Realtek).

  • Installez les paquets suivants : # apt install firmware-iwlwifi bluez-firmware blueman bluetooth bluez bluez-tools rfkill pulseaudio-module-bluetooth pasystray pavucontrol
  • Redémarrez votre PC (nécessaire pour que les firmwares soient chargés au démarrage, un “modprobe” ne suffit pas).
  • Vous pouvez à présent vous rendre sur blueman-manager (il se charge dans la zone de notification sur le bureau). Lorsque vous cliquez sur le bouton “Rechercher”, un barre-graphe en bas de l'interface montre une recherche.
  • Ouvrez votre tablette, activez le Bluetooth, et relancez la recherche sur blueman-manager : il vous la trouve.
  • Vous pouvez tester l'envoi d'un fichier, une fenêtre s'ouvre sur la tablette, acceptez. Vous pourrez voire le transfert se faire via blueman-manager. Une fois terminé, sur la tablette vous cliquez sur votre gestionnaire de fichiers, et dans la “Catégorie Téléchargement” vous verrez votre fichier.
  • Vous pouvez aussi bien-sur faire l'inverse, lancer une recherche Bluetooth depuis votre tablette : sous blueman-manager dans le menu “Adaptateur” puis “Préférences”, sélectionnez “Temporairement visible” et règlez sur 5 minutes (il y a d'autres options), puis lancez une recherche Bluetooth depuis la tablette, celle-ci trouve le PC, propose un mot de passe, et ensuite sous blueman-manager il vous demande de confirmer que le mot de passe (qu'il a reçu) est le bon, validez, et ils sont appairés.

Pour jouer de la musique située la tablette sur votre PC :

  • Il suffit de lancer la connexion depuis la tablette (goup2net apparaît dans la liste des périphériques appairés, il suffit de le sélectionner).
  • Il n'y a rien à sélectionner sous PulseAudio : lorsque la tablette et le PC sont appairés, le son est automatiquement joué sous PulseAudio, le flux de son de la tablette est géré comme une application classique, elle apparaît dans l'onglet “Applications” avec un icone Firefox et le nom “AudioPC Server”.

Cas particulier de mon enceinte Bluetooth :

En effet pour moi, cette enceinte Bluetooth n'était pas reconnue, et j'obtenais en console l'erreur “Sap driver initialization failed.” au démarrage du Bluetooth :

# /etc/init.d/bluetooth status
● bluetooth.service - Bluetooth service
   Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2019-07-07 11:35:46 CEST; 3min 9s ago
     Docs: man:bluetoothd(8)
 Main PID: 14270 (bluetoothd)
   Status: "Running"
    Tasks: 1 (limit: 4915)
   Memory: 1.5M
   CGroup: /system.slice/bluetooth.service
           └─14270 /usr/lib/bluetooth/bluetoothd

juil. 07 11:35:46 goup2net bluetoothd[14270]: Bluetooth daemon 5.50
juil. 07 11:35:46 goup2net systemd[1]: Started Bluetooth service.
juil. 07 11:35:46 goup2net bluetoothd[14270]: Starting SDP server
juil. 07 11:35:46 goup2net bluetoothd[14270]: Bluetooth management interface…zed
juil. 07 11:35:46 goup2net bluetoothd[14270]: Sap driver initialization failed.
juil. 07 11:35:46 goup2net bluetoothd[14270]: sap-server: Operation not perm…(1)
juil. 07 11:35:47 goup2net bluetoothd[14270]: Endpoint registered: sender=:1…rce
juil. 07 11:35:47 goup2net bluetoothd[14270]: Endpoint registered: sender=:1…ink
juil. 07 11:35:57 goup2net bluetoothd[14270]: Endpoint unregistered: sender=…rce
juil. 07 11:35:57 goup2net bluetoothd[14270]: Endpoint unregistered: sender=…ink
Hint: Some lines were ellipsized, use -l to show in full.

Le bug a été résolu grâce aux documentations :

En effet, il est précisé que SAP (SIM Access Profile) n'est pas très utile et peut-être inhibé en éditant le fichier /etc/systemd/system/bluetooth.target.wants/bluetooth.service pour modifier la ligne :

ExecStart=/usr/lib/bluetooth/bluetoothd 
en : 
ExecStart=/usr/lib/bluetooth/bluetoothd --noplugin=sap

Il ne reste qu'à redémarrer le service :

# systemctl daemon-reload
# service bluetooth restart
# /etc/init.d/bluetooth status
● bluetooth.service - Bluetooth service
   Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2019-07-07 12:07:27 CEST; 16s ago
     Docs: man:bluetoothd(8)
 Main PID: 1829 (bluetoothd)
   Status: "Running"
    Tasks: 1 (limit: 4915)
   Memory: 1.4M
   CGroup: /system.slice/bluetooth.service
           └─1829 /usr/lib/bluetooth/bluetoothd --noplugin=sap

juil. 07 12:07:27 goup2net systemd[1]: Starting Bluetooth service...
juil. 07 12:07:27 goup2net bluetoothd[1829]: Bluetooth daemon 5.50
juil. 07 12:07:27 goup2net systemd[1]: Started Bluetooth service.
juil. 07 12:07:27 goup2net bluetoothd[1829]: Starting SDP server
juil. 07 12:07:27 goup2net bluetoothd[1829]: Excluding (cli) sap
juil. 07 12:07:27 goup2net bluetoothd[1829]: Bluetooth management interface 1.14 initialized

Ca ne charge plus sap et donc plus d'erreur, et en plus ça débloque la reconnaissance de l'enceinte Bluetooth.

On rappuie sur le bouton marche/arrêt de l'enceinte Bluetooth, ET sur la touche en forme “Space Invaders” sur le côté de l'enceinte, on relance une recherche de périphérique Bluetooth et elle apparaît enfin sur l'interface Blueman sur le PC.

Autres réglages à faire :

  • Pour que ça apparaisse sous PulseAudio, il faut paramétrer la connexion sous blueman-applet (clic gauche sur l'icône Bluetooth de la zone de notification puis “Périphériques…”), vous sélectionnez votre enceinte (pour moi “JBL Flip 4”) et cliquez sur le menu “Périphérique”, ce qui vous donne accès à 3 options “Headset”, “Handsfree” ou “Synchronie Audio”.
  • J'ai sélectionné “Synchronie Audio” et obtenu le bip caractéristique de synchronisation qui se fait entendre sur mon enceinte, et sous PulseAudio à l'onglet “Sortie”, je vois apparaitre “JBL Flip 4”, je la sélectionne mais le son de la musique reste sur les enceintes de mon PC tandis que les sons système se font entendre sur ma JBL (particulièrement si je change le volume sonore dans l'onglet “Sortie”, j'ai bien le bip de retour plus ou moins fort sur la JBL), mais pas (encore) la musique :). À l'onglet “Matériel” je vois aussi “JBL Flip 4” et je peux lancer les tests (“Front left” et “Front Right”). À l'onglet “Applications” je vois mon lecteur “Clémentine”, je peux modifier le volume, mais le son n'est pas redirigé vers ma JBL.

À ce stade votre enceinte Bluetooth est totalement opérationnelle. Si la musique ne se fait pas encore entendre dessus, c'est juste que l'application PulseAudio de la zone de notification (clic gauche sur l'icône en forme de Haut-Parleur puis “Préférences du son”) ne donne qu'un accès partiel aux paramétrages du son ! Notamment l'onglet “Applications” est incomplet !
Il faut passer par l'utilitaire pavucontrol (paquet éponyme, accessible dans le menu de MATE : “Applications” ➜ “Son et vidéo” ➜ “Contrôle du volume PulseAudio”. Dans son onglet “Lecture”, pour l'application Clémentine (mon lecteur Audio) il y a en plus un bouton permettant de sélectionner la sortie. Par défaut il est chez moi sur “Family 17h (Models 00h-0fh) HD Audio Controller Surround analogique 4.0”, il suffit de cliquer sur le bouton et de sélectionner “JBL Flip 4”) et … ça marche ! :)

On peut rendre la chose plus aisée en installant le paquet pasystray (j'ai ajouté cette entrée ci-dessous aux paquets à installer, et je lance l'utilitaire pasystray au démarrage de MATE).

À présent, la sélection (“départ arrêté” :) se passe ainsi :

  • j'appuie sur le bouton “marche/arrêt” de l'enceinte Bluetooth : la connexion se fait automatiquement et le son se fait entendre sur la JBL (le volume sonore se règle à partir de la zone de notification : clic gauche sur le petit icône en forme de Haut-Parleur - lui-aussi, puis “Volume Control…”, onglet “Lecture” où l'on a accès au curseur de réglage du volume sonore)
  • j'appuie à nouveau sur le bouton “marche/arrêt” de l'enceinte Bluetooth : la connexion s'interrompt et le son repasse automatiquement sur les enceintes du PC: génial !

Le Wi-Fi (en IPv4 et IPv6!)

IMPORTANT : Avant de configurer le Wi-Fi, commencez par configurer le Bluetooth (ci-avant) car une grande partie des réglages est commune et je n'ai ré-itéré ici ni les explications ni les installations correspondantes.

Il s'agit ici de la version courte (plus orientée WIKI) de mes tests. Pour la version longue (journal), voir Le Wi-Fi

Là aussi je découvrais totalement, puisque je n'avais auparavant jamais eut de matériel de ce type (j'ai eut autrefois un portable sous Linux mais n'utilisais pas sa connexion Wi-Fi). L'idée ici pour moi était de rassembler de l'information pour me l'approprier, d'organiser mes idées et recherches, et de capitaliser du savoir (pour l'éventuelle fois prochaine, que j'espère la plus tardive :).

Dans un premier temps j'ai envie de voir si je peux me connecter directement sur ma Freebox en Wi-Fi (sans passer par le PC Internet, ce qui se révèle très utile en dépannage).

Quelques docs (inutile de ré-inventer la roue) :

  • Celle d'UBUNTU-fr (ce qui se fait de mieux, avec Arch Linux) : Wi-Fi

Les paquets disponibles :(sous synaptic, filtrer sur wireless)

Les paquets complémentaires à installer (par rapport à la connexion Bluetooth) : # apt install network-manager-gnome nm-tray wireless-tools

On va utiliser notamment (pour la solution retenue et fonctionnelle) :

  • rfkill (paquet éponyme, déjà installé par les dépendances) : un outil permettant d'activer/désactiver les périphériques sans fil,
  • iw (paquet éponyme, déjà installé par les dépendances) : un outil pour configurer les périphériques sans fil,
  • lspci (fait partie de toutes les distributions) : un outil permettant de lister les périphériques connectés au bus PCI, c'est à dire l'essentiel de votre matériel.
  • network-manager-gnome : un service système pour le réseau qui gère le matériel réseau et les connexions en essayant de garder la connectivité.
  • network-manager-gnome : un outil (utilisant network-manager) qui fournit une entrée dans le Centre de contrôle de MATE (“Configuration réseau avancée”) facilitant le paramétrage Wi-Fi, et un applet pour la zone de notification GNOME (également compatible avec MATE) affichant le débit de connexion,
  • nm-tray : une interface en Qt dans la zone de notification pour NetworkManager, permettant d'activer/désactiver rapidement et facilement la connexion Wi-Fi (et de choisir la box à utiliser).
  • wireless-tools : fournit plusieurs commandes Wi-Fi (iwconfig, iwevent, iwgetid, iwlist, iwpriv, iwspy)

Identifiez au préalable le matériel :

$ lspci | grep -i net
17:00.0 Network controller: Intel Corporation Wireless-AC 9260 (rev 29)
18:00.0 Ethernet controller: Intel Corporation I211 Gigabit Network Connection (rev 03)

Comme le matériel est commun avec la connexion Bluetooth, une bonne partie du boulot a été fait (l'identification du matériel et l'installation du firmware Intel, voir le paragraphe Bluetooth ci-avant).

Voici à présent ce que me donne la commande rfkill :

$ rfkill list
0: phy0: Wireless LAN
	Soft blocked: no
	Hard blocked: no
1: hci0: Bluetooth
	Soft blocked: no
	Hard blocked: no

et iw :

$ iw dev
phy#0
	Unnamed/non-netdev interface
		wdev 0x2
		addr xy:xx:xx:xx:xx:xx
		type P2P-device
		txpower 0.00 dBm
	Interface wlo1
		ifindex 3
		wdev 0x1
		addr xx:xx:xx:xx:xx:xx
		type managed
		txpower 0.00 dBm

nota : j'ai masqué les adresses (en les remplaçant par “xx:xx:xx:xx:xx:xx” et “xy…), je ne sais pas si ça peux se retourner contre moi, peut-être est-ce idiot - à priori je pense que oui, quelqu'un passant dans ma rue avec un portable et ce même outil les trouvera sans doute :).

Mon interface s'appelle : wlo1

Je reprend une nouvelle fois la doc UBUNTU (pour l'avoir sous la main, je ne sais pas si ça va me servir) :

  • Pour lister les réseaux visibles sur l'interface wlo1 : # iw dev wlo1 scan
  • Pour afficher l'état de la connexion Wi-Fi : # iw dev wlo1 link
# iw dev wlo1 link
Not connected.

Des solutions il y en a certainement des tonnes. Mais celle qui m'aura permis moi - débutant, d'y parvenir est celle passant par network-manager-gnome (installé par le paquet éponyme).

Avant de commencer, il vous faut connaître le SSID (=le Nom de votre point d'accès WIFI - autrement dit, celui que vous aviez donné à votre box dans ses paramétrages, il est dénommé ci-après ESSID), vous pouvez le trouver en lançant la commande (remplacez wlo1 par le nom de votre interface, voir ci-avant) :

$ iwlist wlo1 scan
wlo1      Scan completed :
          Cell 01 - Address: xx:xx:xx:xx:xx:xx
                    Channel:11
                    Frequency:2.462 GHz (Channel 11)
                    Quality=70/70  Signal level=-40 dBm  
                    Encryption key:on
                    ESSID:"Toto"
                    (...)

Dans l'exemple ci-dessus, le SSID est Toto.

Ne vous trompez pas de box (car toutes les box accessibles sont affichées, ne prenez pas celle du voisin :)

Nota :

  • Le BSSID est l'adresse MAC du point d'accès sans fil (chaque point d'accès a son adresse MAC). Il n'est pas nécessaire de le saisir pour la connexion. Dans le cas présent il s'agit de l'adresse citée après le libellé “Cell 01 - Address: xx:xx:xx:xx:xx:xx” ci-dessus (si vous avez retenu pour point d'accès “Toto”).

Paramétrage de network-manager-gnome :

On accède à network-manager-gnome par le Centre de contrôle de MATE, au paragraphe “Internet et réseau”, il y a un icône “Configuration réseau avancée” (il s'agit de l'application /usr/bin/nm-connection-editor installé par le paquet network-manager-gnome), on clique dessus :

NB : attention, pour pouvoir enregistrer vos modifications (sinon le bouton “Enregistrer” restera désactivé), il faudra saisir le SSID (voir ci-avant) dans l'onglet “Wi-Fi”.

  • Je clique sur ”+“,
  • puis “Sélectionner un type de connexion” : Wi-Fi
  • Je clique sur “Créer”

Onglet “Général”

  • ☐ Se connecter automatiquement avec priorité : 0 (décochez, sauf si vous souhaitez une connexion permanente au Wi-Fi)
  • ☑ Tous les utilisateurs peuvent se connecter à ce réseau (par défaut)
  • ☐ Se connecter automatiquement au VPN (par défaut)
  • Connexions limitées : Automatique (par défaut)

Onglet “Wi-Fi” :

  • SSID : Toto (exemple factice, voir ci-avant comment le trouver, indispensable pour pouvoir enregistrer votre configuration)
  • Mode : Client (par défaut)
  • Bande : Automatique (par défaut)
  • Canal : (par défaut, grisé)
  • BSSID : (laissez vide, pas nécessaire) (si vous souhaitez le saisir, il est de la forme “xx:xx:xx:xx:xx:xx”, voir ci-avant)
  • Périphérique : wlo1 (xx:xx:xx:xx:xx:xx) (facile à trouver car le sélecteur le propose)
  • Adresse MAC clonée : (laissez vide) (par défaut, au choix par sélecteur : “Conserver”, “Permanente”, “Aléatoire”, “Stable”)
  • MTU : automatique (par défaut, je ne l'ai pas changé)

Onglet “Sécurité Wi-Fi”

  • Sécurité : WPA et WPA2 personnel (au choix : “Aucune”, “Clé WEP 40/128-bit (Hex ou ASCII)”, “WEP 128-bit à phrase secrète”, “LEAP”, “WEP dynamique (802.1X)”, “WPA et WPA2 personnel”, “WPA et WPA2 entreprise”)
  • Mot de passe : ……………………….. (la clé WIFI de votre box)

Onglet “Proxy” : (je ne passe pas par un proxy)

  • Méthode : Aucune (par défaut)

Onglet “Paramètres IPv4”

  • Méthode : Automatique (DHCP) (là encore plein de choix, mais celui-ci était le bon car ma box est configurée pour une utilisation en DHCP)

Onglet “Paramètres IPv6”

  • Méthode : Automatique
  • Serveurs DNS supplémentaires : 2620:119:35::35, 2620:119:53::53 (ceux d'OpenDNS, car il s'agit ici de serveurs supplémentaires au cas où ceux de Free - qu'il trouve tout seul, feraient défaut)
  • Domaines de recherche supplémentaires : (laissé vide)
  • Extension de confidentialité IPv6 : Désactivé (par défaut)
  • Mode de génération d'adresse IPv6 : Confidentialité stable (par défaut)
  • Requiert un adressage IPv6 pour que cette connexion fonctionne : (décoché) (par défaut)
  • Routes : (pas cliqué / rien saisi)

À présent que j'ai saisi mes paramétrages, il me reste à voir comment activer la connexion.

J'installe le paquet nm-tray (une interface en Qt dans la zone de notification pour NetworkManager).
Excellente idée !!!

Je lance nm-tray en console avec la commande (pas besoin de l'ajouter aux applications à lancer au démarrage de MATE, car il s'y est mis tout seul) : $ /usr/bin/nm-tray

Paramétrage de nm-tray :

Une fois lançé, il apparait dans la zone de notification. on y accède via le clic gauche.
Son menu :

  • ☑ Activer le réseau
  • ☑ Activer le Wi-Fi
  • ☑ Activer les notifications
  • Informations de connexion
  • Informations de débogage
  • Wi-Fi - request scan
  • Éditer les connexions…
  • À propos
  • Quitter

Plus en détail :

  • ☑ Activer le réseau : active / désactive toutes les connexions.
  • ☑ Activer le Wi-Fi : active / désactive le Wi-Fi uniquement.
  • ☑ Activer les notifications : je n'ai pas vu la différence pour l'instant.
  • Informations de connexion : fait apparaître une fenêtre vide avant la connexion, puis lorsqu'il y a connexion, affiche les informations correspondantes (interface utilisée, débit de connexion, sécurité, adresse IPv4 avec serveurs DNS utilisés, adresse IPv6).
  • Wi-Fi - request scan : refait un scan Wi-Fi pour mettre à jour les points d'accès Wi-Fi disponibles.
  • Éditer les connexions… : une fenêtre d'accès (pas très jolie mais fonctionnelle, il s'agit en fait de l'interface textuelle de nmtui qui appartient au paquet network-manager, je lui préfère network-manager-gnome) aux fichiers de configuration des réseaux disponibles. Grâce à ce panneau (en mode texte) vous pouvez ajouter / supprimer / éditer le fichier de paramétrages de connexion à utiliser. Ces fichiers de paramétrages peuvent être créés soit depuis ce menu (pas très sexy), soit depuis network-manager-gnome (voir ci-avant, l'avantage c'est une interface conviviale avec un mot de passe affiché en clair pour la saisie), soit depuis nm-tray (via le menu “Informations de débogage” décris ci-après, avantage pour la simplicité, mais pas de mot de passe affichable en clair). Le fichier souhaité pourra ensuite être sélectionné dans le menu “Informations de débogage” ci-après.
  • Informations de débogage (permet aussi la création et le choix d'une connexion) : ouvre une fenêtre séparée en 3 zones. La zone “Sans-fil disponible” affiche les bornes Wi-Fi trouvées (votre box y est affichée, pour actualiser la liste passez par le menu “Wi-Fi - request scan” ci-avant). Si vous double-cliquez sur l'une des bornes, une fenêtre s'ouvre vous proposant de saisir un mot de passe d'accès (mais sans affichage en clair), ce qui créera automatiquement un fichier de connexion portant le nom du point d'accès Wi-Fi (également disponible ensuite sous network-manager-gnome, simple et fonctionnel). La zone “Connexions actives” affiche les connexions en cours. La zone “Toutes les informations” est un menu dépliable (sous “root”) permettant notamment de sélectionner le fichier de paramétrage de connexion à utiliser (au paragraphe “connexions(s)” vous double-cliquez sur le fichier), de voir les connexions actives, et les périphériques actifs (mon interface wlo1 par exemple, mais je vois aussi mon interface réseau filaire enp24s0 inactive).
  • Pour l'anecdote, lors de ma 1ere tentative j'ai effectué un clic droit sur “Informations de déboguage” ce qui m'ouvert la fenêtre (en 3 zones) où j'ai pu sélectionner ma box parmis les autres trouvées, saisir le mot de passe WIFI (à l'aveuglette car il ne permet pas son affichage, ça c'est pas terrible, c'est un coup de bol si j'y suis arrivé du 1er coup :)) et là il s'est connecté. Simple et rapide (même si je n'avais pas tout compris à ce moment là :).
  • Ensuite un autre icône (l'applet nm-applet, installée par network-manager-gnome, démarrée automatiquement sous le nom “Réseau” dans les “Applications au démarrage” dans le Centre de contrôle) dans la zone de notification m'affiche la qualité de la réception (0 à 100%).
  • Gkrellm m'affiche une autre interface réseau avec quelques pics réseaux : wlo1
  • Le test ultime : j’éteins le PC Internet et lance une mise à jour via Synaptic : ça marche, il télécharge les paquets à près de 600KB et je peux continuer à écrire sur ce WIKI : nickel ! Petit bémol sur le coup, les pages internet ne se chargent pas toutes aussi facilement. Google trouve sa page mais pas DuckDuckGo (bizarre que l'un la trouve et pas l'autre). Mais à présent ça fonctionne bien.

Nota concernant l'IPv6 :

  • Pour que ça fonctionne il faut que votre FAI le supporte (c'est le cas pour moi avec Free) et que vous l'activiez dans les paramétrages de votre Box internet.
  • Les adresses locales (l'équivalent des “192.”, invisibles depuis l'extérieur de votre réseau) commencent par “fe80”, le netmask se nomme “Prefix” et est 64
  • Pour l'instant (le 21 juillet 2019) internet n'est qu'au démarrage de l'IPv6. De nombreux sites ne sont pas prêts et si vous tentez de vous y connecter uniquement en IPv6 vous n'y parviendrez pas.

Quelques sites testés en IPv6 :

  • Google.com : Ok
  • DuckduckGo : ne fonctionne pas en IPv6.
  • Qwant : ne fonctionne pas en IPv6.
  • Wikipedia : Ok
  • Mastodon : Ok
  • GitHub : ne fonctionne pas en IPv6.
  • Bitbucket : Ok
  • Debian : Ok
  • YouTube : ne fonctionne pas en IPv6.
  • Le Bottin des Jeux Linux : Ok (grâce à Tuxfamily ! Bravo TuxFamily !)
  • etc…

Pour l'instant ça me suffit (je voudrais passer à autre chose).
J'y reviendrai vraisemblablement pour explorer la connexion à mon “smart”phone (pourrait être utile en cas de perte de ma box).

Debug

network-manager-gnome bloqué

network-manager-gnome fournit /usr/bin/nm-applet (qui apparaît dans la zone de notification). Il arrive que cette applet se bloque (en attente de réseau j'imagine) et dans ce cas c'est toute la barre d'applications qui semble bloquée. J'ai testé le lancement en console d'une autre instance de /usr/bin/nm-applet mais cela ne permet pas de reprendre le contrôle.

Le seul moyen est d'attendre 30 secondes et de recommencer le clic gauche de la souris pour atteindre le menu.

Plus de Wi-Fi

Le 01/05/2020, plus de Wi-Fi, plus moyen de l'activer depuis la barre des tâches (je ne sais pas si c'est lié, mais le 28/04/19 a eu lieu la mise à jour des paquets bind9-host, dnsutils, libdnsxxxx, network-manager-gnome, et divers autres).

$ iwlist wlo1 scan
wlo1      Failed to read scan data : Network is down

Je teste :

# ip link set wlo1 up
$ iwlist wlo1 scan
wlo1      No scan results

Et puis :

# iw dev wlo1 scan
command failed: Network is down (-100)
# ifconfig wlo1 up
# iw dev wlo1 scan
BSS f6:c8:30:92:e0:c0(on wlo1)
	last seen: 17416.699s [boottime]
	TSF: 1140315273938 usec (13d, 04:45:15)
	freq: 2462
	beacon interval: 100 TUs
	capability: ESS Privacy ShortSlotTime (0x0411)
	signal: -34.00 dBm
	last seen: 2952 ms ago
	Information elements from Probe Response frame:
	SSID: Toto
        (...)

Dans l'exemple ci-dessus, le SSID est Toto.

Mais malgré cela, pas de connexion.

Parce qu'il fallait rebooter le PC :)

J'ai suivi cette doc raspberrypi.org (Network Manager can't handle wifi connection)

Après coup, j'ai vérifié qu'il n'était pas nécessaire :

  • d'installer les paquets dhcpcd5 et dhcpcd-gtk
  • de mofifier le fichier /etc/NetworkManager/NetworkManager.conf pour y ajouter “dhcp=dhcpd”
En console je lance : 
<code>
# nmcli dev show wlo1
GENERAL.DEVICE:                         wlo1
GENERAL.TYPE:                           wifi
GENERAL.HWADDR:                         D4:3B:04:70:57:6A
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (connecté)
GENERAL.CONNECTION:                     Toto
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/2
(...)


# nmcli device wifi  list
IN-USE  BSSID              SSID             MODE   CHAN  RATE      SIGNAL  BARS  SECURITY    
        F6:C8:30:92:E0:C2  Tata             Infra  11    270 Mb/s  100     ▂▄▆█  WPA1 802.1X 
*       F6:C8:30:92:E0:C0  Toto             Infra  11    270 Mb/s  100     ▂▄▆█  WPA1        
        F6:C8:30:92:E0:C1  --               Infra  11    270 Mb/s  100     ▂▄▆█  WPA2        
        70:FC:8F:53:23:66  Tutu_secure      Infra  13    195 Mb/s  19      ▂___  WPA2 802.1X 
        70:FC:8F:53:23:64  Tete-xyz         Infra  13    195 Mb/s  17      ▂___  WPA2        

Et ça marche à nouveau / toujours !

Imprimante et scanner

Pas grand-chose à dire, si ce n'est que ça s'installe facilement et rapidement. Linux a fait de gros progrès sur le sujet (surtout pour les imprimantes).

Imprimante

La bible : WIKI UBUNTU.fr (Installation selon la marque)

(Presque) tous les les paquets sont installés par défaut lorsque l'on installe une distribution Debian.

Je récapitule les paquets (installés par défaut) : # apt install cups cups-browsed python3-cups cups-pk-helper python3-cupshelpers printer-driver-gutenprint cups-bsd

Et pour les imprimantes EPSON (j'ai une imprimante Epson Stylus SX235W) : # apt install printer-driver-escpr (pour d'autres types d'imprimantes : printer-driver-*)

Page des drivers EPSON : Drivers Linux EPSON

Pour imprimer en PDF : # apt install printer-driver-cups-pdf

Une fois ces paquets installés, l'impression est opérationnelle.

Si votre imprimante n'est plus affichée, lancez en console (paquet éponyme) : $ /usr/bin/system-config-printer

Puis sous l'interface, et dans cet ordre (sinon recommencez) :

  • Serveur ➜ Connexion… ➜ Connecter
  • Serveur ➜ Nouveau ➜ Imprimante
  • Entrez le mot de passe administrateur puis sélectionnez votre imprimante dans la liste.
  • Vous validez et avez la possibilité d'imprimer une page de test.

Ça marche !

Scanner

1. Trouver le pilote Linux

Là aussi c'est très simple :) La partie la plus difficile est de trouver le pilote Linux de votre scanner.

J'ai une imprimante multi-fonction (Imprimante/Scanner) EPSON Stylus SX235W.

Si vous faites une recherche directe sur le web, vous risquez de tomber comme moi sur la page des pilotes EPSON qui vous indique qu'il n'y a pas de pilote Linux pour votre scanner (Faux).

Si vous avez une scanner EPSON, pour moi la référence, c'est la doc UBUNTU-fr : ubuntu-fr (Scanner Epson)

La page pour télécharger le driver EPSON du scanner est ici : download.ebz.epson.net

J'ai sélectionné :

      Stylus SX235
Scanner Driver 	Linux
2.30.4 	All-in-one package 	All language
08-22-2019

Des paquets Debian (et RPM) Linux 32-bit et 64-bit sont proposés. J'ai téléchargé le paquet iscan-bundle-2.30.4.x64.deb.tar.gz que je décompresse dans un répertoire, puis dans ce répertoire je lance : # ./install.sh

Le script installe plusieurs paquets (iscan_2.30.4-2_amd64.deb, iscan-data_1.39.1-2_all.deb, iscan-network-nt_1.1.2-1_amd64.deb).

2. Installer les outils de scan

Ensuite, on installe le paquet (qui permet la recherche du scanner dans les périphériques USB) : # apt install sane-utils

Et une interface simple et bien conçue : # apt install skanlite

Nota : si le scanner n'est pas trouvé, parfois le fait de débrancher puis rebrancher la prise USB de votre scanner peut aider.

En test (démon de surveillance de l'appui sur le bouton de scan de votre scanner) : # apt install scanbd

Pour scanner il suffit de lancer l'application skanlite et de suivre les instruction.

La Webcam

La Webcam est devenue nettement plus simple à utiliser notamment grâce à Webcamoid et Cheese (tous deux en dépôt).

Webcamoid

J'ai une Logitech C920 PRO dont les spécifications affichent fièrement du 1080p en 30 FPS.

Au mieux sous Webcamoid (qui me propose près d'une vingtaine de résolutions différentes) en 1920×1080 le débit n'est que de 5 FPS (ça fleure bon l'arnaque).
Ma Webcam est connectée au hub de mon écran en USB 3 (et ça ne change rien aux résultats si je la branche directement sur l'une des prises USB 3 de mon PC).
Pour parvenir aux 30 FPS - le maxi, je dois descendre en 800×448 (sinon j'ai aussi accès à d'autres résolutions intermédiaires avec moins de débit).
Le meilleur compromis me semble être le 864×480 en 24 FPS

Pour obtenir le son

Nota :

  • Sous PulseAudio, ne pas se fier au statut “Désactivé” de la webcam dans l'onglet “Matériel” (il n'est pas fiable). Il m'arrive d'enregistrer avec le son sans soucis alors que la Webcam a le statut “Désactivé”.
  • Sous PulseAudio (v. 12.2 & noyau Linux 4.19), lorsque l'on coche “Sourdine” dans l'onglet “Entrée” pour activer/désactiver le microphone de la webcam, cela fait (souvent) planter l'acquisition du micro, ensuite vous êtes contraint de brancher/débrancher votre webcam pour réactiver le son. Je ne sais pas si le souci vient de la webcam elle-même, de PulseAudio, ou du noyau. Malheureusement si vous souhaitez désactiver le micro de la webcam (personnellement je n'ai pas envie de laisser le micro activé en permanence) c'est la seule solution. J'ai cru un moment qu'en sélectionnant un autre périphérique sonore que je n'utilisai pas (et qui n'avait pas de retour sonore) ça désactivait l'entrée sonore de la Webcam (car il n'y avait pas de retour visuel sur l'interface de PulseAudio, mais non, on peux le voir en lançant l'interface pavucontrol (éventuellement en console) : lorsque l'on sélectionne un autre périphérique, l'acquisition du micro de la webcam reste active. La seule manière de désactiver le micro de la webcam est bien de cliquer sur “Sourdine”.

Le plus fiable selon mes essais :

  • si le micro a été désactivé en ayant coché la case “Sourdine” dans l'onglet “Entrée” de PulseAudio, décocher cette case, et si vous n'avez pas de retour sonore, débranchez et rebranchez la webcam (pas pratique, et à la longue risque d'user prématurément / d'apporter du jeu à la prise USB).

1. sous Pulseaudio :

  • onglet “Matériel”, sélectionnez “HD Pro Webcam C920 Stéréo analogique” ou “HD Pro Webcam C920” (ne pas se fier au statut “Désactivé”).
  • onglet “Entrée”, sélectionnez “HD Pro Webcam C920 Stéréo analogique”. Réglez le volume d'entrée sonore sur 100% pour le test (vous pourrez ultérieurement le rajuster). Lorsque vous parlez (même sans avoir démarré Webcamoid) vous devez avoir un retour visuel (le barre-graphe doit s'animer). S'il n'y a pas de retour visuel : essayez de débrancher/rebrancher la prise USB de la webcam.

2. sous Webcamoid :

  • Sélectionnez le menu Audio de l'application (en bas de l'interface, icône en forme de note de musique). En haut à gauche de l'interface il y a 2 minuscules icônes bleus (l'un en forme de casque, l'autre en forme de point d'exclamation / de microphone), cliquez sur l'icône bleu en forme de microphone pour accéder au menu de sélection des entrées Audio, puis sélectionnez “HD Pro Webcam C920 Stéréo analogique” (et non pas “HD Pro Webcam C920”). Dans la zone de droite, sélectionnez “Sample Format : s32”, “Channels : 2 - stereo” et “Sample rate : 44100”. Vous pouvez ensuite fermer le menu (en cliquant à nouveau sur l'icône en forme de note de musique).
Pour enregistrer
  • Sélectionnez le menu d'enregistrement vidéo (cliquez en bas de l'interface sur l'icône en forme de pellicule).
  • Sélectionnez le format d'enregistrement souhaité (dans la zone de gauche). J'ai testé avec succès le “MP4 (MPEG-4 Part 14)” (petite taille mais qualité moyenne de la vidéo), l' “Ogg Video” (enregistrement doublé mais bien meilleur qualité), le Matroska (très bonne qualité mais taille x30 par rapport au MPEG4), le GIF (marrant, taille x10 et pas de son, normal).
  • Démarrez l'enregistrement (cliquez sur le bouton rouge en bas de l'interface “Démarrer l'enregistrement vidéo”), puis sélectionnez l'emplacement d'enregistrement du fichier.

Cheese

Cheese est un autre utilitaire d'enregistrement vidéo / prise de photo. Son interface est encore plus simple (mais il me semble en contrepartie moins évolué). Elle permet aussi d'appliquer des effets.

Pour le paramétrage sonore de la webcam sous Pulseaudio, voir ci-avant (idem Webcamoid).

Le Bureau

Connexion aux bureaux

Installation des gestionnaires de connexion sddm et lightdm :

  • apt install sddm lightdm lightdm-settings lightdm-gtk-greeter-settings
  • apt install sddm-theme-*

La doc Debian : LightDM

Avec mon écran 2560×1600 et ses 2 prises HDMI qui sont interprétées par Debian comme 2 écrans connectés, il faut installer lightdm ou sddm, car les autres gestionnaires sont trop peu évolués, ne me permettant pas d'accéder au masque de saisie de l'utilisateur.

  • Pour changer de gestionnaire : # /usr/sbin/dpkg-reconfigure sddm (ou un autre, tous les gestionnaires installés seront affichés, le choix sera proposé)
  • Le gestionnaire lightdm se configure facilement (sauf l'activation du verrouillage numérique, voir ci-après) depuis le Centre de contrôle si vous avez installé les paquets lightdm-settings lightdm-gtk-greeter-settings
  • Pour activer le verrouillage numérique du clavier sous lightDM (testé ok, merci à Fedora.fr), installez le paquet numlockx et ajoutez cette section à la fin du fichier /etc/lightdm/lightdm.conf :
    [SeatDefaults]
    greeter-setup-script=/usr/bin/numlockx on
  • Pour activer le verrouillage numérique du clavier sous sddm (testé ok, merci à Fedora.fr), pas besoin d'installer le paquet numlockx, éditez ou créez le fichier /etc/sddm.conf et ajoutez cette section à la fin du fichier :
    [General]
    Numlock=on
  • Pour activer la liste des utilisateurs sous lightDM (merci à Debian et surtout à Ubuntuplace.info) modifiez la section suivante du fichier /etc/lightdm/lightdm.conf (nom d'utilisateur à adapter pour vous) :
    [Seat:*]
    greeter-hide-users=false
    defaut-user=goupil2

MATE

  • L'exécutable du Centre de Contrôle se nomme : $ mate-control-center

(Permet d'atteindre l'option “extinction du 2nd écran virtuel”, lorsque le bureau est affiché sur 2 écrans dont un virtuel où se trouvent les menus, du fait que les 2 prises HDMI de mon écran DualLink sont interprétées par Linux comme 2 écrans. On lance mate-control-center via Alt F2 et on active l'option d'extinction du 2nd écran).

Bug identifiés sous MATE

  • Dans le Centre de contrôle ➜ Apparence ➜ icône “Fenêtres” ➜ onglet “Comportement” : ne pas activer l'option “Sélectionner la fenêtre lorsque la souris est au dessus” : car cette option génère des bugs de copie lorsque l'on tente notamment de copier une adresse URL de Firefox vers une autre application (la copie effectuée n'est pas la bonne, n'enregistre pas le Ctrl C courant).
  • Dans le Centre de contrôle ➜ Informations personnelles ➜ icône “Applications au démarrage” ➜ onglet “Options” : ne pas activer “Se souvenir automatiquement des applications en cours d'exécution lors de la déconnexion” : car cette option génère l'ouverture des applications précédentes à l'infini jusqu'à saturation de la mémoire.

Autour du bureau

Le graphisme

Les icônes
  • Les icônes sont à copier dans ~/.icons/, puis activez-les sous MATE dans le Centre de contrôle ➜ Apparence ➜ Onglet “Thème” ➜ Bouton “Personnaliser…” ➜ Onglet Icônes” ➜ Sélectionner la collection d'icônes nouvellement installée.
  • Exemple de la collection d'icônes “Suru Plus 30 Barcelona” : Suru Plus 30 Barcelona (copier simplement ses répertoires eSuru++/, Suru++/ et Suru++-Light/ dans ~/.icons/)
  • Quelques collections d'icônes que j'ai bien aimé il y en a des tonnes, mais soit ils sont vieux/moches, soit mal intégrés, soit incomplets donc certains icônes jurent sur le bureau) : eSuru++25, ePapirus, Faenza,
  • Quelques combinaisons qui me semblent sympa (Contrôles/Bordures de fenêtres/Icônes) : Arc/Arc/eSuru++25, Gilouche/Materia-light-compact/eSuru++25 (Menta + joli que Gilouche mais mal ajusté sur gedit)
  • Arc : paquet arc-theme
  • Gilouche : paquet gnome-theme-gilouche
  • Materie : paquet materia-gtk-theme

Applications à lancer au démarrage

Là aussi, l'intérêt de ce paragraphe est limité pour vous, ce n'est qu'un mémo pour moi. Sous MATE, elles sont listées dans le Centre de contrôle ➜ Section “Personnel” ➜ Icône “Applications au démarrage.

Suite à un bug (temporaire ?) de fonctionnement de mon bureau MATE (après un démarrage, le gestionnaire de fichier Caja s'est mis à s'ouvrir en des dizaines d'instances qui ne s'interrompaient pas), dans l'onglet “Options” j'ai désactivé l'option “Se souvenir automatiquement des applications en cours d'exécution lors de la déconnexion”.
Comme j'aime retrouver mon environnement de bureau, j'ai donc entré ici les applications que je souhaite retrouver habituellement.
J'espère qu'un jour les progrès du bureau feront qu'elles se placeront toutes automatiquement sur le bureau à l'emplacement précédent ;).
(aujourd'hui c'est un peu le bazar : elles s'ouvrent sur le bureau et s'affichent en vrac dans des dimensions diverses, néanmoins certaines y parviennent, notamment firefox et gedit).

Je ne liste pas l'ensemble des applications lancées (notamment les services, qui se sont automatiquement inscrits ici), mais seulement les applications que j'ai ajouté manuellement, avec une exception pour quelques-unes qui ont été ajoutées automatiquement via l'installation de paquets.

  • Applet Blueman (blueman-applet) : Connexions Bluetooth - Accès à l'interface de réseau Blueman dans la zone de notification
  • Caja (caja -t /mnt/DDprc/Download '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/Le bottin des jeux Linux' '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/Screenshots' '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/Thumbnails' '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/Mastodon') : Gestionnaire de fichier
  • Clémentine (clementine %U) : Lecteur de musique
  • Firefox (/usr/bin/firefox) : Navigateur internet
  • qTox (”/usr/bin/qtox“ -p “toxic_profile”) : Instant messenger (client Tox)
  • Gedit (gedit /mnt/DDprc/Download/'Filtres & tags Bottin.txt' /mnt/DDprc/Download/Brouillons.txt /mnt/DDprc/Download/TEXTI /mnt/DDprc/Download/TEXTO) : Éditeur de textes
  • Gkrellm (gkrellm) : Surveillance des données système
  • Glances (tilix --command='/usr/bin/glances' ou tilix --command='pkexec /usr/bin/glances') : Surveillance des données système, notamment les accès disques)
  • Gnome-Pie (/usr/bin/gnome-pie) : Lanceur d'applications
  • Kup (/usr/bin/kup-daemon et Délai: 100 secondes) : Backup des données importantes
  • Jami (gnome-ring --restore-last-window-state) : un outil génial de chat vidéo/vocal avec d'autres Desktops et smartphones
  • KBackup (1j) (/usr/bin/kbackup /mnt/Svg1/KBackup/goupildbv2) : Backup journalier d'une partie de mes données
  • Moniteur système GNOME (gnome-system-monitor) : Surveillance des données système
  • Nethogs (tilix --command='/usr/sbin/nethogs') : Surveillance des connexions réseau des applications (pour lancer nethogs sans devoir systématiquement entrer le mot de passe root, lancer au préalable la demande par : # setcap 'cap_net_admin,cap_net_raw+ep' /usr/sbin/nethogs)
  • nm-tray (nm-tray) : Connexions Wi-Fi - Accès à l'interface de NetworkManager dans la zone de notification
  • PulseAudio System Tray (pasystray) : Accès à Pavucontrol (contrôle affiné de PulseAudio) dans la zone de notification
  • Pavumeter (pavumeter) : Un vu-mètre sur le bureau pour PulseAudio (c'est gadget, ça prend un peu de place sur le bureau, mais j'aime bien :) (remplacé par PulseEffects ci-dessous)
  • PulseEffects (pulseeffects) : un afficheur graphique de la bande son, avec de nombreux réglages du son : superbe
  • Qps (/usr/bin/qps) : Surveillance des processus en cours (liste des processus, occupation processeur, mémoire, graphe accès disques, …)
  • QuiteRSS (quiterss) : Lecteur de flux RSS
  • Redshift (/usr/bin/redshift-gtk) : ajustement colorimétrie de votre écran à l'heure (lutte contre la fatigue oculaire)
  • Réseau (nm-applet, fournit par le paquet network-manager-gnome) : Connexions Wi-Fi - Affiche le débit Wi-Fi dans la zone de notification
  • Saytime (saytime -f %P%l%M) : Horloge parlante
  • Stacer (/usr/bin/stacer) : Monitoring des données système (CPU, mémoire, disques)
  • Tootle (/usr/bin/tootle) : Tootle : un client Mastodon

Réglages spécifiques d'applications

Raccourcis clavier

Rien d'extraordinaire, je les indique ici pour moi, pour m'en rappeller. Sous le bureau MATE, ils se définissent dans le Centre de contrôle ➜ Section “Matériel” ➜ Icône “Raccourcis clavier”.

  • Tilix : tilix --working-directory=/mnt/DDprc/Download
  • Synaptic : /usr/bin/synaptic-pkexec
  • Firefox : /usr/bin/firefox
  • Caja : caja -t /mnt/DDprc/Download '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/Le bottin des jeux Linux' '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/Screenshots' '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/Thumbnails' '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/Mastodon'

nota : l'application Clémentine (lecteur de musique) n'en a pas besoin, elle utilise nativement les touches multimédias.

Quelques utilitaires / scripts

  • Pour envoyer un message dans la zone de notification (signaler la fin d'un script par exemple) : $ notify-send -i yast_joystick 'Coucou' (“yast_joystick” est le nom d'un icône rappelant un joystick, à adapter pour un autre icône, voir gnome-pie ou une autre application pour trouver facilement ces icônes)
  • Pour afficher une fenêtre avec un message et une validation : $ zenity --info --text="Coucou"
  • Jouer des sons en ligne de commande (mais difficulté avec mp3) : sox
  • Jouer des sons en ligne de commande (y compris mp3) : mpg123 (exemple : mpg321 fichier.mp3)
  • Conversion de formats sonores : # apt install soundconverter gstreamer1.0-plugins-ugly (puis lancer en console : $ soundconverter)

Synaptic

  • Lancement de synaptic : alt f2 et synaptic-pkexec (ou # /usr/sbin/synaptic)
  • Ajouter la fonction de recherche dynamique de paquets sous Synaptic : # apt install apt-xapian-index
  • Obtenir la zone de recherche de paquets : installer le paquet apt-xapian-index (et redémarrer synaptic)
  • Quelques paramètres retenus :
    1. Configuration > Preferences > Onglet Fichiers : Laisser les paquets téléchargés dans le cache

Firefox et KBackup

En cas de perte des onglets de Firefox (ce qui arrive malheureusement de temps en temps), si vous avez sauvegardé le répertoire ~./mozilla/ avec KBackup avec l'option de compression de son contenu : sauvegardez votre actuel répertoire ~./mozilla/ en le renommant, puis faites une première décompression du fichier de sauvegarde de KBackup pour récupérer le répertoire mozilla/, copiez ce répertoire dans votre HOME et dans ce répertoire lancez la commande : $ find . -name \*xz -print0 | xargs -0 unxz
Relancez Firefox : c'est récupéré :)

Caja

J'ai vraisemblablement pompé ailleurs (je ne me souviens plus) un petit script de conversion de format d'un fichier graphique (exemple ”.png“, mais il marche aussi avec d'autres formats) en ”.jpg“ compressé à 75% (pratique pour le passer en copie d'écran du Bottin, lorsque le fichier d'origine est dans un format volumineux).
Voilà le script :

#!/bin/bash
while [ $# -gt 0 ]; do
    picture=$1
    jpg_file=`echo "$picture" | sed 's/\.\w*$/.jpg/'`
    /usr/bin/convert -quality 75 "$picture" jpeg:"$jpg_file"
    shift
done

Je l'ai nommé “convertir_en_jpg”, l'ai rendu exécutable (clic droit sous votre gestionnaire de fichier), et l'ai copié dans ~/.config/caja/script/

Pour l'utiliser, il suffit de sélectionner sous Caja le ou les fichier(s) souhaité(s) (exemple : image.png, il marche aussi en sélectionnant plusieurs fichiers), de faire un clic gauche, puis de sélectionner “Script” puis “convertir_en_jpg”, et le/les fichier(s) est/sont ainsi converti(s) (en image.jpg). Très pratique.

Tellico

  • Pour afficher le champ “Screenshot” en 1ere position sous Tellico. Celui-ci est verrouillé par défaut après la 1ere colonne sous Tellico (on ne peux pas manuellement le déplacer avant le champ “Title” pour le mettre en 1ere position par exemple, mais on peux le déplacer après n'importe quelle colonne). Pour pouvoir forcer son affichage en 1ere colonne : fermez Tellico, éditez le fichier ~/.config/tellicorc. Trouvez la ligne “ColumnOrder=” et inversez les 2 premiers chiffres (si précédemment vous aviez ouvert Tellico en affichant le champ “Screenshot” en 2nde position puis refermé Tellico), exemple : “ColumnOrder=0,2,3,1,36,40” devient “ColumnOrder=2,0,3,1,36,40”. Enregistrer le fichier puis rouvrez Tellico. Celui-ci risque de mettre plusieurs minutes à s'ouvrir, soyez patient.

Autres réglages de Tellico :

  • Réinstaller les skins du Bottin (à récupérer sur la page “Download” du site du Bottin, télécharger le skin, la documentation d'installation est incluse, ensuite le choix du skin se règle dans le menu de configuration de Tellico, onglet “Modèles”).
  • dans le menu de configuration de Tellico, onglet “Général”, sélectionner l'option “Enregistrer les images dans un dossier aux côtés du fichier de données” (car par défaut il utilise l'option “Inclure les images dans le fichier des données” qui génère un fichier principal énorme avec des temps de latence tout aussi conséquents).
  • Pour l'export HTML, cocher “Formater tous les champs”, “Exporter seulement les entrées sélectionnées”, “imprimer les libellés des champs” (par défaut), et “Exporter individuellement les entrées”.

Tillix

  • Pour un maximum de lisibilité, il vaut mieux rester sur une police à chasse fixe tel que Monospace Regular 11 (ça se règle aussi dans l'onglet “Général” du Profil par défaut). De même il vaut mieux retenir un fond sombre (cela peut-être une image sombre récupérée sur gnome-look.org ou DeviantArt). L'image est chargée dans le menu “Préférences”, via l'onglet “Apparence”, et affichée en augmentant la transparence de la fenêtre dans l'onglet “Couleur” du Profil par défaut (onglet “Par défaut” à gauche de l'interface). Le jeu de coloration syntaxique a également son importance pour la lisibilité (ça se règle aussi dans l'onglet “Couleur” du Profil par défaut, j'aime bien le thème “Material et “Orchis”).
  • Correction du bug Debian vte (ou Tilix Web manual (VTE Configuration)) : dans Debian/Ubuntu il manque le lien symbolique /etc/profile.d/vte.sh), ce qui fait que si l'on est sur un répertoire et que l'on ouvre un nouvel onglet, il ne se positionne pas automatiquement sur le précédent répertoire (il s'ouvre sur le ~). Pour corriger ce bug :

1. Créez le lien symbolique suivant :

   # ln -s /etc/profile.d/vte-2.91.sh /etc/profile.d/vte.sh

(à adapter en fonction de la version présente)

2. À la fin de votre fichier ~.bashrc (si vous utilisez bash) ou .zshrc (si vous utilisez zsh), entrez les lignes suivantes :

if [ $TILIX_ID ] || [ $VTE_VERSION ]; then
        source /etc/profile.d/vte.sh
fi
  • Signets : pratiques pour créer des raccourcis (que l'on appelle sous Tilix par la combinaison de touches “Shift Ctrl B” puis on sélectionne son signet) vers des répertoires (que vous utilisez souvent, exemple pour moi : /mnt/DDprc/Download/), ou pour lancer des scripts (exemple pour moi, j'ai créé un signet qui lance mon script “Ztraitlots” de compression des images de mes extractions du Bottin via la commande : cd '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/BottinHTML' && ./Ztraitlots, et mon autre script “Zipbot” qui me compresse le répertoire du Bottin au format ZIP : cd '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique' && ./Zipbot). J'ai aussi un raccourci pour lancer ZeroK : cd '/mnt/DDprc/Download/zero-k-portable' && ./Zero-K_old.sh
  • Son fichier de sauvegarde des raccourcis (signets) est : ~/.config/tilix/bookmarks.json
  • Je ne sais pas où il enregistre les autres paramètres sélectionnés (??).

Gnome-pie

Gnome-pie est un lanceur d'applications affichant un ou plusieurs menu(s) circulaire (dénommés “tarte” pour son aspect j'imagine) à l'emplacement de la souris et peut se lancer d'un clic de bouton de souris (très pratique, je l'utilise au quotidien).

Quel en est l'intérêt ?

Sous MATE (ce qui n'était pas le cas autrefois sous d'autres gestionnaires de fenêtres) les applications sont très bien organisées et assez rapides d'accès (très bien). Le problème c'est quand il y en a beaucoup (ce qui est mon cas, c'est libre, je ne me prive pas d'en installer / désinstaller pour les tester et pour le plaisir), ça devient parfois difficile de retrouver l'utilitaire que l'on cherche, ou tout simplement de naviguer pour retrouver l'application que l'on utilise tout le temps (on peut aussi créer des raccourcis selon les menus installés, car là aussi on a le choix). L'intérêt de Gnome-pie pour moi, c'est un menu avec mes raccourcis les plus utilisés qui apparaît d'un clic de souris à l'emplacement où se trouve mon curseur. En plus il est beau (ce qui ne gâche rien :).

Comment je l'utilise ?

J'ai créé une tarte pour les applications bureautique/utilitaires et une autre pour les jeux (que je ne détaille pas ci-dessous), chacune se lançant par l'un des 2 boutons présents sur le côté gauche de ma souris.

Vous pouvez soit saisir les entrées manuellement, soit les entrer par glisser-déposer depuis le menu des applications (super pratique).

Pour les applications (Nom : raccourci lançé) :

  • Tilix (console) : tilix --working-directory=/mnt/DDprc/Download)
  • Caja (gestionnaire de fichier) : caja -t /mnt/DDprc/Download '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/Le bottin des jeux Linux' '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/Screenshots' '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/Thumbnails' '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/Mastodon'
  • Gedit (éditeur) : gedit /mnt/DDprc/Download/'Filtres & tags Bottin.txt' /mnt/DDprc/Download/Brouillons.txt /mnt/DDprc/Download/TEXTI /mnt/DDprc/Download/TEXTO
  • Tellico (édition du Bottin) : tellico
  • Speedcrunch (calculatrice) : speedcrunch
  • Upload bandeau (script perso uploadant l'image de bandeau du site du bottin). Il lance : '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/BottinHTML/bandeau'
  • Publication Bottin (script perso uploadant le Bottin). Il lance : '/mnt/DDprc/Fichiers/Commun/Doc perso en consultation/Fichiers Ooffice/Rédaction doc informatique/BottinHTML/cpmp'
  • Firefox (Navigateur Web) : /usr/bin/firefox
  • Chromium (Navigateur Web alternatif) : chromium
  • Falkon (Navigateur Web alternatif) : falkon %u
  • FileZilla (Upload des fichiers sur le site du Bottin) : filezilla
  • Tootle (client Mastodon) : tootle
  • Icedove (client mail) : icedove %u
  • Clementine (Lecteur de musique) : clementine %U
  • Gnome-pie (pour accéder plus facilement à sa configuration) : gnome-pie
  • Rés. on (script perso pour ouvrir le réseau sur goup2net) : /mnt/DDprc/Xinst/Divers/Scripts/LanOn
  • Rés. off (script perso pour fermer le réseau sur goup2net) : /mnt/DDprc/Xinst/Divers/Scripts/LanOff
  • KCharSelect (utilitaire d'affichage de polices de caractères) : kcharselect --qwindowtitle %c
  • Screen Ruler (utilitaire pour prendre des mesures, de tailles d'interfaces dans mon cas) : screenruler
  • Pavucontrol (contrôle de la source enregistrée/lue de Pulseaudio): pavucontrol
  • Enregistreur de son (pour des tests rapides d'enregistrement): gnome-sound-recorder
  • Pavumeter (Vu-mètre, utile de le lancer d'ici en cas de chgt de source) : pavumeter
  • Audacity (la boîte à outils d'enregistrement / modif du son) : audacity %F
  • Webcamoid (Utilitaire génial de gestion de la Webcam) : webcamoid
  • SimpleScreenRecorder (enregistrement d'écran) : simplescreenrecorder
  • Skanlite (pour scanner/photocopier mes documents papiers) : skanlite c i
  • iotop (Quel processus utilise les disques durs ?) : tilix --command='pkexec /usr/sbin/iotop'
  • Glances (Surveillance des données système, notamment les accès disques) : tilix --command='/usr/bin/glances' ou tilix --command='pkexec /usr/bin/glances')
  • atop (écart sur les processus, pour mieux repérer les anomalies) : tilix --command='/usr/bin/atop'
  • nethogs (Traffic réseau par application) : tilix --command='/usr/sbin/nethogs'(pour lancer nethogs sans les droits root, initialiser la demande par : # setcap 'cap_net_admin,cap_net_raw+ep' /usr/sbin/nethogs)
  • KBackup (1j) (/usr/bin/kbackup /mnt/Svg1/KBackup/goupildbv2) : Backup journalier d'une partie de mes données (pour une sauvegarde intermédiaire éventuelle).
  • Surveillance des montages RAID : tilix --command='watch cat /proc/mdstat'
  • GSmartControl (Surveillance des données SMART des disques durs) : /usr/bin/gsmartcontrol-root
  • Analyseur d'utilisation des disques MATE : mate-disk-usage-analyzer
  • Filelight (autre analyseur d'utilisation des disques) : filelight %f
  • Qps (analyse des processus en cours) : qps
  • Gnome-system-monitor (affichage de l'utilisation des disques, mémoire, …) : gnome-system-monitor
  • Mate-system-monitor (idem en un peu moins bien, lorsque l'autre ne démarre pas :affichage utilisation des disques, mémoire, …) : mate-system-monitor
  • Visionneur de journaux système : mate-system-log
  • Informations et Benchmarks du Système : /usr/bin/hardinfo
  • Kup Prog (Programmation des sauvegardes incrémentales) : tilix --command='kcmshell5 kup'
  • Kup 5 min (Consultation des sauvegardes incrémentales - à 5 min d'intervalle) : tilix --command='/usr/bin/kup-filedigger /mnt/Svg1/Kup/Kup5min' (ou tilix --command='/usr/bin/kup-filedigger /media/goupil2/Svg1/Kup/Kup5min' si lecture depuis la clé de dépannage)
  • Kup Glob 2j (Consultation des sauvegardes incrémentales - à 2j d'intervalle) : tilix --command='/usr/bin/kup-filedigger /mnt/Svg1/Kup/KupIncrem' (ou tilix --command='/usr/bin/kup-filedigger /media/goupil2/Svg1/Kup/KupIncrem' si lecture depuis la clé de dépannage)
  • Outil de recherche MATE : pkexec mate-search-tool
  • SayTime (horloge vocale, pour m'amuser) : saytime
  • mate-control-center (Centre de Contrôle de MATE, utile si la barre est bloquée ou inaccessible) : /usr/bin/mate-control-center
  • Synaptic (gestionnaire de paquets) : /usr/bin/synaptic-pkexec

Youtube-dl

$ youtube-dl --embed-thumbnail --extract-audio --audio-format mp3 --audio-quality 0 -o "/repdecopie/%(title)s.%(ext)s" https://www.youtube.com/watch?v=xxx

Ma sélection de paquets

Pour finaliser votre distribution Debian, et une bonne expérience avec cette superbe distribution, je vous propose ci-après une liste des paquets qui me semblent utiles d'installer (et à désinstaller).

Cette liste sera complétée au fil de mes découvertes.

  • À commencer par désinstaller : # apt purge unattended-upgrades (le paquet est bugué depuis des lustres, il s'obstine à mettre à jour les paquets dont vous avez demandé le blocage de la version)
  • Et (car plante initramfs-tools lorsqu'on l'installe) : # apt purge plymouth plymouth-label
  • Mon “Socle de base” : # apt install apt-xapian-index caja-rename deja-dup firefox-l10n-fr mate clementine gdebi gnome gnome-initial-setup gparted gwenview jami kbackup kde-full kipi-plugins krusader lightning lightning-l10n-fr locate lxde lxqt mumble pavucontrol pasystray redshift quiterss speedcrunch task-mate-desktop synaptic tellico thunderbird thunderbird-l10n-fr tilix
  • N'est pas encore dans “Testing” (nécessite d'ajouter provisoirement - le temps de l'installation, le dépôt Sid) : # apt install tootle gnome-pie

(concernant le bureau mate, je termine l'installation en installant tous les paquets mate - sauf ceux relatifs aux laptops, sous le gestionnaire synaptic)

  • Indispensable pour le dépannage en console (sans interface graphique) : # apt install apt-file aptitude mc gpm
  • N'est plus dans Debian 10 / “Testing” ? (gksu peut être remplacé par pkexec) : # apt install gksu kdeartwork
  • Les gestionnaires de connexion graphiques lightdm et sddm (mes préférés pour leur bonne gestion du multi-écrans. Pour le paramétrage, voir la section correspondante dans ce WIKI) : # apt install sddm lightdm lightdm-settings lightdm-gtk-greeter-settings sddm-theme-*
  • Et parce que le pavé numérique non activé par défaut à la longue c'est chiant (nécessite un paramétrage de sddm et lightdm (voir la section correspondante ci-avant) : # apt install numlockx
  • Si vous avez formaté vos disques en EFI et que vous souhaitez accéder à d'autres disques restés en MBR / formatés avec LVM : # apt install lvm2 lvm2-dbusd udisks2-lvm2 lvm2-lockd
  • Je n'utilise plus le RAID logiciel (trop peu fiable), mais pour ceux que ça intéresse : # apt install mdadm
  • Pour la gestion des réseaux : # apt install network-manager network-manager-gnome nm-tray rfkill wireless-tools resolvconf net-tools
  • Pour le Bluetooth : # apt install firmware-iwlwifi bluez-firmware blueman bluetooth bluez bluez-tools rfkill pulseaudio-module-bluetooth bluewho
  • Pour le Wi-Fi (complémentaires aux paquets cités pour le Bluetooth) : # apt install network-manager-gnome nm-tray wireless-tools
  • Pour les transferts de fichiers (vers mon site) : # apt install filezilla lftp
  • Pour les gros téléchargements (avec pause et reprise) en http : # apt install uget
  • Gestionnaire de fichier alternatif (je suis très satisfait de caja, nemo est un nautilus plus évolué et agréable) : # apt install nemo nemo-fileroller nemo-gtkhash
  • Autres : budgie*
  • Pour les hypocondriaque de leur machine : # apt install stacer atop htop nethogs qps glances filelight gkrellm gkrelltop hardinfo iotop lm-sensors
  • Anti-virus : # apt install clamav clamav-daemon
  • Pour jeter un œil de temps en temps sur la santé de mes disques durs : # apt install smartmontools gsmartcontrol smart-notifier
  • Pour la recherche :
    • de textes et/ou de fichiers (puissant, complet, rapide, pour mémo, déjà installé plus haut pour le monitoring système) : # apt install stacer
    • de textes et/ou de fichiers (puissant et complet mais pas très rapide, pour rappel) : # apt install krusader
    • de texte dans les fichiers (utilisation : $ ag “texte” /rep -u) (-u = unrestricted = all files) : # apt install silversearcher-ag
    • de fichiers :
      • fdfind est une alternative plus simple à la commande find (fdfind -h, fdfind fichier /répertoire, exemples : fdfind clamd.conf /etc/, fdfind -H .placeholder /etc/ pour les fichiers cachés) : # apt install fd-find
      • une autre alternative est le couple updatedb/locate (à lancer en root si vous souhaitez permettre la recherche dans les répertoires nécessitant les accès root : $ updatedb et $ locate
  • Pour la webcam : # apt install kamoso webcamoid obs-studio
  • Pour le son / multi-média : # apt install audacity gnome-sound-recorder pavumeter pulseeffects vlc youtube-dl
  • Pour créer des notifications (par mes scripts) : # apt install sox mpg123 mpg321 soundconverter gstreamer1.0-plugins-ugly
  • Un client qTox (équivalent libre d'Instant messenger avec chat et vidéo-conférence) : apt install qtox
  • Pour l'impression (installés par défaut, manque juste le driver de l'imprimante ci-après) : # apt install cups cups-browsed python3-cups cups-pk-helper python3-cupshelpers printer-driver-gutenprint cups-bsd
  • Et pour les imprimantes EPSON (j'ai une imprimante Epson Stylus SX235W, pour d'autres types d'imprimantes : printer-driver-*) : # apt install printer-driver-escpr
  • Et pour imprimer en PDF : # apt install printer-driver-cups-pdf
  • Pour le scanner : # apt install sane-utils skanlite
  • Pour la compilation : # apt install build-essential cmake cmake-qt-gui devscripts nasm ninja-build meson libsdl1.2-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-gfx-dev libsdl2-ttf-dev libopenal-dev libgegl-dev libfluidsynth-dev rustc libssl-dev
  • Utiliser les applis Java Web Start via le navigateur : # apt install icedtea-netx
  • Et : openjdk-(version)-jdk
  • Navigation alternative (en plus de Firefox, car plus léger pour falkon ou en dépannage pour chromium) : # apt install chromium falkon
  • J'aime un beau bureau avec un choix de thèmes : *-theme* tel que : # apt install arc-theme chameleon-cursor-theme deepin-icon-theme dmz-cursor-theme papirus-icon-theme numix-icon-theme-circle tango-icon-theme moka-icon-theme tangerine-icon-theme faenza-icon-theme elementary-xfce-icon-theme gnome-dust-icon-theme gnome-human-icon-theme gnome-illustrious-icon-theme gnome-noble-icon-theme gnome-wine-icon-theme gnome-wise-icon-theme gnome-icon-theme-yasis human-icon-theme gnome-icon-theme-symbolic sugar-icon-theme obsidian-icon-theme gnome-icon-theme-nuovo gnome-icon-theme-suede gnome-brave-icon-theme moblin-icon-theme gnome-theme-gilouche moblin-sound-theme
  • Autre série de thèmes (non testés, pour mémo pour moi) : # apt install adapta-gtk-theme blackbird-gtk-theme bluebird-gtk-theme chameleon-cursor-theme clearlooks-phenix-theme darkblood-gtk-theme darkcold-gtk-theme darkfire-gtk-theme darkmint-gtk-theme materia-gtk-theme moblin-cursor-theme murrine-themes numix-gtk-theme shiki-*

(plus dans la base : gnome-icon-theme-extras nuvola-icon-theme kdeartwork-theme-icon)

  • Autres plus ponctuels (et pas déjà installés par les dépendances ci-dessus): # apt install caja-actions caja-xattr-tags feedreader firebird3.0-common iat kaffeine partitionmanager screenruler simplescreenrecorder

(Pas/plus dans Testing : tomboy caja-extension-fma)

  • J'aime tout ce qui est graphisme : # apt install gimp-data-extras gpaint inkscape krita scribus
  • Pour les emojis : # apt install fonts-noto
  • J'aime aussi les gadgets : # apt install compiz gnome-colors saytime
  • Autre gadget sympa (la citation du jour, que je lance d'un clic gauche sur le poisson Wanda - une applet MATE, dans la barre des tâches) : # apt install fortunes-fr
  • Économiseurs d'écran (attention : à tendance à planter X) : # apt install rss-glx

(j'aime bien : Flocks, Flux, Helios, Hyperspace, Lattice, Lorenz Attractor, Skyrocket)

  • Pour les jeux :
    • Commun : # apt install dosbox opl3-soundfont playonlinux q4wine wine64 python-pygame python-pygame-sdl2 python3-pygame mono-complete
    • Pour les anciens petits jeux en 32-bit : # dpkg --add-architecture i386 && apt-get update && apt-get install wine32
    • Steam (un magasin de jeux en ligne) : # apt install steam:i386
    • Flatpak : # apt install flatpak gnome-software-plugin-flatpak qt5-default
  • Une sélection de jeux faciles à installer (pas de livrable complémentaire / configuration compliquée) : # apt install 0ad berusky brutalchess bubbros cataclysm-dda-sdl caveexpress crawl-tiles endless-sky-high-dpi enigma flare flight-of-the-amazon-queen flightgear flobopuyo freecol freedm freedroid freedroidrpg freeorion frogatto frozen-bubble gltron gnome-mahjongg gnome-mines gnome-nibbles gweled hedgewars heroes hex-a-hop holotz-castle jag jerry kmahjongg kpat lbreakout2 lix lugaru maelstrom marsshooter mazeofgalious megaglest minetest mirrormagic monsterz morris mrrescue mrboom naev neverball neverputt numptyphysics nexuiz nikwi openarena openclonk openttd opentyrian openyahtzee overgod pekka-kana-2 pingus pipewalker plee-the-bear powermanga pushover pychess qgo quadrapassel quarry ri-li redeclipse rockdodger rocksndiamonds scid scorched3d searchandrescue simutrans solarwolf sopwith spacezero starfighter supertransball2 supertux supertuxkart swell-foop tecnoballz teeworlds teg tomatoes tome toppler torcs trackballs triplane triplea tuxfootball tworld ufoai unknown-horizons uqm val-and-rick vonsh warmux warzone2100 wesnoth wesnoth-music whichwayisup widelands wizznic wordwarvi xblast-tnt xboard xbubble xdemineur xgalaga xmoto xscavenger xscorch yamagi-quake2 zaz

Et si vous avez installé l'architecture 32-bits (voir ci-avant) : # apt install etqw:i386

Ne fonctionne plus (pour mémo, ça reviendra peut-être) : funguloids

  • À tester : # apt install debian-faq-fr doc-linux-fr-pdf slim
  • À tester (suite) : apt install mate-sensors-applet moblin-cursor-theme moblin-sound-theme gtrayicon famfamfam-silk wm-icons gkrellm-hdplop gkrellmwireless

Installations spécifiques

Compatibilité 32-bit

Ce paragraphe traite de l'nstallation de paquets i386 (=32-bit, dont Steam) sur amd64 (=64-bit).

Préambule

Certains jeux, moteurs ou outils (Steam, Enemy Territory: Quake Wars, Quake4, PIX Bros, PiX Frogger, …) ne sont pas disponibles en 64-bits. Le seul moyen de les utiliser est d'ajouter le support 32-bit à votre distribution.

Ce paragraphe valide aussi le fonctionnement de Steam (32-bit) sur ma Debian 64-bit.

L'opération est rapide et simple, encore faut-il la connaître. La 1ere phase consiste à ajouter le dépôt i386 à votre distribution, la 2nde à ajouter les bibliothèques nécessaires. Cette dernière se fait naturellement lorsque vous installez votre jeu depuis les dépôts Debian.

Reste à installer les bibliothèques graphiques 32-bit nécessaires à l'accélération graphique :

Alternative 1 : En ce qui me concerne, j'ai une carte graphique nvidia récente à l'écriture de ces lignes(GeForce RTX 2070) qui n'est pas encore supportée par le pilote nvidia des dépôts (ou du moins je n'y suis pas encore parvenu). J'utilise donc le pilote propriétaire téléchargé sur le site de Nvidia (voir ci-avant).

Récemment, ce pilote m'a aussi proposé d'installer les bibliothèques graphiques 32-bit, ce que j'ai accepté, ce qui constitue la condition sine qua non au bon fonctionnement des applications utilisant l'accélération graphiques avec ce driver propriétaire.

Alternative 2 : L'alternative est bien sûr d'utiliser les bibliothèques graphiques des dépôts (via l'installation du paquet nvidia-driver-libs-i386:i386). Je ne l'ai pas testé puisque j'utilise le driver propriétaire NVidia qui m'a proposé l'installation de son équivalent.

L'installation

Je commence par ajouter le support des paquets 32-bit en plus de mes paquets 64-bits sur ma distribution Debian.

Ma documentation de référence : Debian (Multiarch HOWTO)

  1. En console je lance : # dpkg --add-architecture i386
  2. Puis sous Synaptic, je met à jour les paquets. Ensuite je clique sur le filtre “Architecture” (en bas à gauche de l'interface), je sélectionne “arch: i386” et je sélectionne mon paquet steam dans la liste, pour son installation. Je valide.
  3. A l'installation du paquet Steam, une interface de validation (Steam licence agreement) me demande si “I AGREE”, et me précise :

This computer appears to be using the Nvidia binary graphics driver (the nvidia-driver package). Steam is a 32-bit program, so running it on this computer requires the 32-bit versions of the Nvidia libraries, even if all the games you will run via Steam are 64-bit. Please install the nvidia-driver-libs-i386 package. For full functionality (including Vulkan), also install the libraries listed as Recommends in the nvidia-driver-libs-i386 package. If you are using a legacy version of the Nvidia driver such as nvidia-legacy-340xx-driver, please install the corresponding 32-bit legacy package, for example nvidia-legacy-340xx-driver-libs-i386.

Je n'ai pas suivi cette recommandation en n'installant pas le paquet nvidia-driver-libs-i386:i386 car dans ce cas il me propose d'installer une ribambelle de paquets dérivés de nvidia (des dépôts), alors que tout à l'heure, après l'installation d'un nouveau noyau linux suivi de la ré-installation du driver propriétaire nvidia, celui-ci m'a déjà proposé d'installer les bibliothèques nvidia i386 (j'ai été étonné car jusqu'ici il me signalait juste qu'elles n'étaient pas installées), ce que j'ai accepté (j'ai davantage confiance dans le pilote propriétaire nvidia que dans le pilote des dépôts, qui plante régulièrement et n'avait pas fonctionné avec ma carte nvidia récente).

Par expérience, je sais qu’installer toutes ces bibliothèques nvidia des dépôts au mieux sera une source de problèmes à plus ou moins long terme (quand il y en a beaucoup, tôt ou tard une mise à jour viendra perturber tout ça et ça deviendra un casse-tête - c'est un euphémisme, de réinstaller l'accélération graphique), et au pire ça peux tout me planter (l'accélération graphique) dès le prochain démarrage.

Résultat

Je lance Steam en console pour voir s'il y a des messages d'erreur : $ steam

(pour rappel, je n'ai donc pas installé la bibliothèque nvidia-driver-libs-i386:i386 des dépôts, mais celles i386 installées par le driver propriétaire nvidia)

Le 1er démarrage est très long (plusieurs minutes avec des passages où il semble ne rien se passer, d'où l'intérêt de le démarrer pour la 1ere fois en console pour avoir plus d'informations), car il télécharge des tas de choses puis installe tout ça.

Vient ensuite la saisie du login et du mot de passe (j'en avais déjà un puisque je l'utilisais sur mon ancien PC i386). J'ai testé tous mes anciens jeux et je constate qu'ils fonctionnent tous très bien (même Planetary Annihilation dont le son crachotait précédemment).

Je valide donc. Yees!

Flatpak

Documentation :

Flatpak est un système de virtualisation d’application disponible pour toutes les distributions Linux.

Pour installer Flatpak sous Debian (pas sûr que qt5-default soit utile, mais lu sur un forum) : # apt install flatpak gnome-software-plugin-flatpak qt5-default

Ensuite il est nécessaire de redémarrer votre PC pour que les modifications soient prises en compte.

La version de Flatpak des dépôts Debian (1.4.3-1) ne fonctionnait pas (ou du moins elle semblait fonctionner car elle se lançait, mais les applications plantaient sur un message : “Could not initialize GLX”, pour y remédier, mettre à jour Flatpak comme suit : $ flatpak update (le mot de passe root est ensuite réclamé)

Ajoutez le dépôt Flatpak souhaité :

# flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

L'installation des paquets Flatpak se fait à partir du site-dépôt Flathub : on sélectionne la page du logiciel souhaité depuis le navigateur et l'on clique sur le bouton “INSTALL”, ensuite on choisi “Ouvrir avec “Installation de l'application (par défaut)”, ce qui ouvre gnome-software (aussi dénommé “Logiciel”, s'il ne s'ouvre pas, lancez-le manuellement depuis le menu “Applications” ➜ “Outils système” ➜ “Logiciel”, réactualisez la page internet et cliquez à nouveau sur le bouton “INSTALL”). Sur ce dernier la page s'ouvre sur le logiciel sélectionné, on clique sur “Installer”. Une fois l'installation terminée, un raccourci vers l'application sera copié dans votre menu des applications (reste à le trouver :)), mais on peut aussi lancer l'application depuis gnome-software sur la page de l'application en cliquant sur le bouton “Lancer”.

Les données des applications sont stockées dans : ~./local/share/flatpak/

Snap

Documentation :

Snap est un système de container d'applications (livrées avec leurs dépendances) disponible pour toutes les distributions Linux.

Pour installer snap sous Debian : # apt install snapd

Quelques commandes de base :

  • Aide en ligne de commande : $ snap, ou mieux : $ snap help --all
  • Installation d'un paquet snap (stable) : # snap install nom_du_paquet
  • Changer de version (stable, candidate, beta, edge) : # snap refresh --channel=beta nom_du_paquet
  • Suppression d'un paquet snap : # snap remove nom_du_paquet
  • Liste des paquets snap installés sur votre système : $ snap list
  • Information sur un paquet installé via snap : $ snap info nom_du_paquet

Un paquet snap est installé dans le répertoire /snap. Pour l'exécuter, lancez : $ /snap/bin/nom_du_paquet</small>

Messages d'erreurs du noyau

Je rassemble ici les quelques messages d'erreur du noyau relevés lors du boot, et leur résolution.

Message "Kvm disabled by bios"

À chaque démarrage j'avais plusieurs messages “Kvm disabled by bios” qui ralentissaient d'1 à 2 secondes le démarrage (quand on a un SSD ça en devient frustrant d'avoir gagné d'un côté et de perdre du temps de l'autre pour un truc qu'on n'utilise pas).

Pour désactiver ces messages (merci au forum.pcastuces.com, l'une des méthodes consiste à activer la virtualisation dans le BIOS / l'UEFI - même si on ne l'utilise pas). Sur ma carte mère je ne trouvais pas l'option. Elle se trouve dans la section liée au CPU (dans le menus de gauche : OC (pour Overclocking) ➜ Caractéristique du CPU ➜ SVN Mode : Activé (vs Désactivé). Ensuite au démarrage suivant les messages disparaissent et le démarrage semble un peu plus rapide (au moins il n'y a plus ces messages agaçants :).

Sauvegarde / Réparation

J'ouvre ce paragraphe, car j'ai lu des trucs intéressants sur les solutions de sauvegarde / Restauration / Réparation, et j'y ai moi-même été sensibilisé par la force des choses :)

L'idée n'est pas de faire un truc encyclopédique mais plutôt un mémo pour des trucs / des docs à tester plus tard.

État de santé des disques

La doc d'UBUNTU-Fr : Smartmontools

On installe : # apt install smartmontools gsmartcontrol smart-notifier

Je ne m'étend pas sur cette partie, la doc d'UBUNTU est parfaite. J'ai particulièrement apprécié l'interface gsmartcontrol (accessible via le menu MATE Applications ➜ Outils système ➜ GSmartControl, ou par /usr/bin/gsmartcontrol-root)

La sauvegarde

Doc généraliste d'introduction :

J'ai créé une doc dans ce WIKI récapitulant les quelques tests effectués : La sauvegarde / Restauration de données.

KBackup est pour moi pour l'instant la meilleure solution : son interface est simple et il est fiable.

En premier abord Kup 0.7.1 m'avait semblé plus puissant, mais à l'utilisation il n'est pas fiable (le remède est dans ce cas pire que le mal, car on lui confie nos données). Il accumule des sauvegardes mais qu'il ne sait plus lui-même relire après un certain temps. Si vous avez retenu la sauvegarde incrémentale, vous ne pouvez même pas espérer récupérer ses sauvegardes.

Je ne liste ici que les outils retenus, car correspondant le plus à mes besoins : Kup (paquet kup-backup) pour la sauvegarde de base (3 plans de sauvegarde) et Kbackup pour une petite sauvegarde journalière en roue de secours. Kup est incontestablement le meilleur, par sa puissance (rapide et taux de compression important des données) et ses fonctionnalités (plusieurs types de sauvegarde simultané, et son interface pour la sauvegarde incrémentale est excellente), mais j'ai rencontré un bug avec Kup sur mon plan de sauvegarde à 5min, c'est pourquoi j'ai renforcé mon plan de sauvegarde. Après avoir testé Kup, je me rend compte que le RAID logiciel que j'utilisai précédemment perd une grande partie de son intérêt : en bureautique Kup est totalement transparent (je ne vois pas de ralentissement de mon bureau, néanmoins il mobilise beaucoup les disques durs, du fait de mes plans de sauvegarde rapprochés). De plus il me rend nettement plus serein pour la sauvegarde de mes onglets Firefox (m'évitera de les sauvegarder régulièrement manuellement) et les plantages (devenus plus rares, mais je restais prudent) de Tellico. Bref, l'essayer, c'est l'adopter :) Mais son utilisation (bug de sauvegarde de Kup) m'a montré qu'il faut rester prudent, donc je l'utilise en conjonction avec KBackup (petite sauvegarde journalière) et j'y ai ajouté un 3ème plan de sauvegarde en clair (=miroir) sous Kup.

REX de l'utilisation de Kup (v.0.7.1) sur la durée (MAJ du 29/03/2020) : Après une utilisation prolongée (3-4 mois ? 6 mois? je ne m'en souviens plus), ce logiciel n'est absolument PAS FIABLE. Les sauvegardes fonctionnent bien pendant 1 à 2 semaines, puis il commence à afficher des anomalies de sauvegarde. Je passe mon temps à les corriger en lui fournissant d'autres répertoires et ça recommence. De plus les sauvegardes incrémentales sont un véritable piège : elles sont très rapides - presque transparentes, mais en cas de plantage de l'interface de lecture des fichiers de sauvegardes (ce qui arrive tout le temps) elles ne sont plus lisibles. Bref, je ne recommande plus ce logiciel (en version 0.7.1) qui n'est absolument pas fiable. Je l'ai à présent désactivé car il mobilise beaucoup les disques durs pour un résultat qui n'est pas à la hauteur.

Le "Ghost"

Le “Ghost” (copie miroir manuelle d'un disque) :

Le RAID logiciel

Le RAID logiciel (J'en suis nettement moins fan à présent). Ce n'est pas une solution de sauvegarde, ça permet de palier à la panne matérielle d'un disque, mais ça ne protège pas contre l'effacement accidentel ou la malveillance. J'utilise le RAID 1, mais là aussi la réalité m'a montré ses limites : si pour une raison x, le disque “modèle” est effacé ou écrit avec de mauvaises données, la copie RAID viendra se détruire d'elle-même. Le RAID protège (partiellement) contre un disque défectueux, mais pas contre une opération mal-intentionnée ou une bêtise. Non seulement il n'est pas simple à mettre en œuvre, mais en cas de plantage de votre installation, il complique beaucoup les choses pour récupérer vos données. Je pense qu'il vaut mieux privilégier une sauvegarde de vos fichiers / répertoires par un outil spécialisé (sauvegarde incrémentale ou autre).

La restauration de données

Ce paragraphe traite de la restauration de données perdues (suite à la panne d'un disque)

Quelques docs trouvées :

Quelques logiciels :

Ils permettent la restauration de fichiers, mais pas la restauration de partitions telles qu'elles étaient à l'origine (il n'y a pour l'instant que Windows qui sait faire ça).

  • TestDisk (en dépôts Debian) : Tuto (pour windows) et Testisk (wiki) : il est multi-plateforme et GPL v2+. En revanche pour Linux, si j'ai bien compris, il ne récupère que les données, pas les partitions.
  • PhotoRec (distribué avec TestDisk). Idem, il ne récupère que les données, pas les partitions.
  • Il y a aussi Foremost mais ça ne semble pas simple, et orienté lui aussi vers les fichiers.

Photorec

Documentation :

Gros avantage : c'est simple, ça fonctionne bien. Il sait récupérer des fichiers zip, texte, vidéo, images, html. Photorec ignore le système de fichiers, donc il fonctionne même si le système de fichiers est très endommagé. Gros inconvénient : c'est de la récupération en vrac. Les fichiers récupérés ont perdus leur nom d'origine, idem pour les répertoires.

Il s'installe via le paquet testdisk : # apt install testdisk

Disque à sauver pour mon test : mon disque SSD de 80Go (de mémoire occupé à 20%-30% maxi, soit env. 20Go) formaté (pour dépanner Louis) avec Windows 10 (bravo ! :)), contenant mon système de démarrage (exclusivement Linux). Les seuls trucs qui m'intéressent ce sont quelques fichiers texte de paramétrage (ceux du RAID 1 notamment). Il se trouve actuellement sur /dev/sdb (/dev/sda étant occupé par ma clé de dépannage - que j'ai initialisé avec amour pour disposer d'un environnement agréable en cas de plantage).

Récupération :

Pour accueillir les données à récupérer il est nécessaire de disposer de suffisamment de place sur un autre disque (on ne doit pas utiliser le même disque que celui à analyser pour ne pas écraser les données à récupérer, ça semble évident).

La place nécessaire : j'ai lu (de mémoire) qu'il faut compter le double ou le triple (voir davantage) de l'espace occupé par le disque initial.

Personnellement j'ai utilisé un ancien autre disque pour accueillir les données à récupérer, que j'ai monté sur /mnt/DDsec/sda1/RecPhotorec.

Lancement :

$ su root
# cd /mnt/DDsec/sda1/RecPhotorec/
# /usr/bin/photorec /dev/sdb

Ensuite il suffit de se laisser guider, c'est très simple.

En ce qui me concerne, pour 20Go (estimé) de données à récupérer, j'ai obtenu (après environ 1/4 d'heure) 41Go de données, en 57292 fichiers (nommés “fxxxxxxx.txt”, ou .elf, .xml, .java, …) répartis dans 115 répertoires (nommés “recup_dir.xxx”). Là-dedans il y a des tonnes de fichiers de paramétrage et de fichiers de logs. De plus de nombreux fichiers textes sont dédoublés, ou tronqués au début, à la fin ou les deux.

Sachant que je cherche 1 à 2 fichiers .txt, voilà de quoi occuper mes longues soirées d'hiver :))

Cela dit, je suis surpris de certains fichiers récupérés (notamment une facture en PDF que je pensais être sur /mnt/… ou sur /home - tous deux sur des disques externes, et non pas sur / !)

Heureusement, il y a l'utilitaire “ag” (# apt install silversearcher-ag) qui permet d'une ligne de trouver les fichiers répondant à mes critères : $ ag 'UUID' /mnt/DDsec/sda1/RecPhotorec/recup_dir.114

exemple :

$ ag "UUID" /mnt/DDsec/sda1/RecPhotorec/recup_dir.114
/mnt/DDsec/sda1/RecPhotorec/recup_dir.114/f153306215.txt
2:# device; this may be used with UUID= as a more robust way to name devices
7:UUID=16baa59f-12cd-47a1-afb0-aff63e5a1d0d /               ext4    errors=remount-ro 0       1
9:UUID=4cab2c6c-9836-4662-b458-f21a09b6f461 /home           ext4    defaults        

/mnt/DDsec/sda1/RecPhotorec/recup_dir.114/f153043135.txt
2:# device; this may be used with UUID= as a more robust way to name devices
7:UUID=16baa59f-12cd-47a1-afb0-aff63e5a1d0d /               ext4    errors=remount-ro 0       1
9:UUID=4cab2c6c-9836-4662-b458-f21a09b6f461 /home           ext4    defaults        

/mnt/DDsec/sda1/RecPhotorec/recup_dir.114/f153307079.txt
2:# device; this may be used with UUID= as a more robust way to name devices
7:UUID=16baa59f-12cd-47a1-afb0-aff63e5a1d0d /               ext4    errors=remount-ro 0       1
9:UUID=4cab2c6c-9836-4662-b458-f21a09b6f461 /home           ext4    defaults        

/mnt/DDsec/sda1/RecPhotorec/recup_dir.114/f153096639.txt
163:Jul  6 19:05:38 localhost /usr/lib/gdm3/gdm-x-session[27389]: Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.2.0-4-686-pae root=UUID=6b84721a-d77c-476e-abf2-d3c1683f96e3 ro vga=788 quiet

/mnt/DDsec/sda1/RecPhotorec/recup_dir.114/f153178112.txt
585301:Jul  6 19:46:16 localhost kernel: [    0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.6.0-1-rt-686-pae root=UUID=6b84721a-d77c-476e-abf2-d3c1683f96e3 ro vga=788 quiet
585767:Jul  6 19:46:16 localhost systemd[1]: Listening on UUID daemon activation socket.
goupil2@DebianUSB:/mnt/DDprc/Download$ 

ou encore plus simple et complet (à la racine des répertoires, ainsi il m'affiche toutes les occurrences de mon texte dans tous les répertoires à examiner) :

$ ag "UUID" /mnt/DDsec/sda1/RecPhotorec/

(le problème c'est le nombre d'occurrence très important)

Finalement j'ai trouvé ce que je cherchais avec la commande (lançée dans le répertoire racine des répertoires et fichiers récupérés):

$ ag "mdadm"
(...)
recup_dir.62/f96733208.txt
1:# mdadm.conf
3:# Please refer to mdadm.conf(5) for information about this file.
(...)

Ce fichier f96733208.txt contient (partiellement) le fichier de configuration mdadm.conf, avec les lignes que je cherchais :

(...)
# definitions of existing MD arrays
ARRAY /dev/md/0  metadata=1.2 UUID=fa32620f:6167fa5d:3b255997:ccc62228 name=goup2net:0
ARRAY /dev/md/1  metadata=1.2 UUID=880cdac5:dbc27222:d7eb5dc4:fc019ee1 name=goup2net:1
ARRAY /dev/md/2  metadata=1.2 UUID=6fe8d964:83f645a5:23b3f8da:43e65f36 name=goup2net:2
ARRAY /dev/md/3  metadata=1.2 UUID=3131463f:df0d8a0b:76c3e45c:8931867b name=goup2net:3
ARRAY /dev/md/4  metadata=1.2 UUID=5480c6a8:7923d831:3d42b52f:5fad339c name=goup2net:4

Sur ma nouvelle installation, je copie ces lignes dans /etc/mdadm.conf, puis je lance la commande (indiquée dans le nouveau fichier /etc/mdadm.conf, afin que initramfs soit lui aussi mis à jour) :

# update-initramfs -u

Ensuite j'éteins mon PC, y insère mes 2 disques RAID, puis redémarre et … ça marche !!!!! Yeeeeessssss !!!!

Merci qui ? Merci Photorec et ses développeurs, et les développeurs / mainteneurs Debian !!!

Dépannage à partir de la clé d'installation Debian

Encore une documentation conçue en situation : avec Debian Sid, vous avez toutes sortes de mises en situation. Si vous avez les nerfs solides, vous allez en apprendre des choses ! :))

J'ai à peine ré-installé mon système précédent (après un changement de carte mère et carte graphique) qu'une nouvelle version de Grub vient casser son démarrage :))

J'ai vu passer les paquets grub, mais je ne me suis pas méfié…

Pour éviter de rendre cette documentation indigeste, j'ai séparé son contenu :

  • la partie WIKI ci-dessous,
  • le journal du dépannage en question : Panne de Grub2

Du coup c'est l'occasion d'aborder le dépannage à partir d'un netinstall Debian (indispensable) que vous aurez installé sur une clé USB (à partir d'un autre PC ou lorsque votre système fonctionne).

Quelques documentations :

Le netinstall Debian 64-bit : Installing Debian via the Internet
(la version 64-bit s'appelle amd64)

Dans la procédure qui suit, je suppose que vous avez copié cette netinstall Debian sur votre clé USB.

Procédure :

  • Insérez votre clé USB dans le port USB de votre choix
  • Rebootez votre PC, puis après le bip ou le logo de votre carte mère, maintenez appuyé la touche “Suppr”, ce qui vous fait entrer dans son BIOS (pour les anciennes cartes mères) /UEFI (pour les cartes mères récentes).
  • Trouvez le menu permettant de choisir le périphérique de démarrage et sélectionnez votre clé USB à la place de votre disque dur, enregistrez et quittez, le boot va reprendre et cette fois-ci va lire votre clé USB. Une fois votre opération de dépannage effectuée, il vous suffira de faire l'inverse.

Via le menu "Graphical rescue mode"

Je découvre avec cette documentation que je ne l'avais jamais utilisé auparavant, je passais par le menu classique d'installation que j'interrompais en cliquant sur le bouton “Revenir en arrière'.

Celui-ci à l'avantage d'être mieux conçu pour du dépannage et plus convivial (lorsque l'on est en console, on est toujours dans la fenêtre graphique de l'installateur, bénéficiant notamment du bouton de retour en arrière et des ascenseurs pour revenir sur de longs messages qui ont défilés trop vite en console par exemple).

  • Sur le menu de démarrage du netinstall Debian choisissez “Advanced options…” puis ”… Graphical rescue mode”
  • Le netinstall Debian va vous poser quelques questions (pays, informations pour atteindre le réseau - voir le paragraphe “Réseau” ci-avant, nom de la machine, domaine et il va tenter de récupérer l'heure). Les questions sur le nom de la machine, son domaine et l'heure n'ont pas d'importance si vous n'êtes pas connecté en DHCP (si vous êtes en IP statique, je ne me prononce pas si vous êtes en DHCP, je n'ai pas les compétences pour cela).
  • Vous devez ensuite choisir le périphérique qui vous servait de système de fichiers racine (/dev/sdb1 dans mon cas, pensez au décalage de périphériques du fait de la présence de la clé de dépannage)
  • Notez que la commande mdadm (montage de disques RAID) est disponible sous ce netinstall Debian dans les shell proposés ci-après.

Vous avez accès à un menu fort bien conçu qui vous propose :

  • Exécuter un shell dans /dev/sdb1
  • Exécuter un shell dans le contexte de l'installateur
  • Réinstallation du programme de démarrage GRUB
  • Changer de système de fichiers racine
  • Redémarrer le système

Exécuter un shell dans /dev/sdb1

C'est un chroot direct sur votre disque. Il vous permet - si vous y avez accès (votre partition racine doit être complète, donc si vous avez des partitions externes contenant par exemple /usr ou /var, vous devez les monter manuellement) d'installer des paquets comme si vous veniez de démarrer normalement sur ce système, et d'effectuer toutes sortes d'opérations.

Lorsque vous avez terminé, il vous suffit de cliquer sur le bouton “Revenir en arrière”

Réinstallation du programme de démarrage GRUB

Utile pour réinstaller Grub sur le MBR (mais ça ne fonctionne pas toujours malheureusement.

Exécuter un shell dans le contexte de l'installateur

Dans ce cas précis vous n'êtes pas en chroot, votre disque à dépanner est monté sur l'un des répertoires (dénommé ”/target“) de votre netinstall Debian et vous y avez accès à la fois en lecture et en écriture (et il est prêt à être chrooté si besoin).

Là il vous précise que /dev/sdx (votre disque racine) est monté sur /target et que vous pouvez utiliser les outils disponibles dans l'environnement de l'installateur. Si l'on a besoin d'utiliser /target comme racine, on peut utiliser la commande “chroot /target”. Si l'on a besoin d'autres systèmes de fichiers, comme un système de fichiers /usr distinct, on doit le monter soi-même.

Vous cliquez sur “Continuer” et vous voilà dans votre shell “externe” (vous n'êtes pas en chroot sur votre système en panne) sur le système de fichiers de la clé USB et votre disque en panne est monté sur /target

Si vous avez des répertoires en RAID1, il faudra les monter manuellement via la commande mdadm (disponible sur ce netinstall).
Vous pouvez lancer la commande (pour voir les périphériques disponibles) : # fdisk -l
Vous y verrez vos disques RAID non assemblés (sous la forme de /dev/sdx et /dev/sdy, au lieu de /dev/md).

D'excellentes docs sur le RAID : UBUNTU-fr (RAID logiciel avec mdadm), et pour le RAID 1 : UBUNTU-fr (Comment installer Ubuntu sur un RAID-1 logiciel ?), ou WIKI Debian-fr (Raid logiciel (mdadm))

Cette dernière indique :

Cas 2 : panne du disque système, la grappe RAID est OK

Choix 1 - Si vous aviez sauvegardé le fichier /etc/mdadm/mdadm.conf, vous pouvez le restaurer et taper la commande suivante :

# mdadm --assemble --scan

Choix 2 - Ou la méthode manuelle, vous assemblez vos grappes manuellement :

1. Commencez par identifier et examiner les disques à assembler à l'aide des commandes :

# fdisk -l
# mdadm --examine /dev/sdb1

2. Assemblez-les avec la commande (exemple pour la grappe /dev/md0, à adapter à votre cas) :

# mdadm --assemble /dev/md0 /dev/sdb1 /dev/sdc1

3. Enfin, une fois que les disques sont assemblés et synchronisés, sauvegardez votre configuration :

# mdadm --detail --scan --verbose > /etc/mdadm/mdadm.conf

Via le menu d'installation classique

C'est la méthode que j'utilisais habituellement, mais je me rend compte qu'elle est obsolète (même si elle est tout à fait utilisable). Elle a le mérite de me permettre d'expliquer le chroot ;)

  • Sur le menu de démarrage du netinstall Debian choisissez (je ne me souviens plus : à compléter)
  • Viennent les questions habituelles sur le pays, … (voir ci-avant, c'est identique)
  • puis lorsqu'il va aborder le partitionnement des disques, vous pourrez choisir l'option “Revenir en arrière” qui vous fera revenir au menu principal de la clé.
  • Choisissez “Exécuter un shell” et vous voilà en ligne de commande, sous la partition racine virtuelle montée par votre clé USB (ce n'est pas réellement sa partition physique mais une partition montée en mémoire).
  • Il vous faudra connaître le périphérique de votre disque de démarrage (moi c'est /dev/sdb pour mon SSD) et le type de système de fichier installé (le plus courant actuellement étant ext4) et dans ce cas vous pouvez créer un répertoire (je l'ai appelé “tt” ci-après) sur cette partition virtuelle pour y monter votre disque :
# mkdir tt
# mount -t ext4 /dev/sdb1 tt
# cd tt
# ls

Vous êtes sur la partition racine de votre disque dur.

Le chroot permet de monter votre système client (ici votre disque dur à dépanner) sur votre système hôte (la partition racine virtuelle créée par votre clé USB) comme si vous aviez démarré dessus, afin d'y effectuer les opérations souhaitées.

Dans mon cas, l'idée est de voir si je peux soit réinstaller grub2 sur son MBR ou, si çà ne fonctionne pas comme prévu, d'essayer de réinstaller la précédente version de grub2 qui fonctionnait bien.

La méthode classique pour réaliser un chroot (selon Debian & UEFI):

# mount /dev/sdXX /mnt
# mount --bind /dev  /mnt/dev
# mount --bind /proc /mnt/proc
# mount --bind /sys  /mnt/sys
# mount --bind /usr  /mnt/usr
# chroot /mnt

Je reprend la doc du site DebianFacile pour l'adapter à mon exemple :

Je reviens à la partition racine virtuelle de ma clé USB et y monte les périphériques que ma clé USB netinstall a trouvée (ces périphériques se trouvent sous la forme de fichiers sur le répertoire /dev virtuel de la clé USB, la commande --bind permet de les rediriger) :

# cd /
# mount --bind /dev /tt/dev (attention : il y a 2 tirets avant "bind")

On monte aussi le répertoire /proc (un répertoire virtuel système, son système de fichier est de type “proc”, voir la doc Ubuntu-fr ci-avant pour l'utilité de ce répertoire)

# mount -t proc /proc /tt/proc

Puis l'on fait notre chroot, et l'on monte les autres disques :

# chroot tt
ou 
# chroot tt /bin/bash
(si vous souhaitez utiliser la console bash (il me semble que par défaut c'est la console sh)
# mount -a

Une fois cette commande lancée, le système se comporte comme si vous étiez sur votre client et aviez démarré dessus.

Dans le cas de montages RAID, la commande de montage risque de ne pas fonctionner. Il vous faudra sans doute charger les modules part_gpt.mod, diskfilter.mod, mdraid1x.mod et ext2.mod qui ne sont pas chargés en mémoire je pense (je n'ai pas testé mais peut-être qu'un # modprobe suivi de ces modules devrait permettre d'y arriver). Si ça ne suffit pas, voir la partie montage RAID sur le journal “Panne de Grub2 le 10/07/2019” au paragraphe Via le menu "Graphical rescue mode".

Tentative de démarrage via le mode de dépannage de Grub

Une autre méthode de dépannage envisageable (mais aride) : tenter un démarrage depuis le disque d'origine en passant par le paramétrage de GRUB2. Une bonne documentation : CoursInfoRevest (WIKI Grub-Rescue)

Ça n'est pas très ragoûtant parce que GRUB2 est tout sauf ergonomique. Les commandes sont obscures, le clavier en QWERTY, et il n'y a pas de rappel de commandes : à chaque fois que l'on valide une commande si l'on a fait une erreur de syntaxe (avec un clavier en QWERTY, rien d'anormal) il faut tout retaper, bref, une purge ce truc.

J'ai écris le journal de mes tentatives ici : Tentative de démarrage via le mode de dépannage de Grub


trucs_persos.txt · Dernière modification: 12/06/2020 06:49 par goupildb