====== Debian Sid ====== * Objet : Installer et maintenir une Debian Sid * Niveau requis : {{tag>débutant avisé}} * Commentaires : Quelques règles à respecter pour maintenir sa debian Sid sans la casser. * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) * Suivi : {{tag>à-placer}} * Création par [[user>cyrille]] 09/01/2021 * Testé par [[user>sushy]] * Contributions: [[user>David5647]], [[user>vv222]], [[user>--gilles--]] * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=352031 | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) Voici simplement quelques règles de base afin de garder une Debian Sid (Debian **//unstable//**) à jour sans prendre [**//trop//**] de risques. ===== Installer Debian Sid ===== La documentation officielle recommande de partir soit d'une Debian **//stable//**, soit d'une Debian **//testing//** et de l'upgrader (la mettre à niveau) en Sid en modifiant le fichier de liste de sources de paquets. ==== Modification du sources.list ==== Une fois Debian (//stable// ou //testing//) installée, modifiez le fichier ''sources.list'' pour qu'il récupère les listes de paquets de Sid. Le fichier peut être édité via la commande : apt edit-sources Tout ira très bien si le fichier contient exactement et uniquement la ligne suivante : deb http://deb.debian.org/debian/ sid main non-free-firmware contrib non-free * Pour en savoir plus sur l'utilisation des sections //main//, //non-free-firmware//, //contrib// et //non-free//, consultez : [[doc:systeme:apt:sources.list:debian#sections-debian|sources.list pour Debian]] ; * Pour des informations plus détaillées sur les fichiers sources.list pour testing/sid : [[doc:systeme:apt:sources.list:debian:testing|sources.list pour Debian testing ou unstable]] ; * Les dépôts non officiels (comme //deb-multimedia.org//, par exemple) sont sources de problèmes et sont à éviter autant que possible (en particulier pendant le processus de mise à niveau). ==== Migration vers Sid ==== Exécutez les opérations de mise à niveau suivantes : apt update apt full-upgrade Après un redémarrage permettant d'utiliser le nouveau noyau, ce système sera en Sid. ===== Maintenir Debian Sid ===== Utiliser une distribution en développement permanent nécessite certaines précautions. Voici quelques outils permettant d'éviter certains écueils. ==== Mises à jour ==== S'il n'est pas nécessaire d'appliquer des mises à jour quotidiennes, il est quand même recommandé de le faire fréquemment. De cette manière, il sera plus simple de repérer la mise à jour qui a pu casser un de vos logiciels, et ça évitera que plusieurs logiciels cassent en même temps. Certains font les mises à jour tous les jours (c'est l'idéal), d'autres toutes les semaines, ça dépend du temps que vous pouvez y consacrer. La principale raison est la sécurité. Sous //stable// on peut scruter les dépôts //security// quotidiennement pour les mises à jour, mais sous Sid, il n y a pas de dépôt //security//, et les mises à jour de sécurité sont mêlées aux autres mises à jour de paquets. À noter également, chaque mise à jour peut rajouter ou enlever des bugs. Si vous espérez qu'un bug soit corrigé par une nouvelle version vous pouvez faire des mises à jour plus régulières, mais si tout fonctionne bien vous pouvez au contraire les espacer. À vous de trouver un équilibre. ==== Mise à jour complète et élagage mensuels ==== === full-upgrade === Une fois par mois environ, pensez à lancer un //full-upgrade// afin de vous assurer que tous les paquets sont bien mis à jour. Attention cependant, cette opération peut vous proposer de désinstaller des paquets qui vous sont vitaux. Restez prudents et lisez bien la liste des paquets désinstallés avant de confirmer. vv222 a dit : Quand un paquet ne se met pas à jour automatiquement avec `apt upgrade` parce qu'il requiert une suppression d'un autre paquet, je ne le mets pas à jour avec `apt full-upgrade` mais avec `apt install paquet`. apt full-upgrade Lecture des listes de paquets... Fait Construction de l'arbre des dépendances Lecture des informations d'état... Fait Calcul de la mise à jour... Fait Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires : coinor-libcbc3 coinor-libcgl1 coinor-libclp1 coinor-libcoinmp1v5 coinor-libcoinutils3v5 coinor-libosi1v5 colord-data cups-client cups-pk-helper dnsmasq-base espeak-ng-data exfalso exfat-fuse exfat-utils fonts-font-awesome gconf-defaults-service gconf-service gconf2 gconf2-common gdisk gir1.2-gtksource-3.0 gir1.2-javascriptcoregtk-4.0 gir1.2-notify-0.7 gir1.2-packagekitglib-1.0 gir1.2-polkit-1.0 gir1.2-secret-1 gir1.2-soup-2.4 gir1.2-webkit2-4.0 gnome-accessibility-themes gnome-keyring gnome-keyring-pkcs11 gnome-themes-extra gnome-themes-extra-data gparted-common gstreamer1.0-gtk3 gtk2-engines-pixbuf gvfs-common gvfs-libs hyphen-en-us libao-common libao4 libappstream4 libatasmart4 libatk-adaptor libayatana-appindicator3-1 libayatana-ido3-0.4-0 libayatana-indicator3-7 libblockdev-crypto2 libblockdev-fs2 libblockdev-loop2 libblockdev-part-err2 libblockdev-part2 libblockdev-swap2 libblockdev-utils2 libblockdev2 libbluetooth3 libbrlapi0.8 libcdr-0.1-1 libcolorhug2 libdotconf0 libept1.6.0 libespeak-ng1 libfreehand-0.1-1 libgconf-2-4 libgusb2 libjim0.79 libjs-sphinxdoc libjs-underscore liblightdm-gobject-1-0 liblouis-data liblouis20 libmbim-glib4 libmbim-proxy libmm-glib0 libmspub-0.1-1 libndp0 libnm0 libnma-common libnma0 libntfs-3g883 libpackagekit-glib2-18 libpagemaker-0.0-0 libpam-gnome-keyring libparted-fs-resize0 libpcaudio0 libplymouth5 libpolkit-agent-1-0 libqmi-glib5 libqmi-proxy libqxp-0.0-0 libreoffice-calc libreoffice-draw libreoffice-gtk3 libreoffice-help-en-us libreoffice-impress libsane libspeechd2 libstemmer0d libteamdctl0 libudisks2-0 libvisio-0.1-1 libvolume-key1 libzmf-0.0-0 lightdm-gtk-greeter lp-solve mobile-broadband-provider-info modemmanager mythes-en-us ntfs-3g orca p11-kit p11-kit-modules perl-tk python3-brlapi python3-cups python3-cupshelpers python3-feedparser python3-louis python3-musicbrainzngs python3-mutagen python3-pyatspi python3-pyinotify python3-smbc python3-speechd quodlibet sound-icons speech-dispatcher speech-dispatcher-audio-plugins speech-dispatcher-espeak-ng sphinx-rtd-theme-common system-config-printer system-config-printer-common system-config-printer-udev usb-modeswitch usb-modeswitch-data xbrlapi xkbset xsane xsane-common Veuillez utiliser « apt autoremove » pour les supprimer. Les paquets suivants seront ENLEVÉS : colord dbus-user-session gconf-editor gparted gvfs gvfs-daemons libnss-systemd libpam-systemd light-locker lightdm network-manager network-manager-gnome packagekit packagekit-tools plymouth plymouth-label policykit-1 policykit-1-gnome rtkit synaptic task-xfce-desktop udisks2 xiccd Les NOUVEAUX paquets suivants seront installés : initscripts insserv startpar sysv-rc Les paquets suivants ont été conservés : apt apt-utils cups-client exim4-daemon-light firefox-esr firefox-esr-l10n-fr libcups2 libcurl3-gnutls libgnutls-dane0 libgnutls30 libjs-jquery libnm0 libsmbclient libsystemd0 libwbclient0 ppp samba-libs systemd systemd-timesyncd wget 0 mis à jour, 4 nouvellement installés, 23 à enlever et 20 non mis à jour. Il est nécessaire de prendre 185 ko dans les archives. Après cette opération, 45,7 Mo d'espace disque seront libérés. Souhaitez-vous continuer ? [O/n] y === autoremove === apt autoremove Cette commande permet de supprimer les paquets recommandés qui ont été installés par le passé mais ne sont plus utilisés. À noter : la dernière version d'apt (2.1.16) intègre un //autoremove//. Elle permet de déterminer les noyaux auto-amovibles au moment de l'exécution. * Corrige le problème où apt pourrait envisager de supprimer un noyau en cours d'exécution amovible ; * Supprime automatiquement les noyaux inutilisés sur `apt {full,dist}-upgrade` ; * Cela permet de garantir que nous ne manquons pas d'espace /boot ; * Ne garde que 3 noyaux (et non 4). === Vider le cache d'apt === Comme les mises à jour sont fréquentes, pensez à vider régulièrement le cache d'apt. Ne videz pas trop vite le cache d'apt, car il se peut que vous soyez amené·e à réinstaller un paquet dans une version précédente sans connexion internet (cas rare mais possible). apt clean ==== Éviter les bugs graves avec apt-listbugs ==== C'est le paquet essentiel pour maintenir une Debian Sid à jour sans la casser. Une fois les paquets à mettre à jour téléchargés, **//apt-listbugs//** scrute les //changelogs// (journaux des modifications) à la recherche des bugs connus et non résolus. Si bug(s) il y a vous serez prévenu sur quel paquet et ce sera à vous de choisir entre deux options : installer, ou non, ledit paquet. À noter que plus un paquet est présent depuis longtemps dans Sid, plus il y a de chances que ses bugs graves aient été répertoriés. Aussi, si vous mettez à jour votre Sid toutes les heures, //apt-listbugs// ne sera pas en mesure de lister les bugs non encore détectés, alors que si vous ne la mettez à jour qu'une fois par semaine, il y a plus de chances que les bugs aient été signalés. Pour apprendre à utiliser efficacement et intelligemment cet outil, consultez le tutoriel [[:doc:systeme:apt:apt-listbugs]]. Vous pouvez également [[:doc:systeme:apt:apt-listbugs#consulter-la-liste-des-bugs|consulter la liste des bugs d'un paquet]]. ==== Suivre l'évolution des paquets avec apt-listchanges === Avec **//apt-listchanges//**, les changements importants apportés à un paquet seront affichés à l'écran, à l'issue de la mise à jour (appuyez sur q pour quitter l'affichage). **changelog** Si vous avez lu la description un peu rapidement et souhaitez la revisionner plus tard, utilisez la commande `changelog` d'**apt** ou d'**aptitude**. Exemple : apt changelog apt Affichera le //changelog// du paquet ''apt''. Appuyez sur q pour quitter. ==== Guetter les processus obsolètes avec needrestart ==== apt install needrestart Si la mise à jour a touché des programmes nécessitant le redémarrage de services, vous en serez notifié et il vous sera proposé de redémarrer ces services. ==== Sauvegarde du système ==== La documentation officielle préconise, outre la réalisation de sauvegardes régulières du système, la réalisation d'instantanés avant et après une mise à niveau avec un outil tel que **timeshift** afin de pouvoir restaurer le système dans un état antérieur. ===== La documentation officielle ===== * https://wiki.debian.org/fr/DebianUnstable