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 !
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, …).
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) :
Serveurs de noms utilisables :
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) :
Nota :
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 :
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 :
deb http://ftp.us.debian.org/debian/ testing main contrib non-free
# apt update # apt install aptitude # apt install cinnamon (actuellement mon gestionnaire de fenêtre préféré) # apt install mate-desktop-environment (un bon gestionnaire de fenêtre, mais en perte de vitesse) # 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 #
Je rassemble ici des informations utiles pour un dépannage (en général sans interface graphique :) (à peu près) serein.
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 :
Merci aux intervenants sur le forum StackExchange pour le mode opératoire.
Pour le test, j'ai installé l'utilitaire : fbi (en dépôt)
Il permet d'afficher une image dans le framebuffer (et donc de pouvoir vérifier s'il est activé, sinon çà ne fonctionnera pas).
J'ai copié l'image du jeu “0ad.jpg” dans le répertoire /mnt/DDprc/Download/
Dans /etc/default/grub :
Dans /etc/grub.d/00_header :
Puis :
Et je vois l'image de 0ad en plein écran sur mes 2 écrans : yees !
J'avais fais tout ceci à l'origine pour tester la console terminology avec le framebuffer (qu'elle supporte), mais au lancement elle affiche de nombreux messages mais ne se lance ni en root ni en simple utilisateur :(
(voir l'excellente doc sur Fedora.fr)
Remarques :
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.
Pour obtenir des infos sur votre matériel :
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
Le clavier Français ne pose en principe pas de soucis. Si vous souhaitez ajouter une autre langue : sous Cinnamon ou 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.
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 :
Recherche d'un paquet en console :
Recherche d'un fichier :
Reconfigurer un paquet :
Désinstaller un paquet (voir le WIKI UBUNTU):
Une recherche beaucoup plus simple si vous avez un autre PC fonctionnel à côté : Debian
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).
Partie commune pour Synaptic, apt ou dpkg
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.
# 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
# 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 :)
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++
# 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 :
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 :
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.
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 :
Je n'avais pas compris la convention d'écriture des raccourcis :
Quelques exemples courants :
(voir le man Français ci-avant pour les nombreuses autres commandes)
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 :
Ca reste néanmoins très difficile de naviguer sans graphisme sur un site tel que nvidia par exemple.
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.
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 :
(pour différents tests on peut l'améliorer en : rm xlog.txt && X -verbose 6 > xlog.txt 2>&1)
Sa lecture :
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.
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.
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).
Avantage :
Inconvénient : pas de mise à jour automatique du driver.
Installation :
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 :
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.
Il y a plusieurs méthodes :
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 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 :
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).
La bible sur le sujet : UBUNTU-fr
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 :
Toujours sous Cinnamon, l'essentiel des réglages va se passer dans l'onglet “Sortie” où vous sélectionnez en haut de la zone le périphérique de sortie (en ce qui me concerne, la carte sonore de ma carte mère est identifiée en “Line Out Family 17h (Models 00h-0fh) HD Audio Controller”), puis dans la zone du dessous je sélectionne “Sortie Surround analogique 4.0” (j'ai un système 4.1, mais je ne parviens pas à activer le caisson de basse quelque-soit les gestionnaire de fenêtre, tant pis pour l'instant je reste comme çà), et l'on teste ce son en cliquant sur le bouton “Test 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).
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 :
Ci-dessous les réglages retenus dans mate-volume-control :
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).
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) :
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.
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).
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.
1er Sélecteur :
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 :
3ème sélecteur :
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).
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.
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).
La bible du réseau sous Linux (ça peut servir) : Administration réseau sous Linux/Configuration réseau
$ nmcli : permet de voir les interfaces disponibles et celles raccordées
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) :
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 :
Pour pouvoir utiliser le “PC Internet” en passerelle j'active sur cette machine :
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” :
Onglet “Forwarding” :
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 Cinnamon ou 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 Cinnamon ou 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
Je décris ci-après le mode opératoire sous MATE - parce que j'avais commençé par là, mais à présent je suis sous Cinnamon, qui me semble encore plus intuitif et évolué (et qui bien-sur a repris tous mes paramètres de MATE), et je n'ai pas repris cette documentation, mais le principe est le même.
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 :
Onglet Général :
Onglet Sécurité 802.1X
Onglet DCB
Onglet Proxy
Onglet Paramètres IPv4
Onglet Paramètres IPv6
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 :
Onglet Général :
Onglet Sécurité 802.1X
Onglet DCB
Onglet Proxy
Onglet Paramètres IPv4
Onglet Paramètres IPv6
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 :
Onglet Général :
Onglet Sécurité 802.1X
Onglet DCB
Onglet Proxy
Onglet Paramètres IPv4
Onglet Paramètres IPv6
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 :
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 :
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
Sous ce nouveau fichier de connexion que j'ai par la suite nommé “Connexion Ethernet (enp24s0)” j'ai :
Onglet Ethernet :
Onglet Général :
Onglet Sécurité 802.1X
Onglet DCB
Onglet Proxy
Onglet Paramètres IPv4
Onglet Paramètres IPv6
Ensuite :
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 :
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 >
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 :
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
* ☐ Requiert un adressage IPv6 pour que cette connexion fonctionne (désactivé, par défaut)
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 :
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).
Pour jouer de la musique située la tablette sur votre PC :
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 :
À 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 :
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) :
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) :
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) :
# 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 :
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”.
Onglet “Général”
Onglet “Wi-Fi” :
Onglet “Sécurité Wi-Fi”
Onglet “Proxy” : (je ne passe pas par un proxy)
Onglet “Paramètres IPv4”
Onglet “Paramètres IPv6”
À 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 :
Plus en détail :
Nota concernant l'IPv6 :
Quelques sites testés en IPv6 :
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).
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 :
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 !
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).
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) :
Ça marche !
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.
Installation des gestionnaires de connexion sddm et lightdm :
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.
[SeatDefaults] greeter-setup-script=/usr/bin/numlockx on
[General] Numlock=on
[Seat:*] greeter-hide-users=false defaut-user=goupil2
Je suis à présent passé sous le gestionnaire Cinnamon, alors qu'à la rédaction initiale de cette documentation j'étais encore sous le gestionnaire de fenêtre MATE.
Je trouve Cinnamon bien plus évolué et stable que MATE.
Je n'ai pas désinstallé MATE, je le conserve en secours en cas de problème avec Cinnamon. Cette documentation reste encore assez orientée sur MATE, mais je vais peu à peu l'adapter pour Cinnamon.
(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).
J'aime beaucoup l'aspect rondelet des polices UBUNTU. La police qui s'en rapproche le plus sous Debian (notamment les “a” dont l'aspect est un “o” avec une barre verticale à droite du “o”) est la police : Quicksand.
Après un court passage sur la jolie police Luciole (ttf-luciole, disponible dans AUR, rappelant la police Macintosh, recommandée par Ysabeau sur son excellent article Où il est question de police, une police étudiée pour les mal-voyants), j'ai finalement jeté mon dévolu sur Noto Sans Regular (retour à la case départ :)) qui me semble plus lisible, plus compacte et mieux rendu à l'écran que Quicksand.
Noto Sans Regular et Cantarel Regular sont très proches, mais Noto Sans Regular me semble un peu plus rond et plus lisible à l'écran.
Je l'ai donc employée à toutes les sauces :).
Voici mes réglages pour le bureau Cinnamon (menu “Paramètres système ➜ Sélection de polices”) :
Police par défaut : Sans Regular 9 ⇒ Quicksand Medium Bold 10 Noto Sans Regular 10
Police du bureau Noto Sans Regular 10 ⇒ Quicksand Bold 10 Noto Sans Regular 11
Police des documents : Cantarel Regular 11 ⇒ Quicksand Regular 11 Noto Sans Regular 10
Police à chasse fixe : Monospace Regular 11 ⇒ Quicksand Bold 11 Noto Sans Regular 11
Police du titre des fenêtres : Sans bold 10 ⇒ Quicksand Bold 12 Noto Sans Regular 11
Pour appliquer cette police aux applications utilisant Qt (tel que Tellico), il faut aller également dans l'application qt5ct (accessible sous Cinnamon dans le menu Préférences ➜ Paramètres de Qt5 ➜ Onglet “Polices” (j'ai retenu là aussi Noto Sans Regular 10).
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)
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!
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/
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 :
Un paquet snap est installé dans le répertoire /snap. Pour l'exécuter, lancez : $ /snap/bin/nom_du_paquet</small>
Je rassemble ici les quelques messages d'erreur du noyau relevés lors du boot, et leur résolution.
À 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 :).