Aggiornare a FreeBSD 9.0 RC1

FreeBSD 9.0

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/games

Does 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