Outils pour utilisateurs

Outils du site


tutoriel:openbsd-update-upgrade

OpenBSD : mettre à jour + mettre à niveau

Description

Tout d’abord, un petit rappel !

OpenBSD est fournit en 3 “saveurs” (flavour, en anglais) :

  • release : il s’agit de la version publiée et que vous avez sans doute téléchargée pour installer OpenBSD.
  • stable : c’est la version release avec plusieurs correctifs de sécurité. C’est celle-ci que nous souhaiterons suivre.
  • current : c’est la prochaine mouture en préparation d’OpenBSD, dans le dépôt CVS (qui sert au développement du code source).

Cependant, il peut arriver que des bugs soient découverts. Il est donc recommandé d’appliquer les correctifs de sécurité. Vous pouvez suivre les indications de la page errata pour cela.

Appliquer les correctifs n’est pas forcément facile, il est possible de suivre ces indications pour passer en stable, puis celles-ci, qui vont nous permettre de les appliquer simplement.

Mettre à jour les paquets

Depuis l'été 2019, pour OpenBSD 6.5, et pour les architectures amd64, i386 - et prochainement, pour Sparc64 - , il suffit d'appeler la commande de mise à jour de paquets ci-dessous, car officiellement, ils sont fournis par l'équipe d'OpenBSD, grâce au travail fourni par solene@ !

C’est l’histoire d’une seule commande :

# pkg_add -u 

Pensez à redémarrer le(s) logiciel(s) mis à jour.

Si vous suivez -current, il convient de rajouter cette série d'options :

# pkg_add -Dsnap -u 

Cela permet de passer la vérification des versions, chose indispensable à deux moments de l'année lorsque -current devient la prochaine -release.

Installer le paquet checkrestart qui affichera l'identifiant de processus et le nom du ou des logiciels à redémarrer !

Mettre le système à jour

Correctifs du système de base

Depuis la version 6.1 d'OpenBSD, les architectures amd64, arm64 et i386 peuvent installer les correctifs du système de base, en lançant simplement la commande syspatch(8) !

# syspatch 

Certains correctifs nécessitent soit le redémarrage du noyau, soit celui du service qu'il corrige. Il serait bon de s'inscrire à la liste announce@ pour obtenir les différents avis.

Mise à jour par compilation

Il est possible de mettre à jour le système de base d'OpenBSD par compilation des sources. Néanmoins, préférez l'usage de l'outil syspatch(8) si votre architecture est supportée par cet outil.

Pour commencer, on récupère les sources “patchées” et corrigées :

# cd /usr
# cvs -qd anoncvs@anoncvs.fr.openbsd.org:/cvs get -rOPENBSD_6_7 -P src
# cvs -qd anoncvs@anoncvs.fr.openbsd.org:/cvs get -rOPENBSD_6_7 -P ports

Si vous aviez déjà les sources, il suffit alors de lancer :

# cd /usr/ports (idem pour : /usr/src)
# cvs -q up -Pd -rOPENBSD_6_7

La première fois, c’est long, pas d’inquiétudes.

Ensuite, on passe les commandes suivantes pour compiler le noyau :

# cd /sys/arch/$(machine)/conf
# config GENERIC
# cd /sys/arch/$(machine)/compile/GENERIC
# make clean 
# make obj 
# make
# make install

Il faut maintenant redémarrer (cf : la commande reboot(8)) :

# reboot 

avant de passer à la suite, où l’on met à jour les fichiers du système après un petit nettoyage :

# rm -rf /usr/obj/*
# cd /usr/src
# make obj && make build

Voilà.

outil openup

Historiquement, il existait le service openup de M:Tier - outil non officiel d'une entreprise tierce

Préférez mettre à jour avec les outils officiels !

Passer à une version supérieure

Si on suit la branche stable, on peut mettre OpenBSD à jour seulement lorsqu’une nouvelle version est publiée. Il suffit alors de suivre les indications de notes de version. C’est toujours bien expliqué, et vraiment, tout bête.

ATTENTION : Il n'est pas recommandé de passer d'une version n-2 à n… préférez la réinstallation système. N'utilisez ce processus de mise-à-jour, que pour n-1 à n ! Tenez en compte absolument…

sysupgrade

Depuis OpenBSD 6.6, l'équipe OpenBSD a écrit l'outil sysupgrade(8) afin de faciliter le processus de mise à niveau vers la nouvelle version. Ainsi, cet outil s'occupe de télécharger tous les fichiers nécessaires, dont le noyau bsd.rd, de les vérifier avec l'outil signify(8) et de faire la mise à niveau du système d'exploitation.

Néanmoins, avant toute mise à niveau, il est important de faire les vérifications du guide de migration vers la version désirée.

Vérifiez toujours le guide de mise-à-jour fourni par OpenBSD - pour les versions maintenues :

méthode de base

Une manière est de télécharger le fichier bsd.rd, tel que :

