FreeBSD 9.0 è alle porte, la prima Release Candidate è stata rilasciata e ne dovrebbero seguire altre due prima del rilascio della versione finale. Avendo una virtual machine ferma a FreeBSD 9.0 Beta 1 ho deciso di aggiornare alla RC1, i passi che descrivo di seguito sono gli stessi che servono anche ad aggiornare da FreeBSD 8.2 a FreeBSD 9.0 RC1:
Il primo passo non è obbligatorio e consiste nel determinare, se già non lo sappiamo, quale versione di FreeBSD stiamo per aggiornare:
# uname -rs
FreeBSD 9.0-BETA1
Passiamo adesso agli step necessari ad aggiornare. La prima cosa da fare è modificare freebsd-update (del grande Colin Percival), lo script che utilizzeremo per l’aggiornamento di versione, in questo modo:
# sed -i '' -e 's/=_/=%@_/' /usr/sbin/freebsd-update
A questo punto possiamo lanciare freebsd-update per l’aggiornamento:
# freebsd-update upgrade -r 9.0-RC1
Al termine verranno mostrati a video i seguenti messaggi:
The following components of FreeBSD seem to be installed:
kernel/generic world/base
The following components of FreeBSD do not seem to be installed:
src/src world/doc world/gamesDoes this look reasonable (y/n)?
Lanciamo a questo punto l’installazione degli aggiornamenti binari:
# freebsd-update install
Terminato anche questo step riceveremo questo messaggio:
Kernel updates have been installed. Please reboot and run
“/usr/sbin/freebsd-update install” again to finish installing updates
Seguendo l’indicazione avuta sarà necessario riavviare:
# shutdown -r now
e lanciare nuovamente:
freebsd-update install
Arrivati a questo punto verrà chiesto da freebsd-update di ricompilare i software di terze parti installati, come ad esempio i “ports” che potremo aggiornare installando portmanager:
# pkg_add -r portmanager
Una volta installato questo tool sarà necessario prima un aggiornamento del ports tree con portsnap:
# portsnap fetch extract
infine un aggiornamento di tutti i ports usando portmanager con il comando:
# portmanager -u
Terminato questo aggiornamento completo dei ports, che può richiedere qualche ora per essere completato, dovremo dare un ultimo comando con freebsd-update per aggiornare effettivamente a FreeBSD 9.0 RC1:
# freebsd-update install
Infine consiglio una ripulita ai ports, per far questo dovremo installare portupgrade in questo modo:
# pkg_add portupgrade
e pulire le working directories dei ports in questo modo:
# portsclean -C
oppure molto più rozzamente e senza richiedere installazione di software aggiuntivi si potrà dare:
# rm -rf /usr/ports/*/*/work