Mar 201999

Installing FreeBSD to replace Windows 95

This topic describes how I installed FreeBSD 3.1 onto a Windows 95 machine and wiped out the existing hard drive.  The install was done via FTP.

Careful readers will recall that it wasn’t that long ago that I was Installing FreeBSD on a Windows 95 machine.  Well, this is the same machine.  There’s nothing wrong with it.  The machine came with Windows 95 and I’d never created a dual boot machine with FreeBSD before.  And it seemed like a good candidate for an article.  Hence this new article.

Mind you, it’s almost the same as the original.

The hardware

This machine is a 486 DX 33MHz with 8 Meg of RAM, a CD-ROM, and an Ethernet card.   It has a 400M disk with about 250M free.

Know your interrupt

One thing you should do, and I didn’t, is find out the hardware settings for your network card.  Do this from Windows.  Go into the Control Panel and click on Network.  Find your network adaptor and see what the IRQ and Address are.   You’ll need those later.

The documentation

I started with the Installing FreeBSD section of The FreeBSD Handbook.  I suggest you go there now and read that before proceeding blindly with my instructions.

Before proceeding, I strongly urge you to first read Installing and Using FreeBSD With Other Operating Systems.

The floppies

This is often a confusing exercise.  And I’ve had to make them more than once.   So here’s how I did it.

Clear that disk

I wanted to start with an empty hard disk.  So I created a bootable DOS floppy and put FDISK and TIPS on it.  Then I booted with that floppy.  I used FDISK to delete all partitions and create a new single partition.

This partitiation was about 220M.

The actual install

I direct you to the next part of the Handbook: Installing FreeBSD.   Although this has the same title as a section mentioned above, it actually deals with the process of booting from the floppies.  Which is what I’m about to do.   I’ve placed the kern.flp floppy in the drive and I’ve restarted the machine.

Well, well, well!  What do you know!  I’m seeing the BTX bootstrap loader as I type.  OK.  Now it’s asked me for the mfsroot.flp floppy.   Things are looking good!

Kernel Configuration

OK.  Now I have the Kernel Configuration Screen on my screen.  I’m going to choose Start kernel configuration in full screen visual mode.  In this screen you will be asked to remove any conflicts which exist within the system.   Basically, the system is designed to be generic and work with most systems.   What you need to do is remove the things which you don’t have.  I’m sorry, but I can’t be more specific than that.  For me, I have no SCSI devices, so I remove all of them.  I also don’t have tape drives etc.  Whatever you do, don’t remove the system console or you won’t have a screen.

If you want that the information you modifed above to be saved and used permanently, see Saving and using the kernel change information.   Otherwise, you’ll have to reenter that visual configuration screen each time you boot.  Your other option is to make a custom kernel, which I recommend you do in any case.

Novice Install

After you save your changes and exit this screen, you will be presented with /stand/sysinstall Main Menu.  I selected Novice Install.

FDISK Partition Editor

On this screen, I choose to use all of the disk.  And I did not use the ‘dangerously dedicated’ option.

Boot Manager

I choose Standard (no Boot Manager).

FreeBSD Disklabel Editor

I pressed A for Auto. Then Q for save etc.

Choose Distributions

I choose the Kern-Developer distribution.

Choose Installation Media

I selected FTP.  And I selected ed0, my NIC.  Then I filled in the stuff for the configuration of ed0.

NOTE: the first time I tried this, ed0 was not listed.  I pressed ALT-F2 and it wasn’t listed there either.  I then remembered that ed0 was non-standard for this setup.  So I rebooted and set ed0 to be IRQ 5 and IO 300

NOTE: after I fixed ed0, I found I couldn’t get what I wanted from any FTP server but the main server (

NOTE: I actually used FTP Passive because I’m behind a firewall.

Install froze

Hmmm, the install froze chunk 8.  I pressed CTRL-ALT-DELETE a couple of times and was able to restart the install.  It seems to be going well now.  It’s extracting bin in / directory.  Time for some food.

OK.  That worked!

Post install configuration

The install has finished.  But then it asks you for configuration things.   Such as Ethernet.  Here’s what I did/
  • I said yes to Gateway and FTP.
  • I chose the defaults for FTP details.
  • I set the Timezone.
  • I added two users: myself and the system owner.
  • I set the root password.
  • I didn’t register the system because I’d done it when Installing FreeBSD on a Windows 95 machine.
  • Similarly, I didn’t join the announce mailing list because I was already on it.

The first reboot

OK.  The reboot failed when it was probing ed0.  That’s my fault.   And it’s also the fault of 3.1.  If you check the errata sheet for 3.1, you’ll see that the information is being saved, but to the wrong location.  I’ll fix that now.

I’ve rebooted.  During the boot process, you will have an opportunity to press a key to stop the boot.  You will then be at what is called the boot prompt.   I entered -c at the boot prompt.  Then I chose visual.   This gets you back to the same point as we were much earlier in the process when using the floppies.  I again removed the conflicts and continued with the boot.   I got a root prompt.  All is well.

If you want that the information you modifed above to be saved and used permanently, see Saving and using the kernel change information.   Otherwise, you’ll have to reenter that visual configuration screen each time you boot.  Your other option is to make a custom kernel, which I recommend you do in any case.

The instructions for modifying the system so that the kernel change information is read in and used are here.

How long did all this take?

The above took about 3 hours all up.  That includes my writing time.

What’s next?

This system is 3.1-RELEASE.  I actually wanted -STABLE.  So I’ll upgrade it.

Did this help?

This was the first time I’ve installed FreeBSD via FTP.  If this doesn’t work for you, I’d like to know about it.  All comments will be appreciated.

  One Response to “Installing FreeBSD to replace Windows 95”

  1. the two articles on installing FreeBSD (replace windows, and using PLIP) were great.

    I wanted to do an installation via FTP over PLIP using the FreeBSD CDROM that I burned. I stumbled on a couple of items. The first was not being able to get PLIP to connect to my other FreeBSD box. Your article pointed me to the thing that I was missing – You need to enter the ip address of the server that has the FTP site/installation media mounted in the options line for the PLIP setup.

    The other trouble I had was getting the install to run from the FTP server. I ended up setting my other FreeBSD machine up with an anonmyous FTP server, and changing the options so the username was anonmyous. in the URL for the FTP media type, I put as the address (the address I setup the lp0 interface up as on the server), but I was getting errors indicating that it could not find the 4.4-RELEASE…

    It took me a minute to figure out that I needed to change the Release option to "any" Once I did that, all went very well!

    Thanks, and I hope that this helps someone else.