Installing Windows 95 on VirtualBox on MacOS

Looking through a stack of CDs and DVDs on the shelf on my desk, amongst many other things I still have install CDs for Windows 95 and Windows 98. I wondered (as you do, well, maybe not everyone does) what it would be like to install 95 again from scratch so created a new VM in VirtualBox and off I went. If you’ve come across any of my posts before you might remember I’ve installed all sorts of OSes under VirtualBox before, because, well why not? OS/2 and AROS probably the most interesting.

The steps in this blog are very useful for a guide. Windows 95 install CDs were apparently not bootable, and I don’t remember having boot floppies. If I did I probably don’t have them anymore. I download a Windows 95 boot disk floppy .img from here, and attached it to the floppy drive in the VirtualBox config for this machine.

After booting to an a: prompt, attempted ‘format c:’ but got a ‘invalid drive specification’ error. Seems I needed to partition my blank attached virtual disk first, so from the a: prompt, ran fdisk:

entered ‘y’ for large disk support, and then selected option 1 for ‘Create a DOS partition’ and then ‘Create Primary DOS partition’. Next, formated it:

format c:

then change to R: (the attached CD Drive)

and then

setup

Next, Windows 95 setup was telling me that my newly created and formatted disk was reporting an incorrect size, so started a Scandisk:

After this completed it still gave the same error, so I skipped this step:

Unfortunately at this point the install fails, and says the issue must be fixed before it will continue.

Possibly my 20GB attached virtual disk is not supported (too large), so reading around, it looks like a 2GB install disk is a supported size, so I was about to delete the 20GB disk and started again, but quitting the Scandisk before it completes with an error puts you back in the installer, and off it goes:

Some of the info screens during the install are rather interesting, promoting Window 95’s ‘high performance’:

“High-quality multimedia performance will dazzle you” – who wrote this stuff?

Who remembers dial-up MSN?

And then it fails ‘insufficient memory’ when booting up which is odd because I set the VM up with 1GB:

From post here and others, this seems this might be to do with having too much RAM configured for the VM, and in particular 1GB or more.

I decreased it to 512MB, then got:

This error on booting Windows 95 under VirtualBox seems related to VT-x virtualization. I can’t find the option to turn off VT-x support on my VirtualBox install, and other posts seem like this is to do with host CPUs faster than 2.1GHz, and my Mac Pro has dual 2.8 Xeons. Maybe this is as far as I’m going to get with 95. Next up, trying 98 :-0

Installing kernel headers for Oracle Linux 6 on VirtualBox

The usual reason for Guest Additions failing to install on a Linux guest on Virtual Box is that the kernel headers are missing. How you install these or where they come from varies from distro to distro, although they’re usually available via the package manager on that distro.

I had an Oracle Linux 6 guest installed, Guest Additions (for video drivers, shared folder, clipboard sharing) was all working, and then at some point I started it up again and it was no longer working and wouldn’t re-install either. Seems like I’d picked up an update, and I needed to update the kernel headers too.

This post covers the steps needed. On OE6 before installing the Guest Additions, just run ‘yum install kernel-uek-devel’ and you should be good to go (assuming you’re booting with the ‘unbreakable kernel’ and not the RHEL compatible kernel)

Running AROS / Icaros Desktop on VirtualBox

I love to install and check out different operating systems. Installing on something like VirtualBox means you can install as a guest, play with it, and either continue to use it or delete the disk image, with no impact to your host OS. So here’s an unusual one to check out:

AROS is an open source implementation of the AmigaOS 3.1 apis, that runs on Intel and PowerPC cpus (Amigas were originally Motorola 68k based). It seems there’s a couple of different variations, the one I installed was Icaros Desktop, which comes with a live CD, which you can also install from.

One installed, it boots from a GRUB menu, and wow, does it boot quick, within a couple of seconds (running under VirtualBox on my i7 MacBook Pro). It boots so fast I might be tempted to install this as a bare metal install on an old PC and play around with it for a while. It also looks very pretty 🙂

Installing Arch Linux as a VirtualBox Guest

Arch Linux is probably the first Linux distro I’ve come across that does not have a graphical installer. It boots from the iso and drops you straight into a shell.

Ok. Once you’ve realized this then the install instructions make more sense.

To install in VirtualBox I created an 8GB disk. Once booted from the iso, at the shell I used fdisk to partition 2 partitions, one 6GB for / and one 2 GB for /home, following the steps from this post.

In summary, the steps were:

  • p – create primary
  • 1 – 1st partition
  • enter for start position default
  • +6G for end point 6GB from start
  • p next primary
  • 2 – 2nd partition
  • enter for default start
  • enter for end at end of available space

p shows the created partitions, which ended up looking like this:

w to write the partitions and exit.

Next format the two partitions:

mkfs.ext4 /dev/sda1

mkfs.ext4 /dev/sda2

Mount and start the install!

At this point, pick up from the remainder of the instructions in the install guide and beginners guide.

When attempting to install grub, I got these errors:

Per this post (and here), looks like my repo databases needed to be created/updated? I ran

pacman -Syu

and this looks like it fixed my pacman database issue, but now at this point it looked like I’d ran out of space on /, but going back through the install docs, I didn’t do the

arch-chroot /mnt /bin/bash

step so looks like I was installing to the / on my iso live boot? Anyway, did arch-chroot,
and now re-running the command to install grub now worked.
Next steps:

grub-install --recheck /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

Remaining steps:

  • Set root’s password: passwd
  • Exit chroot
  • Unount drives:
    umount -R /mnt
  • reboot

Remove the iso in VirtualBox, and restart – whoah, Arch is installed! Now time to install X and a window manager! Next steps depending on what you intend to use Arch for are covered in the general recommendations guide.

Create a user:

useradd -m -G wheel -s /bin/bash username

Use password username to set password.

Network config

Network setup guide is awesome!

Add name servers to /etc/resolv.conf (e.g. for Google nameservers)

nameserver 8.8.8.8
nameserver 8.8.4.4

Start and enable dhcp services to start at boot:

systemctl start systemd-networkd.service
systemctl enable systemd-networkd.service
systemctl start systemd-resolved.service
systemctl enable systemd-resolved.service

Check adapters: ip link – get name of VirtualBox adapter, will be something like enp0s3

Edit /etc/systemd/network/wired.conf, add:

[Match]
Name=enp0s3
[Network]
DHCP=ipv4

Start and enable dhcpcd.service:

systemctl start dhcpcd@enp0s3.service
systemctl enable dhcpcd@enp0s3.service

… where enp0s3 is your VirtualBox network interface.

At this point you should have network connectivity – check by pinging www.google.com