Hi misc!

I just successfully sysupgraded a net4801 with a 4GB CFdisk from 6.5 to 6.6.

The net4801 has no display hardware so I wanted to delete the unused
sets before rebooting, using "sysupgrade -n". I also don't need to
compile on the system (which thanks to "syspatch" should not be
necessary), so the "comp" set could also be deleted, as well as the games.

The problem in my situation was a "/home" of just 376M, and that
"sysupgrade -n" loads all sets into a "/home/_sysupgrade" directory
before stopping, and the downloaded sets (it loads ALL the ".tgz" sets
referenced in SHA256, besides other files) didn't fit in! That's why the
sysupgrade stopped with an error, and the later part of this utility --
which verifies sets, creates the "/auto_update.conf" file and installs
the "/bsd.upgrade" kernel --, didn't run. So the system was not ready to
reboot into the upgrade kernel.

So I modified a copy of the sysupgrade script of the 6.5 system to only
*download* the scripts I needed (no delete necessary).

Since others may need to upgrade in similar situations, I created a
patch against the sysupgrade script (of the 6.6 system, e.g. after the
upgrade, but it's almost identical to the 6.5 one) so that you may see
how this can be done: I echoed the original sets to the console,
redefined the sets I need, and re-echoed these so I could check if
everything looks good. Once I was satisfied, I removed the "return"
command to let the "sysupgrade -n" run to it's end. After checking that
the upgrade files seemed to be at their place, the reboot worked just as
planned. Once figured out it's really simple.

This old net4801 is slow, but it's nice because it has 7 NICs. KARL's
kernel relinking takes quite some time though (but it's not often
rebooted). One alix to go ...

Thanks to the OpenBSD team for all these tools, and to those who
reported their mishaps in similar situations.

Peer


*** /usr/sbin/sysupgrade Sat Oct 12 18:52:33 2019
--- sysupgrade Fri Oct 25 02:02:11 2019
***************
*** 1,6 ****
#!/bin/ksh
#
! # $OpenBSD: sysupgrade.sh,v 1.25 2019/09/28 17:30:07 ajacoutot Exp $
#
# Copyright (c) 1997-2015 Todd Miller, Theo de Raadt, Ken Westerback
# Copyright (c) 2015 Robert Peichaer <r...@openbsd.org>
--- 1,6 ----
#!/bin/ksh
#
! # $OpenBSD$
#
# Copyright (c) 1997-2015 Todd Miller, Theo de Raadt, Ken Westerback
# Copyright (c) 2015 Robert Peichaer <r...@openbsd.org>
***************
*** 158,163 ****
--- 158,172 ----
# INSTALL.*, bsd*, *.tgz
SETS=$(sed -n -e 's/^SHA256 (\(.*\)) .*/\1/' \
-e '/^INSTALL\./p;/^bsd/p;/\.tgz$/p' SHA256)
+ + echo "==========="
+ echo "$SETS"
+ echo "-----------"
+ SETS="INSTALL.i386\nbsd\nbsd.rd\nbase66.tgz\nman66.tgz"
+ echo "-----------"
+ echo "$SETS"
+ echo "==========="
+ return #Comment out this line once you are satisfied with the set
selection.
OLD_FILES=$(ls)
OLD_FILES=$(rmel SHA256 $OLD_FILES)

Reply via email to