Tuesday, November 08, 2022

sysupgrade fails after reboot with: The directory '/home/_sysupgrade/' does not exist.

Hi All,

I seem to have a sysupgrade problem ...

sysupgrade fails after reboot with an error:
The directory '/home/_sysupgrade/' does not exist.

Sometime ago I had a similar issue due to my having "/home" as a
sub-directory of a filesystem "/space". My mistake apparently. Never the
less, I had a simple and effective workaround of modifying the path
defined in /auto_upgrade.conf before rebooting.

Weirdly, that workaround no longer seems to work.

To try and avoid any trace of the previous "/home" mount issue, here is
what happens when I use the sysupgrade -b flag to set a completely
different "base-directory", located in a different filesystem ...

Can anyone see where I am going wrong?

mjoelnir:/etc 8.11 15:55:08 # sysupgrade -n -b /fast
Fetching from http://ftp.fau.de/pub/OpenBSD/snapshots/amd64/
SHA256.sig 100% |*****************************************************************************************| 2144 00:00
Signature Verified
INSTALL.amd64 100% |****************************************************************************************| 43554 00:00
base72.tgz 100% |*****************************************************************************************| 332 MB 00:33
bsd 100% |*****************************************************************************************| 22463 KB 00:06
bsd.mp 100% |*****************************************************************************************| 22578 KB 00:05
bsd.rd 100% |*****************************************************************************************| 4541 KB 00:02
comp72.tgz 100% |*****************************************************************************************| 74968 KB 00:11
game72.tgz 100% |*****************************************************************************************| 2745 KB 00:01
man72.tgz 100% |*****************************************************************************************| 7612 KB 00:03
xbase72.tgz 100% |*****************************************************************************************| 52850 KB 00:09
xfont72.tgz 100% |*****************************************************************************************| 22967 KB 00:06
xserv72.tgz 100% |*****************************************************************************************| 14815 KB 00:04
xshare72.tgz 100% |*****************************************************************************************| 4573 KB 00:02
Verifying sets.
Fetching updated firmware.
fw_update: added none; updated none; kept intel,inteldrm,vmm
Will upgrade on next reboot

### The new "base-directory" has been created:
mjoelnir:/etc 8.11 15:57:15 # ls -ld /fast/_sysupgrade
drwxr-xr-x 2 root wheel 512 Nov 8 15:57 /fast/_sysupgrade

### It contains the newly downloaded files:
mjoelnir:/etc 8.11 15:57:26 # ls -l /fast/_sysupgrade
total 1141408
-rw-r--r-- 1 root wheel 43554 Nov 8 00:18 INSTALL.amd64
-rw-r--r-- 1 root wheel 1992 Nov 8 15:55 SHA256
-rw-r--r-- 1 root wheel 348171346 Nov 8 00:13 base72.tgz
-rw-r--r-- 1 root wheel 23002725 Nov 8 00:12 bsd
-rw-r--r-- 1 root wheel 23120636 Nov 8 00:12 bsd.mp
-rw-r--r-- 1 root wheel 4650857 Nov 8 00:18 bsd.rd
-rw-r--r-- 1 root wheel 76767540 Nov 8 00:13 comp72.tgz
-rw-r--r-- 1 root wheel 2811462 Nov 8 00:13 game72.tgz
-rw-r--r-- 1 root wheel 7794925 Nov 8 00:13 man72.tgz
-rw-r--r-- 1 root wheel 54119339 Nov 8 00:34 xbase72.tgz
-rw-r--r-- 1 root wheel 23518994 Nov 8 00:34 xfont72.tgz
-rw-r--r-- 1 root wheel 15170647 Nov 8 00:34 xserv72.tgz
-rw-r--r-- 1 root wheel 4683158 Nov 8 00:34 xshare72.tgz

