Upgrades are only supported from one release to the release immediately following.
Read through and understand this process before attempting it. For critical or physically remote machines, test it on an identical, local system first.
/usr
partition has a size of at least 1.1G.
With less space the upgrade may fail and you should consider reinstalling
the system instead.
bsd.rd
.
Download the ramdisk kernel and the cryptographically-signed checksum file
for your architecture.
bsd.rd
SHA256.sig
Verify bsd.rd
and SHA256.sig
using
signify(1):
$ signify -C -p /etc/signify/openbsd-73-base.pub -x SHA256.sig bsd.rd Signature Verified bsd.rd: OK
bsd.rd
, retrieved
in the previous step. Place it in the root of your filesystem and
instruct the boot loader to boot this kernel. Once this kernel is
booted, choose the (U)pgrade
option and follow the prompts.
After upgrading the sets, the system will reboot with the upgraded kernel and run sysmerge(8) during boot. In some cases, configuration files cannot be modified automatically. Run
# sysmergeto check and perform these configuration changes.
Next remove the old files.
Finish up by upgrading the packages using pkg_add -u
.
You may wish to check the errata page for any post-release fixes.
Sometimes, you need to perform an upgrade of a machine for which the normal unattended or interactive upgrade process is not possible.
softdep
mount option in
/etc/fstab
and rebooting before undertaking a manual upgrade.
Having at least 500MB free on /usr
would be recommended.
sd0
is your boot disk:
# installboot 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.spIf using the single processor kernel:
# 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
base73.tgz
last, 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:
# cp /sbin/reboot /sbin/oreboot # tar -C / -xzphf xshare73.tgz # tar -C / -xzphf xserv73.tgz # tar -C / -xzphf xfont73.tgz # tar -C / -xzphf xbase73.tgz # tar -C / -xzphf man73.tgz # tar -C / -xzphf game73.tgz # tar -C / -xzphf comp73.tgz # tar -C / -xzphf base73.tgz # Install last! # /sbin/orebootor, if you use ksh(1), you can do:
# cp /sbin/reboot /sbin/oreboot # for _f in [!b]*73.tgz base73.tgz; do tar -C / -xzphf "$_f" || break; done # /sbin/orebootNote that tar(1) can expand only one archive per invocation, so a simple glob won't work.
/dev
.
Run
MAKEDEV(8):
# cd /dev # ./MAKEDEV all
sd0
is your boot disk:
# installboot sd0
# sysmerge
# fw_update
dmesg -s
)
and correct any failures as necessary.
All the steps following configuration changes
below also apply to manual upgrades.
Finally, remove /sbin/oreboot
and update packages:
pkg_add -u
.
Reboot once more to make sure you use the newest firmware files
and run on your own kernel generated by KARL.
net.inet.tcp.keepidle
and
net.inet.tcp.keepintvl
net.inet.tcp.keepidle
and net.inet.tcp.keepintvl
are now specified in seconds.
They were previously specified in units of a clock ticking
net.inet.tcp.slowhz
times per second (typically, half-seconds).
If you have changed them, you may need to adapt them.
Use the new -w
option to enable write access (old default).
/usr/local/share/gitea/public/
to
/var/www/gitea/public/
and
/usr/local/share/gitea/public
is now a symlink to
/var/www/gitea/public/
. This allows serving static files
by local http server for better performance.
Due to /usr/local/share/gitea/public
changing from
a directory to a symlink, upgrading the gitea package using
pkg_add -u
will fail.
To upgrade, delete gitea package, then add the updated version:
# pkg_delete gitea && pkg_add gitea
Users should install the gotwebd package:
# pkg_add gotwebd
Setting up gotwebd is similar to setting up gotweb. Instructions are provided in manual pages installed by the gotwebd package:
Before removing the gotweb package, gotwebd can be configured in httpd.conf(5) to serve the same set of Git repositories under a different URL location, for testing purposes.
Once gotwebd works as expected, httpd(8) can be reconfigured to expose the former gotweb URL location using gotwebd, and the gotweb package can be removed:
# pkg_delete gotweb
pg_upgrade
as described in the postgresql-server pkg-readme or do a dump/restore.
Users who intend to run a Puppet server should install the puppetserver package:
# pkg_add puppetserver
The new Puppetserver requires some initial bootstrapping, which is described
in /usr/local/share/doc/pkg-readmes/puppetserver
.