[FAQ Index] | [5.8 -> 5.9] [6.0 -> 6.1]
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.Boot from the install kernel, bsd.rd: use bootable install media, or place the 6.0 version of
bsd.rd
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.
Finish up by upgrading the packages: pkg_add -u
.
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
.
Formerly, hard links were used to provide the same man page under several
different names.
These hard links are no longer needed and may get in the way.
Issue rm -rf /usr/share/man
.
bsd.rd
)
that volume will no longer be recognized by older kernels.
wxallowed
mount option.
W^X
is now strictly enforced by default; a program can only violate
it if it is located on a filesystem mounted with the wxallowed
mount(8) option.
This allows the base system to be more secure as long as /usr/local
is a separate filesystem.
The base system has no W^X
-violating programs, but the ports tree
contains quite a few: chromium, mono, node, gnome, libreoffice, jdk, zeal,
etc.
If you want to run any of these ports on a regular basis, you need to add
wxallowed
to the mount options for /usr/local
in
fstab(5), e.g.:
Small disks may not have a separate partition for01020304050607.h /usr/local ffs rw,nodev,wxallowed 1 2
/usr/local
.
In that case, add wxallowed
to the smallest partition containing it:
/usr
or /
.
Starting a W^X
-violating program from a partition without the
wxallowed
mount option will produce a core dump and the
dmesg(8) will contain
an entry such as soffice.bin(15529): mprotect W^X violation
.
You can temporarily allow W^X
-violating ports by issuing
mount -uo wxallowed /usr/local
.
keepenv { [variable ...] }
syntax will be deprecated in 6.1.
Replace keepenv { [variable ...] }
with
setenv { [variable ...] }
if doas prints the warning
"keepenv with list is obsolete".
faulty
to failed
.
/var/spool/output
is now only writable by root.
sd
path in
printcap(5)
to a subdirectory where the daemon
group has write access.
It defaults to /var/spool/output/lpd
.
filter-dkim-signer
already
need to look for other alternatives in ports, e.g. mail/dkimproxy
.
/service
; to
keep on using /var/service
, make a symlink:
ln -s /var/service /
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 sd0
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
/usr/share/man
.
Formerly, hard links were used to provide the same man page under several
different names.
These hard links are no longer needed and may get in the way.
Issue
rm -rf /usr/share/man
base60.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
or, if you use ksh(1), you can docp /sbin/reboot /sbin/oreboot tar -C / -xzphf xshare60.tgz tar -C / -xzphf xserv60.tgz tar -C / -xzphf xfont60.tgz tar -C / -xzphf xbase60.tgz tar -C / -xzphf man60.tgz tar -C / -xzphf game60.tgz tar -C / -xzphf comp60.tgz tar -C / -xzphf base60.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]*60.tgz base60.tgz; do tar -C / -xzphf "$_f" || break; done /sbin/oreboot
/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.
Remove /sbin/oreboot
and update packages:
pkg_add -u
.
[FAQ Index] | [5.8 -> 5.9] [6.0 -> 6.1]