Conseils aux nouveaux arrivants pour ne pas endommager leur système Debian

Broken Debian mug

Debian est un système fiable et robuste. Cependant, les utilisateurs disposant d'un accès superutilisateur (root) peuvent apporter les modifications qu'ils souhaitent, de sorte qu'il est facile pour de nouveaux utilisateurs d'endommager leur système en ne faisant pas les choses à la manière de Debian. Cette page liste les erreurs communes faites par de nouveaux utilisateurs. Certaines choses listées ici peuvent être réalisées en toute sécurité, mais uniquement si vous avez assez d’expérience pour réparer votre système si les choses tournent mal.

La principale mise en garde faite ici est que les conséquences ne sont pas toujours immédiates. Les prochaines mises à jour pourraient être impossibles sans une réinstallation complète du système. Si vous voulez mettre à jour sans avoir à réinstaller complètement, essayez de ne pas reproduire les erreurs soulignées ci-dessous.

Un des premiers avantages de Debian, ce sont ses dépôts centralisés composés de plusieurs milliers de paquets. Si vous arrivez sur Debian depuis un autre système d'exploitation, vous pourriez être tenté par l'installation de logiciels que vous trouverez sur d’autres sites Internet. Sur Debian, l'installation de logiciels à partir de sites Internet autres est une mauvaise habitude (voir la page anglaise DebianSoftware#Footnotes). Il est toujours préférable d'utiliser des logiciels depuis les dépôts officiels de Debian, si cela est possible. Les paquets des dépôts Debian sont connus pour fonctionner et s'installer correctement. Utiliser seulement des logiciels issus des dépôts Debian est beaucoup plus sûr que l'installation depuis des sites Web pris au hasard. Ils pourraient contenir des logiciels malveillants et ouvrir des failles de sécurité.

Ne pas fabriquer un FrankenDebian

Debian stable ne doit pas être mélangée à d'autres versions de Debian de manière imprudente. Si vous essayez d'installer un logiciel qui n'est pas disponible dans la version actuelle de Debian Stable, ce n'est pas une bonne idée d'ajouter des dépôts d'autres versions de Debian.

Tout d'abord, le comportement par défaut d'apt-get upgrade est de mettre à niveau tout paquet installé vers la version disponible la plus élevée. Si, par exemple, vous configurez l'archive trixie sur un système bookworm, APT essayera de mettre à niveau la plupart des paquets vers trixie.

Cela peut être atténué en configurant l'épinglage apt pour donner la priorité aux paquets de bookworm.

Cependant, même installer quelques paquets d'une « future » version peut être risqué. Les problèmes peuvent ne pas se produire tout de suite, mais la prochaine fois que vous installerez les mises à jour.

Certaines casses pourraient être expliquées par le fait qu'un logiciel d'une version de Debian est construit pour être compatible avec l'ensemble des autres logiciels disponibles de cette version uniquement. Par exemple, l'installation de paquets de trixie sur un système bookworm installera également de nouvelles versions de bibliothèques de base, y compris libc6. Il en résultera un système qui ne sera pas « Stable » ni « Testing », mais un mélange endommagé des deux.

Dépôts qui peuvent créer un FrankenDebian si utilisés avec Debian Stable :

Certains dépôts tiers pourraient apparaitre sûrs à utiliser puisqu'ils ne fournissent que des paquets qui n'ont pas d'équivalents dans Debian. Cependant, il n'y a pas garanties qu'ils n'en ajouteront pas à l'avenir, conduisant à la casse de votre système.

Enfin, les paquets dans les versions officielles de Debian ont subi des tests approfondis, souvent pendant des mois, et seuls les paquets validés sont autorisés dans une version. D'un autre coté, les paquets issus de sources externes pourraient altérer des fichiers appartenant à d'autres paquets, configurant involontairement le système, introduisant des vulnérabilités, provoquer des problèmes de licence.

Une fois les paquets issus de sources non officielles induites dans un système, il devient difficile d'identifier la cause de la casse du système, tout particulièrement si cette dernière survient plusieurs mois après.

Ne pas utiliser les scripts d'installation des fabricants de GPU (carte graphique)

Debian inclut des pilotes open sources et libres qui supportent la plupart des cartes vidéo. Les pilotes libres offrent la meilleure intégration avec le reste du système Debian et fonctionnent très bien pour la plupart des utilisateurs.

Si vous devez absolument utiliser les pilotes propriétaires aux sources fermées, ne les téléchargez pas directement depuis le site du fabricant ! L'installation des pilotes de cette façon fonctionne seulement pour le noyau actuel, et lors de la prochaine mise à jour du noyau vos pilotes vidéo ne fonctionneront plus jusqu’à ce qu'ils soient réinstallés manuellement à nouveau.

Heureusement, Debian propose une solution pour installer les pilotes de carte vidéo propriétaires en utilisant les dépôts. L'installation par les dépôts Debian fera en sorte que les pilotes continuent de fonctionner même après les mises à jour du noyau.

Ne pas souffrir du syndrome « WOW, c'est nouveau donc je le veux »

