AngristanLe blog tech d'Angristan

Mettre à jour Debian 8 Jessie vers Debian 9 Stretch

C'est le jour J, Debian 9 Stretch est prête et passe dans le canal stable ! Cela signifie que Debian 8 Jessie passe en oldstable et 7 Wheezy en oldoldstable (il serait peut-être temps de mettre à jour si vous y êtes toujours !)

Hormis le nouveau fond d'écran et le nouveau nom, qu'est-ce qui change ? Ben les paquets pardi ! Les paquets de Jessie commencent à vieillir, tandis que Stretch en apporte de bien plus frais, la période de gel ayant débuté il y a 6 mois.

Mettre à jour Debian 8 Jessie vers Debian 9 Stretch

Quoi de neuf ?

Après 26 mois de développement, le projet Debian est fier d'annoncer sa nouvelle version stable n° 9 (nom de code Stretch), qui sera gérée pendant les cinq prochaines années grâce à l'effort combiné de l'équipe de sécurité de Debian ainsi qu'à celui de l'équipe de gestion à long terme de Debian.

Debian 9 est dédiée à Ian Murdock fondateur du projet, disparu le 28 décembre 2015.

Dans Stretch, la variante par défaut de MySQL est maintenant MariaDB. Le remplacement des paquets de MySQL 5.5 ou 5.6 par la variante MariaDB 10.1 se produira automatiquement lors de la mise à niveau.

Firefox et Thunderbird sont de retour dans Debian avec la publication de Stretch, et remplacent leurs versions sans marque Iceweasel et Icedove présentes dans l'archive pendant plus de 10 ans.

Grâce au projet des Constructions reproductibles, plus de 90 % des paquets source fournis dans Debian 9 construiront des paquets binaires identiques au bit près. Cette propriété de vérificabilité protège les utilisateurs des tentatives malveillantes pour altérer les compilateurs et les réseaux de construction. Les versions futures de Debian incluront des outils et des métadonnées de manière à ce que les utilisateurs finaux puissent valider la provenance des paquets dans l'archive.

Les administrateurs et ceux qui sont dans des environnements sensibles au niveau de la sécurité seront soulagés d'apprendre que le système d'affichage X ne réclame plus les droits du superutilisateur pour son exécution.

La publication de Stretch est la première version de Debian à fournir la branche moderne de GnuPG dans le paquet gnupg. Celle-ci apporte la cryptographie par courbe elliptique, de meilleurs paramétrages par défaut, une architecture plus modulaire et une amélioration de la prise en charge des cartes à puce (« smartcard »). Nous continuerons à fournir la branche classique de GnuPG dans le paquet gnupg1 pour ceux qui en auraient besoin, mais elle est désormais obsolète.

Les paquets de débogage sont plus faciles à obtenir et utiliser dans Debian 9 Stretch. Un nouveau dépôt dbg-sym peut être ajouté à la liste de sources d'APT pour obtenir automatiquement les symboles de débogage pour de nombreux paquets.

La gestion de l'UEFI (Unified Extensible Firmware Interface), introduite dans Wheezy continue à être grandement améliorée dans Stretch, et permet aussi l'installation en présence de micrologiciel UEFI 32 bits avec un noyau 64 bits. Comme nouvelle fonctionnalité, les images autonomes « live » de Debian incluent maintenant aussi la gestion de l'amorçage UEFI.

Voici quelques mises à jour notables, avec entre parenthèses la version disponible sous Jessie.

Côté web :

  • PHP 7.0 (5.6) (YES !!)
  • Nginx 1.10 (1.6) (YES !!)
  • Apache 2.4.25 (2.4.10)
  • MariaDB 10.1 (MySQL 5.5)
  • PostgreSQL 9.6 (9.4)
  • Redis 3.2 (2.8)

Du côté desktop :

  • GNOME 3.22 (3.14)
  • KDE/Plasma 5.8 (4.11)
  • XFCE 4.12 (4.10)
  • Mate 1.16 (1.8)
  • Cinnamon 3.2.7 (2.2.16)
  • GTK+ 3.22 (3.14)
  • QT 5.7 (5.3)

Plein de nouveautés donc ! L'arrivée de PHP 7 dans les dépôts est vraiment appréciable, et celle de OpenSSL 1.1.0, apportant CHACHA20 et de nouvelles curves mérite une mise à jour de mon article sur HTTPS et Nginx. :)

Mettre à jour Debian

Je vous conseille de jeter un œil aux notes de publication, ça peut vous intéresser et vous aider.

Bon, première règle : on backup tout ! Allez hop hop on ne plaisante pas avec ça.

