Demande #6315
Mis à jour par Pierre-Louis Bonicoli il y a 4 mois
Debian Bookworm est sorti :
* https://www.debian.org/releases/bookworm/ (à lire avec attention)
* https://www.debian.org/releases/bookworm/amd64/release-notes/
Afin de préparer la migration, création de tickets.
Prérequis :
* apt.chapril.org
Postrequis :
* vérifier la fonction de sauvegarde ;
* vérifier la supervision.
Le bloc-notes du camp https://pad.april.org/p/chaprilupgradebookworm
Comment migrer :
* faire des annonces larges pour prévenir de la migration à venir (sur
www.chapril.org, sur www.april.org, sur les listes d'informations
(type liste-infos@), sur les réseaux sociaux, sur les salons IRC, XMPP…
* prévenir les personnes utilisatrices des services
* faire un snapshot avec vmsnap
<pre>vmsnap create <domain> upgrade-bookworm</pre>
* se connecter en ssh et lancer un screen avec la commande "screen"
* sauvegarder la trace via commande script :
<pre>script -a ~/upgrade-bookworm.script</pre>
* faire un état des lieux des potentiels problèmes :
* <pre>aptitude search '?narrow(?installed, ?not(?origin(Debian)))'
dpkg --audit
aptitude ?not(?origin(Debian)))'</pre>
* <pre>dpkg --audit</pre>
* <pre>aptitude search "~ahold"
dpkg "~ahold"</pre>
* <pre>dpkg --get-selections | grep 'hold$'</pre>
* lister les fichiers de dépot dans @/etc/apt/sources.list@ et @/etc/apt/sources.list.d/@ et s'assurer qu'ils ont une version bookworm
* s'il y a des dépots secondaires hors debian (nodejs, etc), potentiellement les commenter le temps de la migration
* faire un dernier update/upgrade :
<pre>apt update && \&\& apt dist-upgrade -y</pre>
* pointer vers bookworm :
* <pre>sed -e 's/bullseye/bookworm/g' -i /etc/apt/sources.list
sed /etc/apt/sources.list</pre>
* <pre>sed -e 's/bullseye/bookworm/g' -i /etc/apt/sources.list.d/*</pre>
* @apt update@
**
* -> s'assurer qu'il n'y a pas d'erreur d'interrogation des dépôts
* Mettre à jour tout les paquets
**
* commencer par mettre à jour apt lui-même : @apt install apt@
** @DEBIAN\_FRONTEND=noninteractive
* <pre>DEBIAN\_FRONTEND=noninteractive apt -o DPKG::Options::="--force-confold" dist-upgrade -y@ -y</pre>
* S'assurer que tout les paquets sont bien installés à la fin (@dpkg -C@)
* décommenter les dépôts secondaires
* secondaires, @apt update && \&\& apt dist-upgrade -y@
* Regarder les fichiers de conf en conflits :
** @find
* <pre>find /etc -type f -name '*dist*'@
** '*dist*'</pre>
* adapter les confs entre les fichiers d'origine et les fichiers dist (fichier dist == nouvelle conf par défaut), @vim -d lefichier lefichier.dpkg-dist@ peut aider à comparer)
* @/etc/default/firehol START\_FIREHOL=YES@ <pre>/etc/default/firehol START\_FIREHOL=YES</pre>
* rebooter la vm
* s'assurer que tout les démons tournent correctement après reboot (@systemctl status@ doit être à @running@)
** running)
* lancer @systemctl --failed@ pour lister tous les services en échec
* @apt autoremove@ <pre>apt autoremove</pre>
* @apt clean@ apt clean
* recherche de tous les paquets qui ne sont pas deb12 avec :
** @dpkg
> * dpkg -l | grep 'deb\(10\|11\)'@ 'deb\(10\|11\)'
> * Si on est sûr :
** @apt > * apt purge $(dpkg -l | grep 'deb\(10\|11\)' | awk '{print $2}')@ $2}')
* reboot la vm
* tester le service, tester le monitoring
* si tout est ok prévenir les personnes utilisatrices (mais coupures possibles encore lors de maj des hosts)
* https://www.debian.org/releases/bookworm/ (à lire avec attention)
* https://www.debian.org/releases/bookworm/amd64/release-notes/
Afin de préparer la migration, création de tickets.
Prérequis :
* apt.chapril.org
Postrequis :
* vérifier la fonction de sauvegarde ;
* vérifier la supervision.
Le bloc-notes du camp https://pad.april.org/p/chaprilupgradebookworm
Comment migrer :
* faire des annonces larges pour prévenir de la migration à venir (sur
www.chapril.org, sur www.april.org, sur les listes d'informations
(type liste-infos@), sur les réseaux sociaux, sur les salons IRC, XMPP…
* prévenir les personnes utilisatrices des services
* faire un snapshot avec vmsnap
<pre>vmsnap create <domain> upgrade-bookworm</pre>
* se connecter en ssh et lancer un screen avec la commande "screen"
* sauvegarder la trace via commande script :
<pre>script -a ~/upgrade-bookworm.script</pre>
* faire un état des lieux des potentiels problèmes :
* <pre>aptitude search '?narrow(?installed, ?not(?origin(Debian)))'
dpkg --audit
aptitude ?not(?origin(Debian)))'</pre>
* <pre>dpkg --audit</pre>
* <pre>aptitude search "~ahold"
dpkg "~ahold"</pre>
* <pre>dpkg --get-selections | grep 'hold$'</pre>
* lister les fichiers de dépot dans @/etc/apt/sources.list@ et @/etc/apt/sources.list.d/@ et s'assurer qu'ils ont une version bookworm
* s'il y a des dépots secondaires hors debian (nodejs, etc), potentiellement les commenter le temps de la migration
* faire un dernier update/upgrade :
<pre>apt update && \&\& apt dist-upgrade -y</pre>
* pointer vers bookworm :
* <pre>sed -e 's/bullseye/bookworm/g' -i /etc/apt/sources.list
sed /etc/apt/sources.list</pre>
* <pre>sed -e 's/bullseye/bookworm/g' -i /etc/apt/sources.list.d/*</pre>
* @apt update@
**
* -> s'assurer qu'il n'y a pas d'erreur d'interrogation des dépôts
* Mettre à jour tout les paquets
**
* commencer par mettre à jour apt lui-même : @apt install apt@
** @DEBIAN\_FRONTEND=noninteractive
* <pre>DEBIAN\_FRONTEND=noninteractive apt -o DPKG::Options::="--force-confold" dist-upgrade -y@ -y</pre>
* S'assurer que tout les paquets sont bien installés à la fin (@dpkg -C@)
* décommenter les dépôts secondaires
* secondaires, @apt update && \&\& apt dist-upgrade -y@
* Regarder les fichiers de conf en conflits :
** @find
* <pre>find /etc -type f -name '*dist*'@
** '*dist*'</pre>
* adapter les confs entre les fichiers d'origine et les fichiers dist (fichier dist == nouvelle conf par défaut), @vim -d lefichier lefichier.dpkg-dist@ peut aider à comparer)
* @/etc/default/firehol START\_FIREHOL=YES@ <pre>/etc/default/firehol START\_FIREHOL=YES</pre>
* rebooter la vm
* s'assurer que tout les démons tournent correctement après reboot (@systemctl status@ doit être à @running@)
** running)
* lancer @systemctl --failed@ pour lister tous les services en échec
* @apt autoremove@ <pre>apt autoremove</pre>
* @apt clean@ apt clean
* recherche de tous les paquets qui ne sont pas deb12 avec :
** @dpkg
> * dpkg -l | grep 'deb\(10\|11\)'@ 'deb\(10\|11\)'
> * Si on est sûr :
** @apt > * apt purge $(dpkg -l | grep 'deb\(10\|11\)' | awk '{print $2}')@ $2}')
* reboot la vm
* tester le service, tester le monitoring
* si tout est ok prévenir les personnes utilisatrices (mais coupures possibles encore lors de maj des hosts)