Forums


  • Comme vous le savez j'utilise sur ma machine personelle Debian Testing. Comme son nom le suggère, c'est une version de "test", ce qui veux dire que c'est plus stable que "unstable" et que les versions des logiciels sont plus récentes que celle de "stable" mais parfois cela plante !! doh Logiquement quand vous installez une Testing, vous savez ce que vous faites (en théorie) et vous êtes près à assumer les conséquences de votre choix ... Ceci dit, il y a malgré tout un moment ou les plantages répétés et les crashs suite à des mises à jours hasardeuses, finissent par avoir raison de ma patience et tolérance blush2 Ne pouvant me passer de ma précieuse Debian, j'ai décidé de changer de politique quand aux mise à jour. Tout d'abord, exit "update-manager" de Gnome ! Ou au minimum, le régler pour qu'il ne cherche les mise à jour qu'une fois par semaine et pas tout les jours comme par défaut. L’intérêt est de me rappeler de faire la mise à jour manuelle au cas ou j'oublierai. Cela à aussi l'avantage de montrer TOUT les upgrades disponible car ma technique ne met pas toujours tout à jour. Deuxièmement, fini "apt-get" ! et bonjour "aptitude" ... Comme tout ancien utilisateur de Debian, pour mettre à jour manuellement mon système, j'utilisais : apt-get update && apt-get dist-upgrade "aptitude" est le remplaçant officiel de apt-get depuis déjà pas mal d'années et possède au moins un grand avantage que j'expliquerais plus tard. Ensuite, on installe apt-listbugs : apt-get install apt-listbugs doh zut encore apt-get ... les vielles habitudes ont la vie dure wink apt-listbug est un "plugin" pour apt-get et aptitude qui prend la liste des packages qui vont être mis à jour et la compare avec la liste des bugs connu. Ensuite, il affiche la liste des bugs (s'il y en a) et vous demande si vous souhaitez continuer Vous pouvez aussi installer "reportbug" pour pouvoir visualiser le rapport de bug complet signalé par apt-listbug ... Exemple de mise à jour (vous devez être 'root'): root@predator:~# aptitude update .... snip .... Fetched 433 kB in 10s (39.8 kB/s) Current status: 6106 new [+2]. root@predator:~# aptitude safe-upgrade Resolving dependencies... The following NEW packages will be installed: gnome-themes-standard{a} libgtk-3-0{a} libgtk-3-bin{a} libgtk-3-common{a} The following packages will be upgraded: cpp-4.5 exim4 exim4-base exim4-config exim4-daemon-light fontconfig fontconfig-config g++-4.5 gcc-4.5 gcc-4.5-base geoip-database gnome-accessibility gnome-core gnome-desktop-environment grub-common grub-pc hpijs libalut0 libfontconfig1 libglibmm-2.4-1c2a libhpmud0 libpangomm-1.4-1 libpcsclite1 libportaudio2 libstdc++6-4.5-dev libtdb1 libtiff4 python python-beautifulsoup python-configobj python-httplib2 python-markupsafe python-minimal rsync 34 packages upgraded, 4 newly installed, 0 to remove and 4 not upgraded. Need to get 0 B/44.8 MB of archives. After unpacking 37.7 MB will be used. Do you want to continue? [Y/n/?] L'important ici, est l'utilisation de "safe-upgrade" au lieu de "dist-upgrade", qui est une approche plus conservative de la mise à jour ... Le soucis avec cette approche c'est que certains packages ne seront pas mis à jour alors qu'il n'y a pas de raison valable (apparemment) C'est aussi pour cette raison que je conserve partiellement "update-manager" pour voir la liste de ces packages qui ont été laissé de coté. Bien sur on répond "Y" ... Reading package fields... Done Reading package status... Done Retrieving bug reports... Done Parsing Found/Fixed information... Done serious bugs of grub-pc (1.98+20100804-14 -> 1.99~rc1-13) #624263 - grub-pc: stuck in grub-mkdevicemap at configure time Summary: grub-pc(1 bug) Are you sure you want to install/upgrade the above packages? [Y/n/?/...] Les nouvelles versions sont downloadés et ensuite apt-listbug va vers bugtracker de Debian pour récupérer la liste des bugs connus pour les packages qui vont être mis à jour. Je trouve dommage que cela soit fait APRÈS avoir downloader les packages. En effet, si vous êtes sur une connexion lente (modem ou ADSL light) c'est dommage de perdre du temps et de la bande passante pour récupéré un package que vous n'installerez peut être pas au final ... rolleyes Vous voyez que un bug "sérieux" à été trouvé pour grub-pc. Maintenant on a plusieurs choix: - Soit on appuis sur "Y", pour ignorer le bug et installer tout les packages. Il peux arrivé que le bug ne soit que pour une architecture donné (PowerPC par exemple) et que cela n'affecte pas votre configuration - Soit on appuis sur "n" et on quitte l'installation - Soit, si on a installer "reportbug", on tape le n° du bug pour lequel on souhaite avoir plus d'information Original report - #624263: grub-pc: stuck in grub-mkdevicemap at configure time From: Yann Dirson <-email-> Date: Wed, 27 Apr 2011 00:52:44 +0200 Package: grub-pc Version: 1.99~rc1-13 Severity: serious [UPGRADE] grub-pc 1.98+20100804-14 -> 1.99~rc1-13 When upgrading, aptitude gets stuck with: Setting up grub-pc (1.99~rc1-13) ... Installing new version of config file /etc/grub.d/05_debian_theme ... Replacing config file /etc/default/grub with new version .... snip .... Si "reportbug" n'est pas installé, on peux aussi aller directement sur le serveur de bugtracking et taper le n° dans la case de recherche Dans le cas présent, grub-pc étant un logiciel "critique" de ma machine, et la version actuelle fonctionnant sans soucis, je vais jouer la carte de la prudence et ignorer cette version. Voici la raison principale pour laquelle je suis passer à aptitude: celui-ci permet tout simplement d'ignoré une version spécifique d'un logiciel mais la version suivante sera installé normalement et automatiquement . Avec apt-get, il faut mettre le package "on hold" (en attente) signifiant à apt que vous souhaitez conservé la version actuelle (ce qui n'est pas facile à faire) puis manuellement allé vérifié quotidiennement si une nouvelle version existe; Quand c'est le cas, il faut alors retirer, toujours manuellement, le "on-hold" pour pouvoir faire la mise à jour .... tout sauf pratique confused je sort de la mise à jour en cours Retrieving report #624263 from Debian bug tracking system... What do you want to do now? [N|x|o|r|b|e|q|?]? ? N - (default) Show next message (followup). x - Provide extra information. o - Show other bug reports (return to bug listing). r - Redisplay this message. b - Launch web browser to read full log. e - Launch e-mail client to read full log. q - I'm bored; quit please. ? - Display this help. What do you want to do now? [N|x|o|r|b|e|q|?]? q Exiting. Are you sure you want to install/upgrade the above packages? [Y/n/?/...] n **************************************************************************** ****** Exit with an error by force in order to stop the installation. ****** **************************************************************************** E: Sub-process /usr/sbin/apt-listbugs apt || exit 10 returned an error code (10) E: Failure running script /usr/sbin/apt-listbugs apt || exit 10 A package failed to install. Trying to recover: Maintenant je demande à aptitude d'ignorer la version de grub-pc qui semble avoir un bug : root@predator:~# aptitude forbid-version grub-pc=1.99~rc1-13 No packages will be installed, upgraded, or removed. 0 packages upgraded, 0 newly installed, 0 to remove and 38 not upgraded. Need to get 0 B of archives. After unpacking 0 B will be used. voila à partir de maintenant la version de grub-pc qui présente un bug, sera ignoré des prochaines mise à jour. Je peux donc relancer la mise à jour, l'esprit tranquille : root@predator:~# aptitude safe-upgrade Resolving dependencies... The following NEW packages will be installed: gnome-themes-standard{a} libgtk-3-0{a} libgtk-3-bin{a} libgtk-3-common{a} The following packages will be upgraded: cpp-4.5 exim4 exim4-base exim4-config exim4-daemon-light fontconfig fontconfig-config g++-4.5 gcc-4.5 gcc-4.5-base geoip-database gnome-accessibility gnome-core gnome-desktop-environment hpijs libalut0 libfontconfig1 libglibmm-2.4-1c2a libhpmud0 libpangomm-1.4-1 libpcsclite1 libportaudio2 libstdc++6-4.5-dev libtdb1 libtiff4 python python-beautifulsoup python-configobj python-httplib2 python-markupsafe python-minimal rsync 32 packages upgraded, 4 newly installed, 0 to remove and 6 not upgraded. Need to get 0 B/41.1 MB of archives. After unpacking 35.6 MB will be used. Do you want to continue? [Y/n/?] On voit que grub-pc n'est plus dans la liste des packages à mettre à jour cool pour le reste aptitude fonctionne comme apt-get : "aptitude clean" et "aptitude autoclean" pour vider le cache des packages downloadés qui peux prendre beaucoup de place. "aptitude install", "aptitude remove", "aptitude purge" pour installer et supprimer les packages sur votre machine Intéressant l'option "-s" qui permet de simuler une action : root@predator:~# aptitude install kde -s The following NEW packages will be installed: advancecomp{a} akonadi-server{a} ... snip ... 0 packages upgraded, 505 newly installed, 0 to remove and 6 not upgraded. Need to get 577 MB of archives. After unpacking 1,317 MB will be used. Do you want to continue? [Y/n/?] y Would download/install/remove packages. Ou l'action "why" et "why-not" qui explique pourquoi un package peux on ne peux pas être installer sur votre machine root@predator:~# aptitude why kde Unable to find a reason to install kde. moi non plus biggrin root@predator:~# aptitude why grub-pc i linux-image-2.6-amd64 Depends linux-image-2.6.38-2-amd64 i A linux-image-2.6.38-2-amd64 Suggests grub-pc | extlinux | lilo (>= 22.8-8.2~) utile pour comprendre pourquoi un package est installé automatiquement A noter, aptitude propose aussi une interface "graphique" en ncurse (dans la console) mais elle est vraiment moche ... voir même elle fait mal aux yeux mad je crois que cela je vais rester avec mon petit "dselect", un peu difficile au premier abord mais quand on a l'habitude cela fonctionne tout seul La doc de aptitude (ancienne version mais je n'ai rien trouvé de plus récent) ericc me
     

Modérateur(s): ericc, toxxic, mich_belge