La raison pour laquelle Debian « stable » est si fiable, c'est parce que le logiciel est largement testé et ses bugs corrigés avant d'être ajouté. Cela signifie que la version la plus récente du logiciel n'est souvent pas disponible dans les dépôts stables. Mais cela ne signifie pas que le logiciel est trop vieux pour être utile !

Avant de tenter d'installer la nouvelle version d'un logiciel issus d'autres sources que les dépôts Debian « stable », voici quelques points à garder à l'esprit :

À noter : les bogues sont trouvés dans les logiciels existants, mais seules les nouvelles versions de ces logiciels introduisent des nouveaux bogues et vulnérabilités.

Quand une version entre dans Debian et reçoit des correctifs, le nombre de vulnérabilités et bogues inconnus diminuera constamment durant la durée de vie du paquet.

« make install » peut rentrer en conflit avec d'autres paquets

Il est assez facile de compiler un logiciel depuis son code source téléchargé sur le site du logiciel, mais pas toujours aussi facile de le désinstaller plus tard. Souvent, les instructions fournies avec le code source comprennent des instructions pour utiliser des commandes comme ./configure && make && make install.

Lorsque vous installez le logiciel de cette façon, vous ne serez plus en mesure de l'enlever avec apt-get ou Synaptic. Le gestionnaire de paquets APT ne peut supprimer que les logiciels qui ont été installés par le gestionnaire de paquets APT. Pire encore, les logiciels installés de cette façon peuvent parfois entrer en conflit avec les logiciels empaquetés pour Debian.

Les logiciels installés de cette façon ne bénéficient pas des mises à jour de sécurité dont les paquets Debian ont besoin. Si vous voulez garder votre système à jour sans avoir à compiler et réinstaller pour chaque mise à jour manuellement, utilisez exclusivement les paquets fournis dans les dépôts Debian.

Le script make install pourrait invalider le principe selon lequel les fichiers exécutables compilés, ainsi que leurs fichiers associés, devraient se placer dans certains endroits spécifiques du système de fichiers et devraient être associés à un ensemble de droits / permissions contrôlant leur exécution. Les logiciels installés de cette manière pourraient également remplacer un logiciel important vital pour le système et la maintenance des paquets, rendant ainsi votre système difficile à réparer en utilisant les outils standards de Debian.

Ne pas suivre aveuglément de mauvais conseils

Malheureusement, il y a beaucoup de mauvais conseils sur Internet. Certains tutoriels trouvés sur les blogs, forums et autres sites comprennent des instructions qui peuvent endommager votre système sans que vous le sachiez. Ne suivez pas aveuglément le premier conseil que vous trouverez, ou le tutoriel qui semble le plus facile. Passez un peu de temps à lire la documentation et à comparer la différence entre les tutoriels .

Il est préférable de prendre le temps de comprendre la manière correcte de faire quelque chose plutôt que de passer encore plus de temps à réparer un système cassé par mauvaise manipulation. N'exécutez pas de commandes sans d'abord comprendre au préalable ce qu'elles font.

Les blogs et forums n'expirent jamais (info désuète), certaines instructions qui ont par le passé pu être faites sans risque pourraient être considérées comme dangereuse à suivre. En cas de doute faites davantage de recherches et lisez la documentation de la version de Debian que vous utilisez.

Lisez la documentation

Souvent, la lecture d'un tutoriel est suffisante pour avoir une idée générale de la façon d'installer ou d'utiliser une application. Presque tous les logiciels empaquetés pour Debian ont un minimum de documentation disponible. Quelques sites à consulter :

Ne pas supprimer aveuglément des logiciels

Parfois, lorsque vous supprimez un paquet, le gestionnaire de paquets doit supprimer d'autres paquets. Ceci est lié aux dépendances du paquet que vous voulez supprimer.

Si cela se produit, le gestionnaire de paquets va vous montrer une liste de tout ce qui sera enlevé et vous demandera une confirmation. Assurez-vous de lire attentivement cette liste ! Si vous ne savez pas quels paquets devraient être supprimés, lisez les descriptions de chacun. En cas de doute, faites plus de recherche. Certaines ressources peuvent vous aider à rechercher des paquets :

Lisez les descriptions des paquets avant de les installer

Il est recommandé de lire les descriptions des paquets avant de les installer. Certains logiciels auront différents paquets de disponibles dans les dépôts Debian, chacun avec une configuration différente. Lisez la description du paquet et recherchez des paquets similaires pour vous assurer d'avoir bien celui qui vous convient.

Ce point peut être particulièrement important pour les paquets qui installent des modules du noyau.

Prenez des notes

Il est facile d'oublier les étapes que vous avez suivies pour faire quelque chose sur votre ordinateur, en particulier plusieurs mois après, notamment quand vous essayez de faire une mise à jour. Parfois, quand vous avez essayé plusieurs façons de résoudre un problème, il est facile d'oublier la méthode qui était la bonne, le lendemain !

C'est une très bonne idée de prendre des notes sur le logiciel que vous avez installé et les changements de configuration que vous avez fait. Lors de l'édition des fichiers de configuration, c'est aussi une très bonne idée d'inclure des commentaires dans le fichier qui expliquent la raison pour laquelle les changements ont été effectués, et la date à laquelle ils ont été faits.

