Norman Gray <nor...@astro.gla.ac.uk> wrote:

> Greetings.
> 
> I'm trying to install the released OpenBSD 5.4 onto a old-ish netbook
> without an optical drive.  I thought I could do this via
> install54.iso; I can see where I need to get to, and can almost get
> there, but I can't find the last step.
> 
> I suspect this needs only a 1- or 2-line answer.
> 
> Target machine (not ideal, admittedly):
> 
>   * Acer Aspire One ZG8 ('no, don't throw it out, I'll try OpenBSD on it!') \
> [1]
>   * ...so i386
>   * Internal disk
>   * No optical drive, but two USB ports and an SD slot
>   * Previously had Windows on it *shudder*
>   * No dmesg, I'm afraid, since part of my problem is an inability to
>     mount any storage.
> 
> I can boot the machine with the floppy.fs image (dd'ed to a flash
> drive), and go through the configuration, accepting defaults, and
> whole-disk partitioning the internal disk, to the point where I select
> the full installation media.  This I can't do.
> 
> Problem 0 is that the boot fails to detect networking hardware.  I
> understand that the wireless interface doesn't work on this machine
> with OpenBSD, but that the wired one should work [2].  However the
> wired interface _isn't_ detected, and the installation script goes
> straight from 'System hostname?' to 'DNS domain name?' even though
> it's plugged in to an ethernet network which is offering DHCP
> services.  I can't see anything in the dmesg that's relevant (no 'fxp'
> or 'vlan').  I'm reasonably confident the network is behaving as it
> should, but it's _possible_, though unlikely, that the wired interface
> is simply broken (the machine's previous owner only ever used it
> wireless).  But there's not much to go on, and I'm uncertain how to
> debug this further.
> 
> But it's OK!: I can install it from install54.iso, also dd'ed to a
> flash drive. (the machine's intended for offline use, so 'never
> connected to the internet' would be a somewhat desirable property).
> 
> And this is where I'm stuck.
> 
> The install54.iso isn't bootable in this context, but all I need to do
> is to boot the machine using floppy.fs, then mount the install54 flash
> drive, and give that as the 'disks' target.
> 
> But (plan A) if I select 'disks' as the location of the sets, the
> only device that comes up is the internal hard disk, and this is true
> whether I have the install54 flash drive plugged in to the second USB
> port, alongside the floppy.fs drive on a USB expander, or burned to an
> SD card.  Again, nothing obviously relevant in dmesg -- I can see the
> wd0 device being detected, but no obvious 'USB failure'.  The USB port/bus
> works, since that's where the bootable floppy.fs is sitting.
> 
> OK, Plan B.  The second-stage boot is detecting three devices (namely
> internal hard disk, plus the floppy.fs drive and the install54 drive):
> 'hd0', 'hd1', 'hd2'.  So I try booting directly from there:
> 
>   boot> b hd0:/5.4/i386/bsd
> 
> (and so on through hd{0,1,2}{,a,c}:, with and without the leading
> slash, ..., -- I'm getting a bit desperate here), but I get 'no such
> file or directory' or 'invalid argument'.  Looking at 'm diskinfo'
> tells me that there are three devices there (which is what I expect),
> but not much more.
> 
> I'm vague about the details, but I have a reasonably secure schematic
> understanding of the boot process, which doesn't conflict with what I
> read in [3].  I'd be interested to know what I'm missing or
> misunderstanding.
> 
> Plan C: create a custom installer (eg [4, 5]).  That appears to depend
> on having a working OpenBSD system, to call /usr/mdec/installboot.
> But I don't -- the other OSs I have to hand are OS X and FreeBSD.
> 
> Plan d (not worth a capital letter): it looks like I could try copying
> /bsd from /5.4/i386/bsd to the top of that filesystem and... see what
> happens, but (a) I run into filesystem support limitations on OS X,
> and (b) even if I dealt with that, I'd still have to make the modified
> filesystem bootable.  bless(8) [6] is the broad analogue of
> installboot on OS X, but I suspect it's specific to both HFS+ and to
> Apple's BIOS, so this seems unlikely to work.  Even then, 'flailing
> around blindly' is never a good problem solving strategy.
> 
> Plan e: I could try booting the Mac with the floppy.fs, doing an
> OpenBSD install onto another flash drive, making _that_ bootable,
> and... no.  On my main work machine, that could go very wrong very
> quickly (!), and I'm not even going to go there unless I'm very
> confident I know what I'm doing.
> 
> So there I am.  Plans A and B seem tantalisingly close to a solution,
> but missing a final step.  Writing out the email hasn't produced an
> 'aha!'; a fair amount of googling suggests I'm not missing anything
> terribly obvious (somewhat surprisingly: this is a slightly odd
> configuration I'm attempting, but not insanely exotic); the
> misc@openbsd.org list doesn't appear to be searchable (right?).  So I
> seem to have exhausted the DIY possibilities.  Therefore...
> 
> Dear list: What is the one line I'm missing?
> 
> Thanks for any pointers.
> 
> Norman
> 
> 
> 
> [1] http://www.att.com/esupport/article.jsp?sid=KB102059&cv=820
> [2] http://www.darwinsys.com/openbsd/laptops.html
> [3] http://www.openbsd.org/faq/faq14.html#Boot386
> [4] http://undeadly.org/cgi?action=article&sid=20140225072408
> [5] http://blog.breeno.net/2014/02/creating-flexible-openbsd-usb-installer.h\
> tml
> [6] https://developer.apple.com/library/mac/documentation/Darwin/Reference/M\
> anpages/man8/bless.8.html
> 
> 
> -- 
> Norman Gray  :  http://nxg.me.uk
> SUPA School of Physics and Astronomy, University of Glasgow, UK

Assuming you are somewhat experienced with OpenBSD, setting up a
bootable USB with install sets isn't hard.

fdisk -i $disk
disklabel -E $disk
# setup partition a
newfs ${disk}a
# mount
# cp /usr/mdec/boot /mnt/boot
# installboot /mnt/boot /usr/mdec/biosboot $disk
# copy bsd.rd and distrib sets

And you'll be good to go.

But you need OpenBSD to run that, as you already know. If the MacBook
you're using is x86, you'll be able to run VirtualBox and do it from
there. The trick is to eject the USB drive from disk utility so you
can attach it as a USB device to VirtualBox.

Since you can boot floppy.fs, it _might_ be possible to run mount_cd9660
on a partition containing the ISO image.

I have also done your plan e before. If you're really worried you can
disconnect the hard drive before trying it.

- Martin

P.S. sorry about the incomplete message going out.

Reply via email to