[3.4 -> 3.5] | [3.5 -> 3.6] | [3.6 -> 3.7] | [3.7 -> 3.8] | [3.8 -> 3.9] | [4.0 -> 4.1] | [FAQ Index]
Il est hautement recommandé de lire entièrement la présente page et de bien comprendre la procédure de mise à jour avant de l'appliquer. Si vous comptez mettre à jour une machine critique ou physiquement distante, il est recommandé d'essayer la procédure ci-après sur un système local d'abord afin d'en vérifier le succès.
La mise à niveau est un moyen commode afin d'avoir votre système à jour avec la version la plus récente. Cependant, les résultats escomptés ne sont pas censés être précisément ceux d'une installation de zéro. Les fichiers d'anciennes bibliothèques en particulier ne sont pas supprimés lors du processus de mise à niveau, car ils pourraient être requis par de plus anciennes applications pouvant être ou non mises à jour à ce moment précis. Si vous voulez VRAIMENT vous débarrasser de ces anciens fichiers, vous feriez probablement mieux de réinstaller complètement votre système.
Table des matières :
Vérifiez si vous avez effectué des modifications à votre noyau. Par exemple vous pourriez avoir modifié un périphérique réseau afin que celui-ci utilise un paramètre non standard en utilisant config(8). Notez vos changements afin d'être en mesure de les reproduire sur le noyau 4.0.
On a parfois besoin de mettre à niveau une machine mais on ne peut pas utiliser le processus classique de mise à niveau. On peut alors réaliser une mise à niveau depuis les sources :
export RELEASEPATH=/yourpath
cd ${RELEASEPATH}
rm /obsd ; ln /bsd /obsd && cp bsd /nbsd && mv /nbsd /bsd
cp bsd.rd bsd.mp /
Notez les étapes additionnelles pour copier par dessus un premier noyau
: celles-ci sont réalisées afin de s'assurer qu'il y ai toujours une
copie valide du noyau sur le disque et que le système puisse booter en
cas de coupure électrique ou de panne du système.
cd /
tar xzpf ${RELEASEPATH}/base40.tgz "*etc/firmware/*"
Remarque : si votre adaptateur sans-fil utilise le pilote
iwi(4),
vous devez mettre à jour les fichiers du firmware à la version
3.0. A cause de problèmes de license, le firmware n'est pas distribué
avec OpenBSD. Le firmware peut être installé à l'aide des outils pkg en
utilisant le paquetage disponible à
http://damien.bergamini.free.fr/iwifw/OpenBSD/iwi-firmware-3.0.tgz.
export RELEASEPATH=/yourpath
cd /
tar xzpf ${RELEASEPATH}/base40.tgz
tar xzpf ${RELEASEPATH}/comp40.tgz
tar xzpf ${RELEASEPATH}/game40.tgz
tar xzpf ${RELEASEPATH}/man40.tgz
tar xzpf ${RELEASEPATH}/misc40.tgz
tar xzpf ${RELEASEPATH}/xbase40.tgz
tar xzpf ${RELEASEPATH}/xfont40.tgz
tar xzpf ${RELEASEPATH}/xserv40.tgz
tar xzpf ${RELEASEPATH}/xshare40.tgz
Remarque : tous les jeux de fichiers ne devront pas être installés pour
toutes les applications, cependant, si vous aviez installé originalement
un jeu de fichiers, vous devrez certainement le mettre à niveau avec le
nouveau jeu de fichiers.
Remarque : les fichiers appartenant à /etc sont gérés séparément. C'est pourquoi les archives etc40.tgz et xetc40.tgz ne sont PAS ouvertes à cette étape.
cd /dev ./MAKEDEV all
Nov 1 12:47:05 puffy sm-mta[16733]: filesys_update failed: No such
file or directory, fs=., avail=-1, blocksize=380204
Ces messages peuvent être ignorés sans risque, mais vous pourriez
vouloir arrêter sendmail(8) pendant la mise à niveau.
Cette étape ajoutera en même temps le nouvel utilisateur et son groupe correspondant. Votre environnement devrait vous permettre de faire un "copier/coller" de cette commande.# useradd -u87 -g=uid -c"DVMRP Daemon" -d/var/empty -s/sbin/nologin _dvmrpd
La configuration d'IPsec est désormais totalement supportée par ipsecctl(8). L'utilitaire ipsecadm(8) est désormais obsolète et a été supprimé de l'arbre CVS. Référez-vous au manuel d' ipsec.conf(5) pour des exemples de configuration.
La configuration sans-fil pour wi(4) est désormais totalement supportée par ifconfig(8). L'utilitaire wicontrol(8) est désormais obsolète et a été supprimé de l'arbre CVS.
A présent, la configuration de PPP en mode noyau est totalement supportée par ifconfig(8). L'utilitaire spppcontrol(8) est désormais obsolète et a été retiré de l'arbre des sources. Référez-vous aux manuels de sppp(4) et pppoe(4) pour des exemples de configuration.
Précédemment, le fichier /etc/hostname.pppoe0 ressemblait à :
pppoedev ne0
!/sbin/ifconfig ne0 up
!/usr/sbin/spppcontrol \$if myauthproto=pap myauthname=testcaller \
myauthkey=donttell
!/sbin/ifconfig \$if inet 0.0.0.0 0.0.0.1 netmask 0xffffffff
!/sbin/route add default 0.0.0.1
up
Il devra être mis à jour de la façon suivante :
inet 0.0.0.0 255.255.255.255 0.0.0.1 pppoedev ne0 \
authproto pap authname testcaller authkey donttell up
!/sbin/route add default 0.0.0.1
Et l'interface physique doit être marquée comme active ("UP") :
# echo "up" > /etc/hostname.ne0
cd /tmp
tar xzpf ${RELEASEPATH}/etc40.tgz
Fichiers pouvant probablement être copiés de etc40.tgz "en
l'état" :
Notez qu'il EST possible de modifier ces fichiers localement, si ceci a été fait, une fusion manuelle pourrait être nécessaire. Faites attention au fichier mail/sendmail.cf si vous utilisez une configuration Sendmail(8) différente de celle par défaut. Voici les lignes copiées/collées pour copier ces fichiers, à la condition que vous ayez extrait etc40.tgz dans le répertoire conseillé ci-dessus :chio.conf dvmrpd.conf netstart pf.os rc security services mail/helpfile mail/localhost.cf mail/sendmail.cf mail/submit.cf mtree/* ppp/ppp.conf.sample
Deux pages de la documentation de httpd(8) ont subi des modifications :cd /tmp/etc cp chio.conf dvmrpd.conf netstart pf.os rc security services /etc cp mail/helpfile mail/localhost.cf mail/submit.cf /etc/mail cp ppp/ppp.conf.sample /etc/ppp cp mtree/* /etc/mtree/ cp mail/sendmail.cf /etc/mail # soyez certains ce ce que vous faites !!
Si vous le souhaitez, vous pouvez les copier à l'aide des commandes suivantes :/var/www/htdocs/manual/mod/core.html /var/www/htdocs/manual/mod/mod_proxy.html
cd /tmp/var/www/htdocs/manual/mod/ cp core.html mod_proxy.html /var/www/htdocs/manual/mod
Fichiers devant être fusionnés manuellement, en respectant tout changement local effectué sur ceux-ci s'ils ont été modifiés par rapport à la configuration par défaut ; sinon, copiez-les simplement :
Les modifications effectuées sur ces fichiers se trouvent dans le fichier "patch". Vous pouvez essayer de l'utiliser en exécutant la commande suivante avec les privilèges root :changelist ftpusers mail/aliases rc.conf ssh/ssh_config ssh/sshd_config
Ceci aura pour effet de tester le "patch" pour voir s'il s'applique bien à VOTRE système. Pour l'appliquer, supprimez l'option "-C" de la commande précédente. Si vous avez effectué des modifications locales sur ces fichiers ou si vous ne les avez pas gardées aussi à jour que possible par rapport aux versions officielles, ou si vous effectuez la mise à jour depuis un snapshot de la version 3.9, il se peut que le "patch" ne passe pas correctement. Vous devriez alors intervenir manuellement. Merci de bien vouloir tester ce procédé avant de vous y fier pour une machine à laquelle vous ne pouvez avoir accès facilement.cd / patch -C -p0 < upgrade40.patch
Les fichiers suivants contiennent des modifications à considérer. Cependant, une copie ou une comparaison sont peu probables (dans le cas de pf.conf par exemple, considérez les changements de stratégie s'il y a lieu et déterminez si ces changements sont adaptés à votre utilisation).
Enfin, utilisez mtree(8) pour créer les nouveaux répertoires :hostapd.conf ipsec.conf rc.local sensorsd.conf spamd.conf
mtree -qdef /etc/mtree/4.4BSD.dist -p / -u
Si vous avez suivi les instructions de mise à niveau sans média d'installation vous aurez déjà accompli cette étape. En revanche, si vous utilisez le média d'installation et si vous aviez un noyau modifié en 3.9 il est probable que vous devriez modifier le noyau 4.0 de base. Cela peut être aussi simple que de modifier un périphérique spécifique avec config(8) ou il peut être nécessaire de recompiler le noyau si l'option que vous souhaitez n'est pas incluse dans le noyau GENERIC. Consultez la section FAQ 5 - Construire le Système à partir des Sources avant d'envisager une recompilation de votre noyau.
où -u indique le mode mise à jour et -i le mode interactif, ainsi pkg_add vous demandera ce que vous souhaitez faire lorsque celui-ci rencontrera une ambiguïté. Lisez le manuel de pkg_add(1) et le chapitre de la FAQ sur la gestion des paquetages pour de plus amples informations.# pkg_add -ui -F update -F updatedepends
[3.4 -> 3.5] | [3.5 -> 3.6] | [3.6 -> 3.7] | [3.7 -> 3.8] | [3.8 -> 3.9] | [4.0 -> 4.1] | [FAQ Index]