Je vous conseille de tester d'abord la mise à niveau vers Debian 9 Stretch sur une machine peu critique, comme un PC de secours ou un serveur qui sert pas à grand chose. Normalement, tout devrait bien se passer, le plus gros risque c'est qu'une mise à niveau d'un paquet casse la conf et l'empêche de fonctionner après la mise à jour, mais normalement vous êtes alertés durant la mise à jour.

Bien sûr, le plus propre reste de faire une fresh install. C'est ce que je compte faire sur une bonne partie de mes serveurs, mais bon là j'ai le bac cette semaine donc on va éviter. Et oui je fais cet article pendant le bac, mais bon ils sont relous chez Debian à sortir ça maintenant aussi :D .

Première chose à faire : s'assurer qu'on est bien à jour sur Jessie :

apt update
apt full-upgrade

Ensuite, on met à jour le fichier /etc/apt/sources.list en remplaçant jessie par stretch. Si vous avez stable dans votre fichier, alors vous êtes déjà sûrement sous Stretch !

Pour les feignants :

sed -i 's|jessie|stretch|' /etc/apt/sources.list

Vérifiez aussi les dépôts dans /etc/apt/sources.list.d/ ! Il n'y en a qui ne sont peut-être pas disponibles sous Stretch ou qui sont devenus inutiles.

Votre fichier sources.list doit donc ressembler à ceci, par exemple :

deb http://deb.debian.org/debian stretch main
deb http://deb.debian.org/debian stretch-updates main
deb http://security.debian.org/ stretch/updates main

Et ensuite, on est reparti pour un tour :

apt update
apt full-upgrade

Voilà ce que ça donne pour un serveur fraîchement installé sous Debian 8 :

Mettre à jour Debian 8 Jessie vers Debian 9 Stretch

Va falloir un peu de patience !

Après un petit reboot, on vérifie que tout est à jour :

Mettre à jour Debian 8 Jessie vers Debian 9 Stretch

Et voilà, maintenant profitez de vos paquets tous neufs ! :D

Ah et si vous voulez faire une installation propre, les images sont disponibles ici.


Fanart par Takaju ?

