[FAQ Index] | [6.0 -> 6.1] [6.2 -> 6.3]
Upgrades are only supported from one release to the release immediately following it. Read through and understand this process before attempting it. For critical or physically remote machines, test it on an identical, local system first.Start by performing the pre-upgrade steps. Next, boot from the install kernel, bsd.rd: use bootable install media, or place the 6.2 version of
bsd.rdin the root of your filesystem and instruct the boot loader to boot this kernel. Once this kernel is booted, choose the
(U)pgradeoption and follow the prompts. Apply the configuration changes and finish up by upgrading the packages:
Alternatively, you can use the manual upgrade process.
You may wish to check the errata page or upgrade to the stable branch to get any post-release fixes.
/usr/share/man. To remove all outdated manuals, issue
rm -rf /usr/share/man.
$HISTFILEis set) changed from a binary file format to plaintext. If you wish to retain your current ksh history, create a plaintext version of it before upgrading:
After the upgrade, you can use$ fc -ln 1 | cut -f2- > ~/ksh_hist.txt
ksh_hist.txtas your history file.
If you mount
NFS, ensure that machines running
6.2 use a different
HISTFILE than machines running 6.1 or earlier.
bsd.rd, drop to a shell and re-initialize the GPT:
Then do a fresh install and restore the data from the backup.# fdisk -iy -g -b 960 sdN
/usr/obj. If you build your own releases on the amd64 or i386 platforms, you need to make sure that you have at least 3G available on
# chgrp -R crontab /var/cron/atjobs
rtsolis no longer supported in hostname.if(5). Replace it with
bsd.rdis postponed to the end of the installer script. If you use this feature, make sure your script still works as expected. The script will now run after these steps:
are now deprecated in favour of
-parent when using ifconfig(8) or
in hostname.if(5) configuration files.
Use of the
vlan option must be replaced with
Because VLAN tag 0 is invalid according to the relevant VLAN
vnetid option does not accept 0 as a
valid network identifier.
To use VLAN tag 0 on the wire the vnetid can be unconfigured with
-vlandev must be replaced with
parent do not implicitly bring the vlan interface up.
vlan option is no longer implied by the
interface's minor when it is not explicitly set.
ifconfig(8) no longer outputs a vlan specific status line, or separate vnetid and parent lines. The vnetid and parent lines have been merged into a single encap line containing the VLAN tag and parent information.
An example of the changes to a vlan(4) configuration file and the ifconfig(8) output is below. Before the changes:
After the changes:# cat /etc/hostname.vlan7 vlandev em0 # vlan 7 and up are implied lladdr random # ifconfig vlan7 vlan7: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 lladdr 70:a7:3a:75:da:2d index 7 priority 0 llprio 3 vlan: 7 parent interface: em0 vnetid: 7 parent: em0 status: active
# cat /etc/hostname.vlan7 vnetid 7 parent em0 up lladdr random # ifconfig vlan7 vlan7: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 lladdr 60:e8:d7:0d:10:6d index 7 priority 0 llprio 3 encap: vnetid 7 parent: em0 groups: vlan status: active
emacs-usemetaksh(1) flag is no longer useful and has been deprecated. Please adjust your shell config files.
allow-optsto your rule if you want to pass IP packets with options.
ICMP6_DST_UNREACH_NOTNEIGHBOR). The correct type is beyond-unr (
ICMP6_DST_UNREACH_BEYONDSCOPE). In pf.conf(5),
notnbr-unrneeds to be replaced with
securekeyword is not valid anymore in
listendirectives in smtpd.conf(5). Users are advised to replace existing
listen securedirectives with two separate
smtpslisteners, i.e., a line like
has to be replaced withlisten on $iface secure pki $pki
Relaying syntax is not affected by this change.listen on $iface tls pki $pki listen on $iface smtps pki $pki
softreconfig (in|out) (yes|no)neighbor setting has been removed in bgpd.conf(5).
softreconfigcan no longer be disabled. Remove the instruction from the configuration.
packetbeatwere updated to 5.3.1 which significantly changed the configuration file layout from 1.x to 5.x. Please refer to the upstream documentation for migrating your configuration. Also take note of the breaking changes when upgrading to 5.3.1.
topbeathas been merged into
metricbeat, a migration path is available.
/etc/borgmatic/config) to YAML (
/etc/borgmatic/config.yaml) formatting. Please upgrade your existing config after updating your package:
lprm) are no longer symlinked into
/usr/bin. If you want to use CUPS commands from the command line, you must now use the absolute path, e.g.:
lpqwithout an absolute path would invoke the base lpq(1).
Similarly, to view a CUPS manual, you would use:
If you consistently use CUPS, you can add the following to your$ man -m /usr/local/man lpq
.kshrcto avoid the need to type an absolute path:
for i in lpq lpr lprm; do alias $i=/usr/local/bin/$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.
softdepmount option in
/etc/fstaband rebooting before undertaking a manual upgrade. Having at least 500MB free on
/usrwould be recommended.
sd0is your boot disk:
If using the multiprocessor kernel:
If using the single processor 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
sha256 -h /var/db/kernel.SHA256 /bsd
base62.tgzlast, because the new base system, in particular tar(1), gzip(1) and reboot(8), will not work with the old kernel. Either untar the needed filesets manually
or, if you use ksh(1), you can docp /sbin/reboot /sbin/oreboot tar -C / -xzphf xshare62.tgz tar -C / -xzphf xserv62.tgz tar -C / -xzphf xfont62.tgz tar -C / -xzphf xbase62.tgz tar -C / -xzphf man62.tgz tar -C / -xzphf game62.tgz tar -C / -xzphf comp62.tgz tar -C / -xzphf base62.tgz # Install last! /sbin/oreboot
Note that tar(1) can expand only one archive per invocation, so a simple glob won't work.cp /sbin/reboot /sbin/oreboot for _f in [!b]*62.tgz base62.tgz; do tar -C / -xzphf "$_f" || break; done /sbin/oreboot
/dev. Run MAKEDEV(8):
cd /dev ./MAKEDEV all
sd0is your boot disk:
dmesg -s) and correct any failures as necessary. All the steps following configuration changes above also apply to manual upgrades. Finally, remove
/sbin/orebootand update packages:
pkg_add -u. Reboot once more to make sure you run on your own kernel generated by KARL.
[FAQ Index] | [6.0 -> 6.1] [6.2 -> 6.3]