[3.4 -> 3.5] | [3.5 -> 3.6] | [3.6 -> 3.7] | [3.7 -> 3.8] | [3.9 -> 4.0] | [FAQ Index]
Het wordt ten zeerste aanbevolen dat u dit proces doorleest en het volledig begrijpt alvorens het te proberen. Als u het doet op een kritieke of fysisch verafgelegen machine, wordt het aanbevolen dat u dit proces test op een identiek, lokaal systeem om het welslagen ervan te verifiëren alvorens het te proberen op een kritieke of verafgelegen computer.
Upgraden is een handige manier om uw OpenBSD systeem naar de meest recente versie te brengen. De resultaten zijn echter niet bedoeld om precies overeen te stemmen met de resultaten van een wis-en-herlaad installatie. Oude library-bestanden worden meer bepaald niet verwijderd tijdens het upgrade-proces, aangezien ze vereist zouden kunnen zijn door oudere toepassingen die op dit moment al dan niet geüpgraded kunnen worden. Als u ECHT van al deze oude bestanden wenst af te raken, zou u waarschijnlijk beter af zijn door vanaf nul te herinstalleren.
Inhoudstafel:
Door het toevoegen van debug-symbolen, is de grootte van library-bestanden aanzienlijk toegenomen. Op het i386 platform is de ruimte ingenomen door de /usr/lib directory gestegen van 47.7MB in 3.8 tot 209MB in 3.9. Zorg ervoor dat u voldoende ruimte hebt alvorens de upgrade te starten.
Controleer of u wijzigingen gedaan hebt aan uw kernel. Het kan bijvoorbeeld dat u uw netwerkapparaat met config(8) gewijzigd heeft zodat het een niet-standaard instelling gebruikt. Noteer uw wijzigingen, zodat u ze kan herhalen voor de nieuwe 3.9 kernel.
pfsync(4) is van formaat veranderd, dus het kan geen toestanden bewaren tussen een 3.8 en een 3.9 machine. Niet op elkaar afgestemde systemen zullen alle verbindingen verliezen wanneer u omschakelt welke machine de master is, aangezien toestanden niet zullen overgezet worden tussen de systemen. U kan de impact hiervan minimaliseren door eerst uw backupmachines te upgraden, zodat er slechts éénmaal verlies optreedt van actieve toestanden.
carp(4) gebruikers met meer dan één adres op een enkele carp(4) interface kunnen nog een moeilijkheid ervaren bij het upgraden: interfaces worden nu volgens adres gesorteerd, dus aliassen in precies dezelfde volgorde hebben is niet meer zo kritiek als vroeger. Dit betekent echter wel dat er problemen kunnen optreden tussen oude en nieuwe machines. U kan op de oude systemen aliassen manueel sorteren om rond dit probleem heen te werken indien nodig.
ftp-proxy(8) is veranderd, zoals hieronder uitgelegd, dus het kan dat uw pf.conf(5) bestand moet geüpdatet worden.
ancontrol(8) werd vervangen door bijkomende functionaliteit in ifconfig(8). Dit kan een invloed hebben op hoe u uw draadloze interfaces configureert.
Soms moet men een machine upgraden wanneer men niet gemakkelijk het normale upgrade-proces kan gebruiken. Men kan dit gewoonlijk doen door nauwgezet een proces te volgen, gelijkaardig aan een bron-gebaseerde upgrade:
export RELEASEPATH=/yourpath
cd ${RELEASEPATH}
rm /obsd ; ln /bsd /obsd && cp bsd /nbsd && mv /nbsd /bsd
cp bsd.rd bsd.mp /
Bemerk de extra stappen om over de primaire kernel te kopiëren: die worden
gedaan om te verzekeren dat er steeds een geldige kopie van de kernel op de
schijf staat, waarvan het systeem kan booten, in het geval dat er zich
een erg slecht getimede stroomonderbreking of systeemcrash zou voordoen.
cd /
tar xzpf ${RELEASEPATH}/base39.tgz "*etc/firmware/*"
export RELEASEPATH=/yourpath
cd /
tar xzpf ${RELEASEPATH}/base39.tgz
tar xzpf ${RELEASEPATH}/comp39.tgz
tar xzpf ${RELEASEPATH}/game39.tgz
tar xzpf ${RELEASEPATH}/man39.tgz
tar xzpf ${RELEASEPATH}/misc39.tgz
tar xzpf ${RELEASEPATH}/xbase39.tgz
tar xzpf ${RELEASEPATH}/xfont39.tgz
tar xzpf ${RELEASEPATH}/xserv39.tgz
tar xzpf ${RELEASEPATH}/xshare39.tgz
Opmerking: niet alle bestandensets zullen geïnstalleerd moeten worden voor
alle toepassingen, als u echter oorspronkelijk een bestandenset installeerde,
dan moet u hem nu zeker upgraden met de nieuwe bestandenset.
Opmerking: de bestanden in /etc worden hieronder afzonderlijk behandeld, dus etc39.tgz en xetc39.tgz worden hier NIET uitgepakt.
cd /dev ./MAKEDEV all
Nov 1 12:47:05 puffy sm-mta[16733]: filesys_update failed: No such file or dire
ctory, fs=., avail=-1, blocksize=380204
Deze boodschappen kunnen veilig genegeerd worden, of misschien wenst u
sendmail(8) af te sluiten tijdens het upgrade-proces.
echo 'ftpproxy_flags=""' >> /etc/rc.conf.local
De nieuwe proxy gebruikt ankers om gegevensverbindingen toe te laten, wat betekent dat uw bestaande /etc/pf.conf bestand aangepast moet worden. In de NAT sectie hebt u het volgende nodig:
Deze zijn verplicht, zelfs als u verder geen NAT gebruikt. De volgende regel, die er waarschijnlijk reeds staat voor de oude ftp-proxy, moet blijven:nat-anchor "ftp-proxy/*" rdr-anchor "ftp-proxy/*"
rdr pass on $int_if proto tcp from $lan to any port 21 -> \
127.0.0.1 port 8021
In de regels-sectie is dit nodig:
Regels die de proxy toelaten om FTP controleverbindingen te maken (bestemmingspoort 21/tcp) moeten blijven. Regels die FTP gegevensverbindingen toelaten zijn niet langer nodig. Die regels kunnen "user proxy" of "to port > 49151" bevatten. Er werd voor gezorgd om de commandoregelopties gelijkaardig te houden, maar sommige verschillen. Zie de ftp-proxy(8) man pagina.anchor "ftp-proxy/*"
Eén geval verdient speciale vermelding: als u oude clients hebt die rekenen op actieve modus gegevensverbindingen die 20/tcp als bronpoort gebruiken, dan hebt u de '-r' optie nodig (hiervoor moest u de oude proxy met "-u root" uitvoeren).
Draai ftp-proxy met "-d -D7" als u in de problemen komt en een diagnose wil stellen van wat er gebeurt.
cd /tmp
tar xzpf ${RELEASEPATH}/etc39.tgz
Bestanden die waarschijnlijk kunnen gekopieerd worden vanuit
etc39.tgz "zoals ze zijn":
Merk op dat het WEL mogelijk is om deze bestanden lokaal te wijzigen, als dit gedaan werd, zal handmatig samensmelten (merge) nodig zijn. Hier zijn kopieer/plak lijnen om deze bestanden te kopiëren, in de veronderstelling dat u etc39.tgz uitpakte op de hierboven aanbevolen plaats:daily ipsec.conf magic monthly netstart rc security services weekly mtree/*
cd /tmp/etc cp daily ipsec.conf magic monthly netstart rc security services weekly /etc cp mtree/* /etc/mtree/
Bestanden die handmatig samengesmolten moeten worden, met behoud van lokale wijzigingen die er in werden aangebracht, indien ze gewijzigd werden in vergelijking met de standaard bestanden, anders kopieert u ze ook gewoon:
De wijzigingen aan deze bestanden staan in dit patchbestand. U kan dit proberen te gebruiken door het volgende uit te voeren als root:changelist inetd.conf lynx.cfg rc.conf ssh/ssh_config ssh/sshd_config sysctl.conf
Dit zal de patch testen om te zien hoe goed hij aangebracht zal worden op UW systeem, om hem werkelijk aan te brengen, laat u de "-C" optie weg. Merk op dat ze waarschijnlijk de patch niet zuiver zullen aanvaarden, als u bestanden aangepast hebt of niet nauwgezet geüpdatet, of als u aan het upgraden bent vanaf een 3.8 snapshot. In zulke gevallen zal u de wijzigingen handmatig moeten aanbrengen. Test dit proces alstublieft alvorens erop te vertrouwen voor een machine waar u niet gemakkelijk bij kan.cd / patch -C -p0 < upgrade39.patch
De volgende bestanden bevatten wijzigingen waarnaar best gekeken wordt, maar het is onwaarschijnlijk dat ze rechtstreeks gekopieerd of samengesmolten zouden moeten worden (dus als u pf.conf gebruikt, bekijk dan de voorgestelde verandering van strategie, en beslis of het gepast is voor uw gebruik).
Verwijder de libresolv bestanden, die niet langer gebruikt worden:hostapd.conf pf.conf spamd.conf
Gebruik tenslotte mtree(8) om nieuwe directories aan te maken:rm /usr/lib/libresolv*
mtree -qdef /etc/mtree/4.4BSD.dist -p / -u
Indien u de instructies hebt gevolgd voor het upgrade proces zonder installatiemedium, dan hebt u deze stap al voltooid. Als u daarentegen een installatiemedium gebruikte, en als u een gewijzigde kernel had in 3.8, dan is het waarschijnlijk dat u de standaard kernel van 3.9 ook zal moeten wijzigen. Dit kan zo eenvoudig zijn als het wijzigen van een specifiek apparaat met config(8), of het kan een hercompilatie betekenen als de optie die u nodig hebt niet in de GENERIC kernel is opgenomen. Raadpleeg alstublieft FAQ 5 - Het Systeem vanaf Broncode Bouwen alvorens te overwegen om uw kernel te hercompileren.
waarbij de -u update modus aangeeft, en -i interactieve modus specificeert, zodat pkg_add u vragen zal stellen wanneer het dubbelzinnigheden tegenkomt. Lees de pkg_add(1) manual pagina en het package beheer hoofdstuk van de FAQ voor meer informatie.# pkg_add -ui -F update -F updatedepends
[3.4 -> 3.5] | [3.5 -> 3.6] | [3.6 -> 3.7] | [3.7 -> 3.8] | [3.9 -> 4.0] | [FAQ Index]