41 commentaires

  1. Florian
    Faut que je songe à passer toutes mes VMs sur Debian Stretch alors :)
    0
    1. Stanislas
      Bon courage ! En espérant que ça casse pas :P
      0
  2. Frederic Bezies
    Excellent article. Sinon, bon courage pour les épreuves avec la chaleur qu'il fait en ce moment. J'ai connu cela en... 1993 !
    0
    1. Stanislas
      Merci ! Arf, ça va pas être facile, je viens de dépasser à nouveau le cap des 30°C chez moi >-< Ah ben ça devait être autre chose à l'époque :D
      0
      1. claudelaurent06
        J'espère que ce bac a été obtenu! ;-)
        0
        1. Stanislas
          Oui, et avec mention assez-bien qui plus est :p
          0
  3. fightmaxime
    YEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH ! J'AVAIS TELLEMENT HÂTE !
    0
    1. Stanislas
      Pareil :D
      0
  4. AnCaRioN
    Un conseil; remplacer httpredir.debian.org par deb.debian.org dans les fichiers sources apt, c'est la nouvelle voie standard :)
    0
    1. Stanislas
      Salut, en effet ça semble rediriger là-dessus, mais c'est quoi la différence ? Edit : Bon j'ai ai parlé avec @Sp3r4z sur Mastodon, je crois avoir compris. J'ai modifié l'article du coup :)
      0
    1. Stanislas
      Merci :)
      0
  5. citizenz7
    Test sous Virtualbox : ça ne passe pas avec le petit CD netinstall. Erreur en cours d'install : ne trouve pas le CD... Je crois que je vais attendre un peu avant de faire mes updates.
    0
    1. Stanislas
      Ça n'a pas grand chose à voir ?
      0
        1. Stanislas
          Pour installation, oui, pour une upgrade ça change rien :) D'ailleurs les images d'install on été re-crées avec le fix
          0
  6. Michel
    Salut ! Sauf erreur je remplacerai sed -i 's|jessie|stretch|' /etc/apt/sources.list par sed -i 's|jessie|stretch|g' /etc/apt/sources.list voir même : sed -i.bak 's|jessie|stretch|g' /etc/apt/sources.list Bonne journée !
    0
  7. Nilav
    Juste pour confirmer, avec Debian 9 Stretch, on a donc désormais tout ce qu'il faut pour du HTTP2/ALPN ?
    0
    1. Stanislas
      Tout à fait :)
      0
      1. Nilav
        Excellente nouvelle, ça permet d'avoir un système bien stabilisé pour la prod. C'est cool.
        0
  8. Giampiero Russo
    Au secours, j'ai tout fait bien comme tu as dit et ma machine démarre bien...au début seulement. Parce que dès que j'ai mis mes identifiants, ou à la fin du redémarrage en mode recovery, Mon ordi fait un bip insupportable. Que faire ? Merci d'avance.
    0
  9. Host9x10
    Parfait ;-) J'adore quand un plan se déroule sans accroc ;-)
    0
  10. Olivier
    Mise à jour d'un serveur Debian 8 + ISPConfig ne fonctionne pas, je perds l'accès SSH à la fin de la migration. Certainement une réponse posée parmi les nombreuses lors de la réinstallation... Je vais plutôt passer par une fresh install je pense. Merci pour les billets d'une manière générale. Bon travail.
    0
  11. Tonio
    Salut ! Super tuto comme d'hab. Depuis la maj vers Debian 9, je trouve tout moins beau... Les polices, les fenêtres... Quelqu'un a déjà eu ce genre de soucis ?
    0
  12. Jonathan
    ça s'est bien passé de mon côté, en tout cas je n'ai rien vu de problématique pour le moment ;-) Merci d'avoir fait cet article, entre autre !
    0
    1. Stanislas
      Super :)
      0
  13. Olivier
    Bonjour, Je ne suis pas un expert Debian, mais il me semble plus prudent (surtout sur une machine distante avec des services de production installés de faire: apt update && apt upgrade apt dist-upgrade A l'issue de la mise à jour du sources.list. En effet et pour ma part, chaque fois que j'ai essayé un "dist-upgrade" directement après l'"update" suite à la mise à jour des sources, je n'ai pas pu récupéré d'accès ssh à la machine après la perte de connexion. Je pense en fait que la mise à jour du paquet ssh coupe la connexion à un moment donné... que le processus "dist-upgrade" continu peut-être sur la machine mais je ne suis jamais arrivé à me reconnecter à nouveau... Encore une fois, je ne suis pas un expert, mais en tout cas et pour ce qui est de ma petite expérience, j'ai toujours réussi en passant par l'étape supplémentaire du apt-get upgrade (sans que je sache vraiment pourquoi d'ailleurs - peut-être une réponse d'un crack Debian ici.. ;-)) Je viens donc de passer un serveur Jessie vers Stretch avec ISPConfig 3.1 installé + quelques sites en production et cela s'est bien passé après une restauration suite à l'échec du dist-upgrade direct et l'application de l'étape du "upgrade" d'abord... Cdlt.
    0
  14. syndrael
    Pour info suite au passage OpenSSH 7.4 j'ai dû rajouter un PubkeyAcceptedKeyTypes=+ssh-dss dans mon .ssh/config. Sinon une coquille dans l'article "Voilà ce que ça donne pour un serveur fraîchement installé sous Debian 9 :"
    0
    1. Stanislas
      Pourquoi tu actives les clés DSS ? Ah et sinon c'est pas une coquille, c'est bien un serveur sous Debian 8 ^^
      0
  15. claudelaurent06
    Bonjour. 1) Sur mon vieux PC serveur (qui ne boote pas en USB), j'ai eu une erreur lors de l"apt update" : (Veuillez utiliser apt-cdrom afin de faire reconnaître ce cédérom par votre APT). Le CDROM étant en permance dans le lecteur et comme indiqué pour résoudre le problème , j'ai fait un "apt-cdrom add" et la migration s'est bien passée. 2) Sur mon PC de bureau, même problème avec besoin d'accès au CDROM. Et pas de CDROM ici, puisque l'installation a été faite via une clé usb. Et là, je me perds dans les options de la commande "apt-cdrom", et en plus il y a aussi des erreurs pour joindre les fichiers. En voici quelques unes: Err http://security.debian.org strech/updates/main Sources 404 Not Found [IP : 212.211.132.250 80] Err http://security.debian.org strech/updates/contrib Sources 404 Not Found [IP : 212.211.132.250 80] Err http://security.debian.org strech/updates/non-free Sources 404 Not Found [IP : 212.211.132.250 80] Err http://security.debian.org strech/updates/main i386 Packages 404 Not Found [IP : 212.211.132.250 80] Err http://security.debian.org strech/updates/contrib i386 Packages 404 Not Found [IP : 212.211.132.250 80] Err http://security.debian.org strech/updates/non-free i386 Packages 404 Not Found [IP : 212.211.132.250 80] J'ai bien tenté de montrer ma clé usb /dev/sdc sur /media/cdrom masie nsuite je butte sur la commande "apt-cdrom add -d ...." Néanmoins, je suis subjugé de voir que Debian a besoin du CDROM d'installation pour faire des mises à jour ou un changement de version. J'en appelle donc à l'aide pour résoudre ce problème et apporter peut-être une solution à ceux qui butteraient de amnière identique. Cordialement.
    0
    1. Stanislas
      Je sais pas où tu as vu qu'il y avait besoin d'un CD... ^^
      0
      1. claudelaurent06
        C'est écrit : (Veuillez utiliser apt-cdrom afin de faire reconnaître ce cédérom par votre APT)
        0
        1. Stanislas
          Qu'as-tu dans /etc/apt/sources.list ?
          0
          1. claudelaurent06
            # deb cdrom:[Debian GNU/Linux 8 _Jessie_ - Official Snapshot i386 LIVE/INSTALL Binary 20170506-15:50]/ strech main #deb cdrom:[Debian GNU/Linux 8 _Jessie_ - Official Snapshot i386 LIVE/INSTALL Binary 20170506-15:50]/ strech main deb cdrom:[Debian GNU/Linux 8 _Jessie_ - Official Snapshot i386 LIVE/INSTALL Binary 20170506-15:50]/ strech main deb http://ftp.fr.debian.org/debian/ strech main non-free contrib deb-src http://ftp.fr.debian.org/debian/ strech main non-free contrib deb http://security.debian.org/ strech/updates main contrib non-free deb-src http://security.debian.org/ strech/updates main contrib non-free # strech-updates, previously known as 'volatile' deb http://ftp.fr.debian.org/debian/ strech-updates main contrib non-free deb-src http://ftp.fr.debian.org/debian/ strech-updates main contrib non-free ################################### PS: je viens de lire ici https://www.debian.org/releases/stretch/amd64/release-notes/ap-old-stuff.fr.html#old-upgrade qu'il ne fait pas changer la ligne "deb cdrom". Et en plus , je suis en 32 bits.
            0
            1. Stanislas
              En fait je vois pas l'intérêt d'ajouter aux sources un CD de Debian 8 si tu veux passer sous Stretch... Si tu enlèves la ligne, et que tu fais apt update et apt full-upgrade, ça fonctionne pas ? C'est comme ça que ça devrait se passer (malgré le fait que la doc préconise de ne pas modifier la ligne, mais si quelqu'un sait à quoi elle sert...)
              0
              1. claudelaurent06
                Yes! Il fallait SUPPRIMER la ligne où il y avait "cdrom", car même masquée par un "#", elle était prise en compte quand même... La mise à jour est en train de s'effectuer. 1103 mises à jour à faire. On va laisser tourner. Merci.
                0
                1. Stanislas
                  Ah ben voilà c'est plus logique :) En espérant que tout se passe bien haha
                  0
                2. Mirabellette
                  ! Il fallait SUPPRIMER la ligne où il y avait « cdrom », car même masquée par un « # », elle était prise en compte quand même… -> faux, cette ligne n'a pas de # deb cdrom:[Debian GNU/Linux 8 _Jessie_ – Official Snapshot i386 LIVE/INSTALL Binary 20170506-15:50]/ strech main Les lignes avec des # ne sont pas prises en compte dans sources.list
                  0
                  1. claudelaurent06
                    Objection votre honneur ! Si on marque d'un "#" la ligne "deb cdrom" dans sources.list , elle réappararait après le "sed -i" ; voir le fichier que j'ai joint le 28/8 à 15h25. On peut même constater sa triple présence, 2 avec #, 1 sans #. Si j'vais fait à la main au lieu du "sed -i", ça aurait roulé du 1er coup. Il est vrai que les lignes marquées # ne sont pas prises en compte ensuite, mais le mal est déjà fait puisqu'une ligne sans # est présente. Je confirme donc ma manip: 1) SUPPRESSION de la (ou des) ligne(s) deb cdrom 2) lancement du "sed -i" 3) etc, etc
                    0
  16. claudelaurent06
    Je donne ici une piste au sujet de la perte de connexion en SSH: se logguer en SSH c'est bien, mais en cas de perte de connexion, c'est donc la castastrophe. J'ai l'habitude avec la connexion en ssh, pour des commandes sensibles et donc surtout pour une migration, d'utiliser la commande "screen" pour palier aux déconnexions éventuelles. En effet, cela permet de retrouver la (et même les) fenêtre(s) que l'on avait lancée(s). La( ou les) fenêtres peu(ven)t avoir évolué, attendre une réponse à une commande., etc.. . (Pour rappel, on quitte un screen par "Ctrl+a d" et on le retrouve par un "screen -r".
    0

Laisser un commentaire