$ cd /
# ftp -n -m -C "https://ftp.fr.openbsd.org/pub/OpenBSD/6.7/$(machine)/bsd.rd"

Vérification

On télécharge aussi les fichiers de condensat sh256 et de signature pour tester le noyau bsd.rd. Cela permet de vérifier qu'il n'y a pas eu de corruptions de données lors du téléchargement.

Pour vérifier de manière cryptographique que votre binaire est conforme à l'original, il faut utiliser l'utilitaire signify(1) :

$ ftp -n -m -C "https://ftp.fr.openbsd.org/pub/OpenBSD/6.7/$(machine)/SHA256{,.sig}"
$ signify -Cp /etc/signify/openbsd-67-base.pub -x SHA256.sig bsd.rd 
Signature Verified
bsd.rd: OK

Ensuite passez à la phase des installations des mises-à-jour du système puis des paquets expliquées ci-dessous ;-)

Après téléchargement

Une autre manière de mettre à jour le système est de télécharger la nouvelle “image”, à partir d'un des dépôts, de la graver, de démarrer sur le CD ou sur clé USB…

  • Le fichier install*.iso est l'image iso à graver sur CD.
  • Le fichier install*.fs est l'image à écrire sur une clé USB. La version suivant OpenBSD 6.7 aura l'extension .fs renommée en .img : le but étant de permettre que les BIOS UEFI qui sont capables de requérir une image d'installation à distance, par Internet, puissent la faire.

Vérification

Pour vérifier qu'il n'y a pas eu de corruptions de données lors du téléchargement, il est nécessaire de télécharger aussi les fichiers de condensat sh256 et de signature pour tester la nouvelle image.

Pour vérifier de manière cryptographique que votre image téléchargée est conforme à l'original, il faut utiliser l'utilitaire signify(1), tel que :

$ ftp -n -m -C "https://ftp.fr.openbsd.org/pub/OpenBSD/6.7/$(machine)/SHA256{,.sig}"
$ signify -Cp /etc/signify/openbsd-67-base.pub -x SHA256.sig install67.iso 
Signature Verified
install67.iso: OK

Gravure image

Pour écrire l'image sur clé USB :

# dd if=install67.fs of=/dev/rsdc1 bs=1M && sync 

Pour graver l'image sur CDRom :

# cdio tao cd*.iso 

Ensuite passez à la phase des installations des mises-à-jour du système puis des paquets expliquées ci-dessous.

Installation

(Re)Démarrer votre système, et lors de l'invite 'boot>', écrivez : boot bsd.rd

Laissez faire, jusqu'à ce que le processus vous demande le choix d'(I)nstaller, d'(U)pgrader, etc … choisissez : U

Puis, tapez http si vous voulez la faire en étant connecté à Internet, ou si vous avez le CD, tapez cd !

Ensuite, répondez aux questions, tout comme lors de votre prime installation … pour finir par redémarrer, si tout s'est bien passé :

# reboot 

Il est très probable que vous ayez à fusionner certains fichiers, c'est la commande sysmerge(8) qui s'en occupe :

# sysmerge 

Soit vous choisissez d'installer les nouveaux fichiers, soit vous les “mergez” (fusionnez, en français)
dans ce cas-là, l'écran est séparé en deux parties, une gauche, une droite…
utilisez les touches l ('left') ou r (pour 'right'), si vous voulez garder vos modifications (présentées à gauche) ou acceptez les leurs (celles présentées à droite) - elles seront demandées au cas par cas, et non pour l'ensemble d'un fichier donné…
ensuite, installez le nouveau fichier fusionné !


Une fois terminée, pensez à mettre à jour les paquets.

Ceci étant fait, on va vérifier qu'il n'y ait aucun souci avec les paquets installés :

# pkg_check 

Puis, on redémarre la station ! ;)

Suivre current

Tout d'abord, vérifiez Suivre -current et utiliser les snapshots !

Jetez également un œil sur votre miroir : le fichier 'bsd.rd' et les packages doivent avoir la même date de mise à jour afin d'être sûr que ces packages ont été compilés sur la bonne base :

Depuis OpenBSD 6.6, l'outil sysugrade(8) fournit l'option -s pour basculer de stable vers -current. Une fois sur current, il n'y a plus besoin de spécifier d'option, cette option -s reste activée automatiquement.

Snaps : outil de gestion current

Snaps est un script shell, créé par Fred Galusik, pour nous permettre de suivre current !

Cet outil très pratique n'est pas fourni par l'équipe d'OpenBSD.

Être averti des mises à jour officielles

Officiellement, il faut envoyer un mail à majordomo@OpenBSD.org avec à l’intérieur :

subscribe announce

Néanmoins, le plus simple est d'aller sur la page web de Majordomo, de vous inscrire et ensuite de demander l'accès à la liste announce@.


Contribut(rice|eur)s :

jibe pengouinpdt vinishor
tutoriel/openbsd-update-upgrade.txt · Dernière modification: 2021/04/13 20:26 de pengouinpdt