On Thu, 7 Jun 2007, Shag Bag wrote:

> I've installed OpenBSD4.1 from the 3 CD set which I purchased shortly after
> it was released and have been running it on and off ever since.  However,
> this morning I tried to boot it and it came up with the above error (full
> error listing below).
> 
> I re-installed the whole OS yesterday (everything except bsd.mp and
> game41.tgz) and it was working fine.  The only thing I did after re-install
> was add a few packages and ports and compile the LookXP source packages from
> http://lxp.sourceforge.net.  I have not knowingly touched the boot.conf file
> at all so I'm at a loss as to how the above error is showing.
> 
> I have read the biosboot(8) man page but it didn't help.  I am new to
> OpenBSD having come from a brief linux background and would appreciate any
> help.
> 
> I could always simply re-install OpenBSD4.1 again but this would be a last
> resort as:
> i)   I'd like to know what the cause of the problem is and how to fix it -
> in case it happens again;
> ii)  I wouldn't learn anything if I simply reinstalled everytime; and
> iii) I've spent a lot of time configuring icewm to get it like I want and am
> loathed to go through this process again.
> 
> The full error list I'm getting is:
> 
> Loading...
> probing: pc0 apm mem[632K 2046M a20=on]
> disk: fd0 hd0+*
> >> OpenBSD/i386 BOOT 2.13
> open(hd0a:/etc/boot.conf): Invalid argument
> boot>

Well, evidently there's something wrong with /etc/boot.conf, right?

First, if you haven't done it already, print out the man page for
ed(1), even from a linux system.  On paper.

So boot the installation CD again.  Instead of "update" or "install",
select "shell"

At the prompt (#), mount your root partition.  Do I know what it is?  No.
I'll guess that it is either /dev/sd0a or /dev/wd0a

Anyway, mount it:

# mount /dev/sd0a /mnt

Now you can look at (and edit, using "ed(1)") the file in question.

(Maybe you get errors?  Maybe you need to run fsck on that partition
before mounting it?)

# cat /mnt/etc/boot.conf

Tell us what you see.  You can edit it.  The routine PeeCee installation
doesn't even need this file to exist.

To edit: # ed /mnt/etc/boot.conf

What no manpage?  Didn't print it out?  Don't know how to use ed(1)?
Expected ed to pop up "help windows?"  Thought I was lying?
Here's your second chance:

# mount /dev/sd0d /mnt/usr   Assuming sd0d is where your /usr is.
Forgot where that is?  # cat /mnt/etc/fstab   read what it says.
Maybe your /usr is on the same partition as /, (linux having
poisoned your mind in this regard), in which case it's already
mounted.  (partition = what disklabel makes. Not what fdisk
manipulates).

The man page is right there /mnt/usr/share/man/cat1/ed.0 Try to
"more" it.  I don't recall if "more" is available on the bsd.cd
ramdisk, if not you're going to have to read quickly.  Try running
/mnt/usr/bin/more

Would rather use vi?  Well, maybe it's there under /mnt/usr/bin/vi
Maybe it will even work.  But this is diverging from topic.

Summary:  you can mount and manipulate your harddrive(s) from the
"installation" CD using sh.  It is not scary, just touchy.

The simple manipulation might be just:

# mv /mnt/etc/boot.conf /mnt/etc/boot.conf.bad

and try rebooting from the harddisk.

I have an uneasy feeling that something else may be wrong.

If you found this post highly useful and full of new info and
startling concepts, there's a openbsd-newbies list at sfobug.org.  
Visit http://sfobug.org for further info.

Dave

Reply via email to