OpenBSD Upgrade Guide: 6.4 to 6.5 : (v1.14 : 17/10/2019)
[ FAQ Index ] | [ 6.3 -> 6.4 ] | [ 6.5 -> 6.6 ] ~ Traduction française du Guide de Migration OpenBSD : 6.4 vers 6.5
Les mises à jour ne sont seulement supportées que d'une version qui suit la précédente immédiatement. Veuillez lire et bien comprendre ce processus avant de l'essayer. Concernant les machines critiques ou physiquement distantes, testez-la à l'identique sur un système local d'abord.
Commencez par effectuer les étapes de préparation de la mise à jour. Ensuite, démarrez depuis le noyau d'installation 'bsd.rd' : utilisez un media d'installation de démarrage, ou placez la version 6.5 de bsd.rd
à la racine de votre système de fichiers et ordonnez au chargeur de démarrage de démarrer ce noyau. Une fois que le noyau est démarré, choisissez l'option (U)pgrade
et suivez les instructions. Appliquez les changements de configuration et finissez par la mise-à-jour des paquets : pkg_add -u
.
Alternativement, vous pouvez utiliser le processus manuel de mise à jour.
Vous pouvez vérifier la page d'errata ou mettre à jour la branche stable pour obtenir tous les correctifs post-installation.
Obtenez et vérifiez bsd.rd
. Téléchargez le noyau ramdisk et le fichier de sommes de contrôle signé cryptographiquement pour votre architecture.
Vérifiez les en utilisant signify(1) :
$ signify -C -p /etc/signify/openbsd-65-base.pub -x SHA256.sig bsd.rd Signature Verified bsd.rd: OK
Lire les changements de configuration et de syntaxe. Il y a de nombreux changements de configuration qui peuvent requérir une planification avant de démarrer la mise à jour.
announce
a été déprécié dans bgpd.conf(5). Il a maintenant été supprimé et doit être remplacé par export
. rdomain
dans bgpd.conf ont besoin d'être remplacées par les sections vpn “description” on mpeX
. Les deux descr
et depend on mpeX
doivent être supprimées de la configuration VPN. Une configuration possible est maintenant : vpn "description" on mpe1 { rd 65002:1 import-target rt 65002:42 export-target rt 65002:42 network 192.168.1/24 }
curve25519
dans iked.conf(5) (ce qui n'est pas par défaut), basculez vers un autre groupe avant la mise à jour. Configurez le répondeur pour permettre les deux, curve25519 et un autre groupe PFS, par exemple : ... ikesa enc aes-256 prf hmac-sha2-256 auth hmac-sha2-256 group curve25519 \ ikesa enc aes-256 prf hmac-sha2-256 auth hmac-sha2-256 group brainpool512 \ ...
Puis basculez les initiateurs vers l'autre groupe, ensuite mettez à jour et revenez en arrière comme voulu.
/etc/malloc.conf
. À la place, la nouvelle variable vm.malloc_conf
de sysctl(8) est utilisée. Ainsi les processus ne sont plus dépendents du système de fichiers pour les options malloc. Paramètrez la pour le démarrage en ajoutant une ligne, telle que : vm.malloc_conf=CF
à votre /etc/sysctl.conf
, ou en fonctionnement avec sysctl(8).
kern.witnesswatch
a été renommée en kern.witness.watch
.set-window-option -g window-status-fg color244 set-window-option -g window-status-bg color222 set-window-option -g window-status-attr bold
Le nouveau format utilise un nom de variable standard terminant par -style et comprenant une liste d'attributs et de valeurs. La version mise à niveau de l'exemple précédent ressemblerait à ceci :
set-window-option -g window-status-style "fg=color244 bg=color222 bold"
link0
par txprio
. Forcer le champ de priorité dans les entêtes des protocols vlan(4) et svlan(4) est maintenant configuré avec l'option de configuration txprio
d'ifconfig(8). Cela remplace l'utilisation du drapeau link0
qui était utilisé dans le champ de priorité du paquet. Xorg
n'est plus installé avec les droits setuid, ainsi startx(1) ne peut plus être utilisés par des utilisateurs non administrateurs. Le gestionnaire d'affichage xenodm(1) doit être utilisé à la place. # rcctl enable xenodm # rcctl start xenodm
Si vous avez besoin de personnaliser X, vous aurez besoin de créer un fichier .xsession
exécutable.
/usr/include/openssl/asn1_mac.h
. rm /usr/include/openssl/asn1_mac.h
rm /usr/bin/c2ph \ /usr/bin/pstruct \ /usr/libdata/perl5/Locale/Codes/API.pod \ /usr/libdata/perl5/Module/CoreList/TieHashDelta.pm \ /usr/libdata/perl5/Unicode/Collate/Locale/bg.pl \ /usr/libdata/perl5/Unicode/Collate/Locale/fr.pl \ /usr/libdata/perl5/Unicode/Collate/Locale/ru.pl \ /usr/libdata/perl5/unicore/lib/Sc/Cham.pl \ /usr/libdata/perl5/unicore/lib/Sc/Ethi.pl \ /usr/libdata/perl5/unicore/lib/Sc/Hebr.pl \ /usr/libdata/perl5/unicore/lib/Sc/Hmng.pl \ /usr/libdata/perl5/unicore/lib/Sc/Khar.pl \ /usr/libdata/perl5/unicore/lib/Sc/Khmr.pl \ /usr/libdata/perl5/unicore/lib/Sc/Lana.pl \ /usr/libdata/perl5/unicore/lib/Sc/Lao.pl \ /usr/libdata/perl5/unicore/lib/Sc/Talu.pl \ /usr/libdata/perl5/unicore/lib/Sc/Tibt.pl \ /usr/libdata/perl5/unicore/lib/Sc/Xsux.pl \ /usr/libdata/perl5/unicore/lib/Sc/Zzzz.pl \ /usr/share/man/man1/c2ph.1 \ /usr/share/man/man1/pstruct.1 \ /usr/share/man/man3p/Locale::Codes::API.3p
pg_upgrade
tel que décrit dans le fichier pkg-readme de postgresql-server ou faites une sauvergarde et restauration. csi
et csc
ont été renommés en chicken-csi
et chicken-csc
pour éviter les conflits avec lang/mono
. /etc/dnscrypt-proxy.toml
correspond à leur besoin. /usr/local/share/doc/opendnssec/MIGRATION
après la mise à jour. py3-netaddr
pour le filtre ipaddr
) et de revoir les utilisations potentielles de ansible_python_interpreter
./etc/gitea/conf/app.ini
vers /etc/gitea/app.ini
et la localisation du répertoire GITEA_CUSTOM
a changé de /etc/gitea
vers /var/gitea/custom
. La variable ROOT_PATH
de Gitea pour les journaux a changé de /var/gitea/log
vers /var/log/gitea
. Lors de la mise à jour, déplacez /etc/gitea
vers son nouvel emplacement : # mv /etc/gitea/conf/app.ini /etc/gitea/app.ini
changez l'endroit de ROOT_PATH
dans la section [log]
du fichier /etc/gitea/conf/app.ini
:
[log] ROOT_PATH = /var/log/gitea
et déplacez les fichiers modifiés dans /etc/gitea
vers /var/gitea/custom
, s'il y en a.
~/.goaccessrc
ou /etc/goaccess.conf
) pour inclure l'une ou l'autre de ces deux lignes suivantes : geoip-database /var/db/GeoIP/GeoLite2-Country.mmdb # installed by default geoip-database /var/db/GeoIP/GeoLite2-City.mmdb # requires "geolite2-city"
Ceci N'EST PAS le processus recommandé. Utilisez la méthode d'installation du noyau autant que possible !
Parfois, vous avez besoin de faire une mise à jour d'une machine pour laquelle le processus normal de mise à jour n'est pas possible. Le cas le plus courant est une machine distante où l'accès à la console système n'est pas aisé.
Placez les fichiers d'installation au bon endroit. Assurez-vous d'avoir assez d'espace disque ! Exécuter une mise à jour à distance sans l'espace nécessaire pourrait être… catastrophique. Notez que l'usage de softdeps peut amplifier la situation car les fichiers supprimés ou réécrits ne restitueraient pas leur espace immédiatement. Envisagez le fait de désactiver l'option de montage softdep
dans /etc/fstab
et redémarrer avant de prendre le contrôle pour une mise à jour manuelle. Il est recommandé d'avoir au moins 500 Mo d'espace libre sur /usr
.
Être root. Bien que l'usage de doas(1) avant chaque commande soit généralement une bonne pratique, la commande serait probablement interrompue par les dernières étapes, ainsi vous devriez passer root avant de démarrer le processus. C'est une bonne chose de vérifier votre accès administrateur en utilisant une des autres méthodes que doas, c'est à dire, par une connexion directe ou en utilisant su(1).
Arrêtez et/ou désactivez toutes applications appropriées. Durant ce processus, toutes les applications dans l'espace utilisateur seront remplacées mais peuvent ne pas fonctionner, et des dysfonctionnements peuvent arriver. Vous pouvez également avoir des problèmes avec la résolutions DNS lors du premier redémarrage, en effet les règles PF et les montages NFS dépendants des résolutions DNS peuvent causer des problèmes de démarrage. Il peut y avoir d'autres applications que vous souhaitez empêcher de fonctionner immédiatement après la mise à jour, arrêtez-les et désactivez-les aussi.
Installation des nouveaux blocs de démarrage. Cela devrait être actuellement fait à la fin de chaque mise à niveau. Si cela a été négligé, alors le fait de ne pas le faire immédiatement pourraient rendre non-fonctionnel la console série ou d'autres choses, selon votre plate-forme. Utilisez installboot(8), en assumant que sd0
est votre disque de démarrage :
installboot sd0
Installer les nouveaux noyaux. Les étapes supplémentaires de copie sur le noyau primaire sont faites pour s'assurer qu'il y a toujours un noyau valide sur votre disque.
Si vous utilisez un noyau pour multi-processeurs :
cd /usr/rel # où vous placez les fichiers de version ln -f /bsd /obsd && cp bsd.mp /nbsd && mv /nbsd /bsd cp bsd.rd / cp bsd /bsd.sp
Si vous utilisez un noyau pour un seul processeur :
cd /usr/rel # où vous placez les fichiers de version ln -f /bsd /obsd && cp bsd /nbsd && mv /nbsd /bsd cp bsd.rd bsd.mp / # peut lever une alerte inoffensive
Activer KARL. Enregistrez la somme de contrôle du noyau :
sha256 -h /var/db/kernel.SHA256 /bsd
Installer le nouvel espace utilisateur. Sauvegardez une copie de reboot(8), décompressez et installez les paquets tar, puis redémarrez. Installez base65.tgz
en dernier, car le nouveau système de base, en particulier tar(1), gzip(1) et reboot(8) ne fonctionnent pas avec l'ancien noyaux. Soit, vous décompressez les jeux de fichiers nécessaires manuellement :
cp /sbin/reboot /sbin/oreboot tar -C / -xzphf xshare65.tgz tar -C / -xzphf xserv65.tgz tar -C / -xzphf xfont65.tgz tar -C / -xzphf xbase65.tgz tar -C / -xzphf man65.tgz tar -C / -xzphf game65.tgz tar -C / -xzphf comp65.tgz tar -C / -xzphf base65.tgz # Installez en dernier ! /sbin/oreboot
ou, si vous utilisez ksh(1), vous pouvez faire :
cp /sbin/reboot /sbin/oreboot for _f in [!b]*65.tgz base65.tgz; do tar -C / -xzphf "$_f" || break; done /sbin/oreboot
Notez que tar(1) ne peut décompresser qu'une seule archive par invocation, donc un simple glob ne fonctionnera pas.
Après le redémarrage, mettre à jour /dev
. Utilisez MAKEDEV(8) :
cd /dev ./MAKEDEV all
Mettre à jour le chargeur de démarrage. Toujours en supposant que sd0
soit votre disque de démarrage :
installboot sd0
Mettre à jour les fichiers de configurations systèmes. Utilisez sysmerge(8) :
sysmerge
Mettre à jour les micrologiciels. Il peut y avoir de nouveaux micrologiciels pour votre système. Mettez-les à jour avec fw_update(1) :
fw_update
Pour terminer : Examinez les sorties de consoles post démarrage (en utilisant dmesg -s
) et corrigez toute défaillance si nécessaire. Toutes les étapes concernant les changements de configuration ci-dessus s'appliquent également aux mises à jour manuelles. Enfin, supprimez /sbin/oreboot
et mettez à jour vos paquets : pkg_add -u
. Redémarrez une fois que vous êtes sûr du bon fonctionnement de votre propre noyau généré par KARL.
[ FAQ Index ] | [ 6.3 -> 6.4 ] | [ 6.5 -> 6.6 ]
Cette page est la traduction officieuse de la page “Upgrade Guide: 6.4 to 6.5” de la FAQ officielle d'OpenBSD.
En cas de doute, merci de vous y référer !
Si vous voulez participer à l'effort de traduction, merci de lire ce topic.