Quelques manières sûres d'installer des logiciels non disponibles dans Debian Stable

Il arrive parfois qu'il soit nécessaire d'installer un logiciel qui n'est pas empaqueté pour Debian, ou bien d'une version plus récente que celle empaqueté pour la version Stable. Voici quelques façons de réduire les risques décrits ci-dessus.

Paquets rétroportés

De nouvelles versions plus récentes de paquets sont souvent disponibles dans les archives de Debian Backports (rétroportages de Debian). Ces paquets ne sont pas testés aussi intensément que ceux de Debian Stable et doivent donc être installés avec modération.

Des utilisateurs plus expérimentés peuvent réaliser leurs propres rétroportages (backports) de la dernière version de logiciels Debian. L'auto-rétroportage est généralement plus sûr que d'autres approches. Lorsque l'auto-rétroportage échoue, il est probable que toute autre approche va briser votre système (avec make install ou un script d'installation, par exemple).

Compiler à partir du code source

Si vous construisez un logiciel à partir de sources obtenues autrement que par Debian, une bonne idée serait de le construire et de le lancer en tant qu'utilisateur normal à l'intérieur du répertoire home de cet utilisateur. Si, à l'intérieur de ce répertoire home, vous possédez des données sensibles, précieuses, ou irremplaçables, il pourrait être bon de créer un nouveau compte utilisateur pour cet usage.

automake et d'autres systèmes de compilation peuvent installer des logiciels personnellement compilés dans des emplacements non standards. C'est une mauvaise idée d'être superutilisateur (« root ») ou d'utiliser « sudo » pour installer des logiciels personnellement compilés dans /usr/bin ou d'autres emplacements où les paquets habituels placent leurs fichiers. Il est quasiment toujours possible d'installer à la place dans votre répertoire home (en utilisant ./configure --prefix=~/.local ou similaire). Si vous savez et comprenez comment éditer des fichiers makefile, vous pouvez alors modifier le makefile de telle façon qu'il rende make install utilisable pour votre système ou bien ajouter une option prefix=~/.local.

Si vous voulez faire en sorte que le logiciel soit disponible pour tous les utilisateurs, empêchez-le de s'installer de lui-même dans la hiérarchie de répertoire /usr, car seuls les paquetages Debian sont destinés à créer des fichiers là-bas. Installer le logiciel dans /usr/local le rendra disponible pour tous les utilisateurs, et n’interférera pas avec le gestionnaire de paquets. Le paquet stow peut être utile pour gérer les logiciels installés dans /usr/local.

Moyens moins sûrs pour installer des logiciels non disponibles dans Debian Stable

À noter : les paquets dans les versions officielles de Debian ont subi des tests approfondis, souvent pendant des mois, et seuls les paquets validés sont autorisés dans une version. D'un autre coté, les paquets issus de sources externes peuvent introduire des problèmes de sécurité, de fiabilité, juridiques. Debian n'encourage pas l'utilisation de logiciels à partir de sources externes.

Utiliser chroot, des conteneurs, et des machines virtuelles

Une autre stratégie pour utiliser un logiciel non disponible dans Debian Stable est d'exécuter ce logiciel dans un système Debian virtuel contenu dans son répertoire ou fichier image. Cela permet au logiciel d'être installé dans le système Debian virtuel sans avoir d'effets sur le système Debian primaire ou hôte tournant sur votre ordinateur.

Debian fournit plusieurs outils fournissant différents degrés d'isolation du système d'exploitation hôte. Parmi ceux-ci :

Flatpak

Certaines applications et jeux sont également disponibles dans le nouveau format de paquet Flatpak. Les Flatpaks peuvent être installés localement par les utilisateurs non superutilisateurs et n'interfèrent pas avec le système de paquets de Debian. Les applications Flatpak peuvent également être exécutées dans un bac à sable. Un paquet flatpak est disponible depuis Debian Stretch. gnome-software peut mettre à jour et installer des applications Flatpak avec gnome-software-plugin-flatpak installé. Pour plus d'information, consultez la page du wiki FlatpakHowto (en anglais).

Snap

Une autre alternative est le système Snappy développé par Canonical, la société fournissant la prise en charge d'Ubuntu. Les Snaps sont fondamentalement semblables aux Flatpaks mais à ce jour (26-10-2018) le dépôt central snapcraft dispose de plus d'applications empaquetées que Flathub.

Note importante : De nombreux utilisateurs se méfient des Snaps. Utilisez-les avec sagesse. Ils se mettent à jour selon leur propre calendrier et installent les fichiers dans des emplacements non standard. Il n'est peut-être pas judicieux d'utiliser un Snap sans d'abord comprendre la réputation / les limites de Snap.

Profitez au maximum des ressources d'aides

Lorsque vous cherchez de l'aide, il est important de se rappeler que Debian est un projet bénévole et que les gens seront plus enclins à vous aider si vous êtes poli et prêt à faire un effort. Voici quelques informations générales qui vous aideront à obtenir de l'aide :

Voir aussi


CategoryPackageManagement CategorySystemAdministration