### The root directory now also has some new files:
mjoelnir:/etc 8.11 15:57:32 # ls -ltr /
total 153738
-rw-r--r-- 1 root wheel 468 Jun 2 2019 .profile
-rw-r--r-- 1 root wheel 578 Jun 2 2019 .cshrc
drwxr-xr-x 2 root wheel 512 Sep 29 2019 space
lrwxr-xr-x 1 root wheel 9 Jun 3 2020 opt -> /fast/opt
-rw-r--r-- 1 root wheel 90496 Jan 28 2021 boot
lrwxrwx--- 1 root wheel 11 Aug 19 07:54 sys -> usr/src/sys
drwxr-xr-x 2 root wheel 512 Aug 19 07:54 altroot
drwxr-xr-x 2 root wheel 1024 Aug 19 07:55 bin
drwxr-xr-x 2 root wheel 1536 Aug 19 07:55 sbin
drwxr-xr-x 31 root wheel 512 Aug 19 08:34 var
drwxr-xr-x 16 root wheel 512 Aug 19 08:34 usr
-rwx------ 1 root wheel 22982134 Aug 19 14:46 bsd.sp
-rw------- 1 root wheel 4638162 Aug 19 14:46 bsd.rd
drwxr-xr-x 4 root wheel 512 Nov 8 13:43 mnt
drwxr-xr-x 20 root wheel 512 Nov 8 13:48 home
-rwx------ 1 root wheel 23088585 Nov 8 15:02 bsd.booted
drwxr-xr-x 6 root wheel 19968 Nov 8 15:41 dev
-rwx------ 1 root wheel 23082305 Nov 8 15:41 bsd
drwxr-xr-x 6 root wheel 512 Nov 8 15:55 fast
-rw-r--r-- 1 root wheel 160 Nov 8 15:57 auto_upgrade.conf
drwxrwxrwt 9 root wheel 512 Nov 8 15:57 tmp
-rwx------ 1 root wheel 4650857 Nov 8 15:57 bsd.upgrade
drwxr-xr-x 60 root wheel 3072 Nov 8 15:57 etc
drwx------ 11 root wheel 1024 Nov 8 15:57 root

### In auto_upgrade.conf "Pathname to the sets" is set to the base-directory as above:
mjoelnir:/etc 8.11 15:57:37 # cat /auto_upgrade.conf
Location of sets = disk
Pathname to the sets = /fast/_sysupgrade/
Set name(s) = done
Directory does not contain SHA256.sig. Continue without verification = yes

I then reboot the system. It recognises that a upgrade should take place,
boots bsd.upgrade writes several messages to the console culminating in
"The directory '/home/_sysupgrade/' does not exist" and then reboots
a second time.

It even cleans up those downloaded files in "/fast/_sysupgrade".

Later I get this email:
Date: Tue, 8 Nov 2022 16:06:00 +0100 (CET)
...
Choose your keyboard layout ('?' or 'L' for list) [default] default
Available disks are: sd0 sd1.
Which disk is the root disk? ('?' for details) [sd0] sd0
Checking root filesystem (fsck -fp /dev/sd0a)... OK.
Mounting root filesystem (mount -o ro /dev/sd0a /mnt)... OK.
Force checking of clean non-root filesystems? [no] no
fsck -p 281ef747da03afe7.a... OK.
fsck -p 281ef747da03afe7.e... OK.
fsck -p 281ef747da03afe7.f... OK.
fsck -p 281ef747da03afe7.g... OK.
fsck -p 281ef747da03afe7.h... OK.
fsck -p 281ef747da03afe7.k... OK.
fsck -p 281ef747da03afe7.j... OK.
fsck -p 281ef747da03afe7.l... OK.
fsck -p 7a1775fef773535e.h... OK.
/dev/sd1a (281ef747da03afe7.a) on /mnt type ffs (rw, local)
/dev/sd1e (281ef747da03afe7.e) on /mnt/var type ffs (rw, local, nodev, nosuid)
/dev/sd1f (281ef747da03afe7.f) on /mnt/usr type ffs (rw, local, nodev)
/dev/sd1g (281ef747da03afe7.g) on /mnt/usr/X11R6 type ffs (rw, local, nodev)
/dev/sd1h (281ef747da03afe7.h) on /mnt/usr/local type ffs (rw, local, nodev, wxallowed)
/dev/sd1k (281ef747da03afe7.k) on /mnt/usr/obj type ffs (rw, local, nodev, nosuid)
/dev/sd1j (281ef747da03afe7.j) on /mnt/usr/src type ffs (rw, local, nodev, nosuid)
/dev/sd1l (281ef747da03afe7.l) on /mnt/fast type ffs (rw, local, nodev, nosuid)
/dev/sd0h (7a1775fef773535e.h) on /mnt/space type ffs (rw, local)

Let's upgrade the sets!
Location of sets? (disk http nfs or 'done') [http] disk
Is the disk partition already mounted? [yes] yes
Pathname to the sets? (or 'done') [7.2/amd64] /home/_sysupgrade/
The directory '/home/_sysupgrade/' does not exist.

Why is the sysupgrade continuing to try to use "/home/_sysupgrade/"?

Any ideas where I am going wrong?

Cheers,
Robb.

No comments:

Post a Comment