[FAQ Index] | [5.7 -> 5.8] [5.9 -> 6.0]
Note: Upgrades are only supported from one release to the release immediately following it.Boot from the install kernel, bsd.rd. This can be done by booting from an install CD, or other bootable install media. Alternatively, you can place the 5.9 version ofIt is highly recommended that you read through and fully understand this process before attempting it. Especially for critical or physically remote machines, it is recommended that you test it on an identical, local system first.
bsd.rd in the root of
your file system and instruct the boot loader to boot this kernel instead
of your usual kernel -- on amd64 and i386:
boot> boot bsd.rd
Once this kernel is booted, choose the (U)pgrade option and follow the
prompts.
The upgrade process retains all your configuration info.
If you absolutely have to, you can follow the
manual upgrade process instead.
Final steps:
# sysmerge
    The sysmerge(8) utility will compare the files that are currently on your system with those that would be installed in a fresh install. It will assist you in merging the changes into your system, using sdiff(1).
The section on configuration changes lists some important cases that need extra care.
# pkg_add -u
    In many cases, that will be all you need to do. Check the section below to see if any of your installed packages require workarounds to upgrade.
rtable option was removed from server and
    servers.
    Users of server * rtable X will need to switch to launching
    ntpd with
    
    # route -T X exec /usr/sbin/ntpd
    set debug no longer accepts the none, urgent,
    misc and loud arguments, which were deprecated several
    releases ago.
    Use emerg, alert, crit, err,
    warning, notice, info or debug instead.
    Change this before updating, or your pf.conf will not load.
  
pki keyword no longer accepts a ca parameter.
    Custom CA certificates must be declared using the new ca keyword:
    
    ca mail.example.org certificate "/etc/mail/CA.pem"
    multicast_host and multicast_router have been
    merged into a single multicast option.
    In order to enable multicast the following line should be added in
    rc.conf.local(8):
    
    multicast=YES
    YES or
    the interface carrying the default route, you will also need to add a static
    route for 224.0.0.0/4.
  
link0 flag it would change to a layer-2 "ethernet" mode.
    This layer-2 mode has now been has been split off to a separate
    tap(4)
    device.
    
    For some use cases (e.g. ssh tunnel-forwarding run as a non-root user),
    permissions on the device nodes would have been modified; these should
    be applied to the new device nodes as necessary.
    hostname.tun* files using the link0 flag should be moved
    to hostname.tap* instead, and the flag should be removed.
    Other configuration may need to be adjusted to use the new device
    name, for example for software like QEMU, OpenVPN or SIMH.
    Networking configuration (bridges, PF) referring to these devices
    may also need to change.
rm -f /usr/libexec/smtpd/makemap
# People requiring these backends should install the opensmtpd-extras main package.
rm -f /usr/libexec/smtpd/table-ldap
rm -f /usr/libexec/smtpd/table-passwd
rm -f /usr/libexec/smtpd/table-sqlite
rm -f /usr/share/man/man5/table_passwd.5
rm -f /usr/share/misc/termcap.db /usr/share/misc/terminfo.db
rm -f /usr/X11R6/include/intel_*.h
rm -f /usr/X11R6/include/r600_pci_ids.h
rm -f /usr/X11R6/include/radeon_*.h
rm -f /usr/include/malloc.h
rm -f /usr/libexec/auth/login_tis
rm -f /etc/rc.d/yppasswdd /usr/sbin/rpc.yppasswdd
cd /usr/X11R6/include/freetype2
rm -rf config
rm -f freetype.h ftadvanc.h ftbbox.h ftbdf.h ftbitmap.h ftbzip2.h \
          ftcache.h ftcffdrv.h ftchapters.h ftcid.h fterrdef.h \
          fterrors.h ftfntfmt.h ftgasp.h ftglyph.h ftgxval.h ftgzip.h \
          ftimage.h ftincrem.h ftlcdfil.h ftlist.h ftlzw.h ftmac.h \
          ftmm.h ftmodapi.h ftmoderr.h ftotval.h ftoutln.h ftpfr.h \
          ftrender.h ftsizes.h ftsnames.h ftstroke.h ftsynth.h \
          ftsystem.h fttrigon.h fttypes.h ftwinfnt.h t1tables.h \
          ttnameid.h tttables.h tttags.h ttunpat.h
php_fpm in
    /etc/rc.conf.local to e.g. php56_fpm.
  in.gophernicus moved from /usr/local/sbin/ to
    /usr/local/libexec.
    Update your /etc/inetd.conf accordingly.
  
default_settings.py) format has
    changed and needs to be merged with default_settings.py.dist
    before restarting the puppetboard service.
  
# pkg_delete cfs
  
-std=gnu++0x, so npm
    internally sets CXX=eg++ when building native modules.
    To remove any installed modules:
    
    for i in node-always node-async node-bcrypt node-bindings \
            node-buffer-writer node-canvas node-cloned node-daemon \
            node-expresso node-fibers node-generic-pool node-gir \
            node-java node-mnm node-pg node-rmdir node-sqlite3 \
            node-syslog node-typescript coffeescript;
            do
                    pkg_delete $i
            done
    Sometimes, you need to do an upgrade of a machine for which the normal upgrade process is not possible. The most common case is a machine in a remote location and there is no easy access to the system console.
softdep mount option in /etc/fstab
    and rebooting before undertaking a manual upgrade.
    Having at least 200MB free on /usr would be recommended.
  
sd0 is your boot disk:
    
    installboot -v sd0
    If using the multiprocessor kernel:
    cd /usr/rel    # where you put the release files
    ln -f /bsd /obsd && cp bsd.mp /nbsd && mv /nbsd /bsd
    cp bsd.rd /
    cp bsd /bsd.sp
    
    cd /usr/rel    # where you put the release files
    ln -f /bsd /obsd && cp bsd /nbsd && mv /nbsd /bsd
    cp bsd.rd bsd.mp /    # may give a harmless warning
    
base59.tgz last, because the new base system, in particular
    tar(1) and
    reboot(8),
    will not work with the old kernel.
    
    cp /sbin/reboot /sbin/oreboot
    tar -C / -xzphf xserv59.tgz
    tar -C / -xzphf xfont59.tgz
    tar -C / -xzphf xshare59.tgz
    tar -C / -xzphf xbase59.tgz
    tar -C / -xzphf game59.tgz
    tar -C / -xzphf comp59.tgz
    tar -C / -xzphf man59.tgz
    tar -C / -xzphf base59.tgz    # Install last!
    /sbin/oreboot
    
/dev.
    Run
    
    MAKEDEV(8):
    
    cd /dev
    ./MAKEDEV all
    sd0 is your boot disk:
    
    installboot -v sd0
    
    sysmerge
    
    fw_update -v
    dmesg -s)
    and correct any failures as necessary.
    Proceed by removing some files -- don't forget
    /sbin/oreboot -- and upgrading packages.
[FAQ Index] | [5.7 -> 5.8] [5.9 -> 6.0]