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 /autoinstall-openbsd-on-qemu | |
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.
Diffstat (limited to 'autoinstall-openbsd-on-qemu')
-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 |