diff options
author | Stefan Kreutz <mail@skreutz.com> | 2023-04-14 17:47:58 +0200 |
---|---|---|
committer | Stefan Kreutz <mail@skreutz.com> | 2023-04-14 17:47:58 +0200 |
commit | 17fe2a20689e054e93ad86e744375482877ab19f (patch) | |
tree | e4ce9f0cc38f57cc41a0b1f96aa09faf747ec6ad | |
parent | 17872d76e835449da7e2502e678aae1f1e5f5be8 (diff) | |
download | autoinstall-openbsd-on-qemu-17fe2a20689e054e93ad86e744375482877ab19f.tar |
Update to OpenBSD 7.3
This change breaks the script because OpenBSD 7.0 and later ignore the
TFTP server name. Instead, OpenBSD tries to fetch the installation
configuration from the next-server of the DHCP lease, in this case
10.0.2.2.
I failed to adapt the qemu guest forwarding rule accordingly. Thus, the
script is broken for now, unless you are willing to serve the mirror on
the privileged port 80.
-rwxr-xr-x | autoinstall-openbsd-on-qemu | 56 |
1 files changed, 28 insertions, 28 deletions
diff --git a/autoinstall-openbsd-on-qemu b/autoinstall-openbsd-on-qemu index 73e1824..ea6604b 100755 --- a/autoinstall-openbsd-on-qemu +++ b/autoinstall-openbsd-on-qemu @@ -1,6 +1,6 @@ #! /bin/sh -# Auto-install OpenBSD/amd64 6.7 on QEMU. +# Auto-install OpenBSD/amd64 7.3 on QEMU. # # First published at https://www.skreutz.com/posts/autoinstall-openbsd-on-qemu/ # on 22 July 2020. @@ -54,45 +54,45 @@ do done # Fetch base public key from trusted HTTPS mirror. -mkdir -p mirror/pub/OpenBSD/6.7 -if [ ! -e mirror/pub/OpenBSD/6.7/openbsd-67-base.pub ] +mkdir -p mirror/pub/OpenBSD/7.3 +if [ ! -e mirror/pub/OpenBSD/7.3/openbsd-73-base.pub ] then curl \ --silent \ - --output mirror/pub/OpenBSD/6.7/openbsd-67-base.pub \ - "${HTTPS_MIRROR}6.7/openbsd-67-base.pub" + --output mirror/pub/OpenBSD/7.3/openbsd-73-base.pub \ + "${HTTPS_MIRROR}7.3/openbsd-73-base.pub" printf "Fetched base public key from %s\\n" "${HTTPS_MIRROR}" fi # Fetch kernel, PXE bootstrap program, and file sets from untrusted rsync # mirror. -if [ ! -d mirror/pub/OpenBSD/6.7/amd64 ] +if [ ! -d mirror/pub/OpenBSD/7.3/amd64 ] then mkdir -p tmp printf "Fetching installation files ...\\n" rsync --archive --files-from=- --quiet \ - "${RSYNC_MIRROR}6.7/amd64/" \ + "${RSYNC_MIRROR}7.3/amd64/" \ tmp/ \ << EOF SHA256.sig -base67.tgz +base73.tgz bsd bsd.mp bsd.rd -comp67.tgz -game67.tgz -man67.tgz +comp73.tgz +game73.tgz +man73.tgz pxeboot -xbase67.tgz -xfont67.tgz -xserv67.tgz -xshare67.tgz +xbase73.tgz +xfont73.tgz +xserv73.tgz +xshare73.tgz EOF ( cd tmp && signify -C -q \ - -p ../mirror/pub/OpenBSD/6.7/openbsd-67-base.pub \ + -p ../mirror/pub/OpenBSD/7.3/openbsd-73-base.pub \ -x SHA256.sig \ - -- bsd bsd.* pxeboot *67.tgz ) - mv tmp mirror/pub/OpenBSD/6.7/amd64 + -- bsd bsd.* pxeboot *73.tgz ) + mv tmp mirror/pub/OpenBSD/7.3/amd64 printf "Fetched kernel, PXE bootstrap program, and file sets from %s\\n" "${RSYNC_MIRROR}" fi @@ -113,9 +113,9 @@ Location of sets = http HTTP Server = 10.0.2.1 Unable to connect using https. Use http instead = yes URL to autopartitioning template for disklabel = http://10.0.2.1/disklabel -Set name(s) = site67.tgz -Checksum test for site67.tgz failed. Continue anyway = yes -Unverified sets: site67.tgz. Continue without verification = yes +Set name(s) = site73.tgz +Checksum test for site73.tgz failed. Continue anyway = yes +Unverified sets: site73.tgz. Continue without verification = yes EOF printf "Created example response file for autoinstall(8) at ./mirror/install.conf\\n" fi @@ -163,19 +163,19 @@ fi # Package site-specific file set if not exists or changed. site_dir_changed="$( find site -exec stat -c %Y {} \; | sort -r | head -n 1 )" -if [ ! -e mirror/pub/OpenBSD/6.7/amd64/site67.tgz ] || [ "$( stat -c %Y mirror/pub/OpenBSD/6.7/amd64/site67.tgz )" -lt "${site_dir_changed}" ] +if [ ! -e mirror/pub/OpenBSD/7.3/amd64/site73.tgz ] || [ "$( stat -c %Y mirror/pub/OpenBSD/7.3/amd64/site73.tgz )" -lt "${site_dir_changed}" ] then - rm -f mirror/pub/OpenBSD/6.7/amd64/site67.tgz - ( cd site && tar -czf ../mirror/pub/OpenBSD/6.7/amd64/site67.tgz . ) - ( cd mirror/pub/OpenBSD/6.7/amd64 && ls -l > index.txt ) + rm -f mirror/pub/OpenBSD/7.3/amd64/site73.tgz + ( cd site && tar -czf ../mirror/pub/OpenBSD/7.3/amd64/site73.tgz . ) + ( cd mirror/pub/OpenBSD/7.3/amd64 && ls -l > index.txt ) fi # Create TFTP directory if not exists. if [ ! -d tftp ] then mkdir tftp - ln -s ../mirror/pub/OpenBSD/6.7/amd64/pxeboot tftp/auto_install - ln -s ../mirror/pub/OpenBSD/6.7/amd64/bsd.rd tftp/bsd.rd + ln -s ../mirror/pub/OpenBSD/7.3/amd64/pxeboot tftp/auto_install + ln -s ../mirror/pub/OpenBSD/7.3/amd64/bsd.rd tftp/bsd.rd mkdir tftp/etc cat << EOF > tftp/etc/boot.conf stty com0 115200 @@ -189,7 +189,7 @@ fi if [ -e "${DISK_FILE}" ] then vm_created="$( stat -c %W "${DISK_FILE}" )" - for f in mirror/install.conf mirror/disklabel mirror/pub/OpenBSD/6.7/amd64/site67.tgz tftp/etc/boot.conf + for f in mirror/install.conf mirror/disklabel mirror/pub/OpenBSD/7.3/amd64/site73.tgz tftp/etc/boot.conf do if [ "${vm_created}" -lt "$( stat -c %Y "$f" )" ] then |