Table of Contents

Running on VMware

This page describes the process of installing MINIX 3 on VMWare.

Preliminaries

Please install VMWare. VMWare binaries can be downloaded from their webpage.

Virtual Machine Setup

Before you install MINIX 3, you will need to create a new virtual machine configuration. The VM configuration specifies the parameters of your Virtual machine, e.g., how much memory you want the VM to use, how big you want the virtual hard disk to be, etc.

Create a Virtual Machine -- VMware Server

In the main menu of VMware, select New Virtual Machine.

  1. Press Next in the Welcoming Screen.
  2. At the Virtual machine configuration menu, we select Typical.
  3. At the Select a Guest Operating System, select Other and Version Other.
  4. For Virtual Machine Name, write Minix3 (anything would work).
  5. At the Network Type screen, select Use bridged networking.
  6. For Disk Capacity, enter something around 2GBs, although even smaller values would work. That is the size of the virtual partition where Minix will be installed. Tick the Allocate all disk space now.
  7. Pressing Finish will create the Disk Image and the Virtual Machine that we will run.

Create a Virtual Machine -- VMware Workstation and VMware Player (version > 3)

In the main menu of VMware, select New Virtual Machine.

  1. At the Wizard, select Typical; and then, press Next.
  2. For the Guest Operating System Installation, select I will install the operating system later; and then, press Next.
  3. At the Select a Guest Operating System, select Other and Version Other.
  4. For Virtual Machine Name, enter Minix3 or some other meaningful name.
  5. At the Specify Disk Capacity, enter 2GBs, which is enough for all packages and sources. You can make it larger if you need to add more source files.
  6. At the Ready to Create Virtual Machine, ensure that Power on this virtual machine after creation is not checked; and then, press Finish.

You will need to edit the memory settings according to your needs. In the Devices section, select the Memory, and adjust the memory accordingly. Note that, in order to run the X Window System on Minix, you need at least 384MB.

Create a Virtual Machine -- VMware Player (version < 3)

If you are using the free VMware Player, you do not have the ability to create new virtual machines. The simplest way around that is to use EasyVMX to create your new (empty) virtual machines. (Note: easyvmx seems to be a dead project as of 12/2016)

  1. Choose the Super Simple virtual machine creator at http://www.easyvmx.com/.
  2. Name the machine whatever you want.
  3. Operating System: Other OS (Note: choose the one that is NOT 64-bit).
  4. Choose appropriate memory and storage sizes (e.g., 512 MB Memory and 2GB storage).
  5. Don't worry about the LiveCD ISO, leave that blank (it will be dealt with, later).
  6. Press Create Virtual Machine.
  7. Download the compressed file, and unpack it. It should contain a directory with a bunch of VMware files.
  8. Start VMware Player, choose Open an existing virtual machine, and select the .vmx file in the directory you just unpacked.
  9. Once the virtual machine starts, go to the Devices Menu; and, in the CD/DVD item, choose Connect to Disk Image File (iso). Select the Minix3 ISO that you downloaded from the Minix 3 web-site.
  10. If necessary, reset the machine with Ctrl+R; and, it will boot from the ISO.

Installation

Assuming you have downloaded and decompressed a MINIX 3 ISO image from the download page, you can mount the ISO file:

  1. Select Minix3 in the Inventory List on the left.
  2. In the Devices section, double-click on CD-ROM.
  3. Select Use ISO Image.
  4. Browse, and select the .iso Minix image that you downloaded earlier.

Then you can follow the normal installation instructions.

When the installation is over, type

shutdown

When you get the d0p0s0> prompt, enter off to shutdown the Virtual Machine.

Booting MINIX 3

Now, you have installed MINIX 3 on the virtual machine. First thing that needs to be sorted is that, next time you boot, you want to boot from the operating system, and not from the CD image.

  1. In the Devices section, double-click on CD-ROM.
  2. Select Use Physical Drive.

Great, now you can boot into the newly installed operating system.

  1. Select Minix3 on the Inventory List on the left.
  2. In the Commands menu, Press Start this Virtual Machine.

Post-install Configuration

You should read Post Installation for some configuration tips.

X.org

Like in other visualization tools, Minix can't get the screen resolution right under VMware. To get X11 running in the desired resolution, you start by generating an xorg.conf file using the command

Xorg -configure

This creates a file xorg.conf.new in your home directory. This needs to be completed manually, so edit it and fix the Monitor section so that it reads:

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "vmware"
	ModelName    "VMWare Inc"
	HorizSync    1.0 - 10000.0
	VertRefresh  1.0 - 10000.0
	ModeLine     "800x600"  100.0    800 900 1000 1100     600 700 800 900
	ModeLine     "1024x768" 100.0    1024 1100 1200 1300   768 800 900 1000
	ModeLine     "1366x768" 100.0    1360 1400 1500 1600   768 800 900 1000
EndSection

You may need to add another ModeLine for the resolution of your actual screen (if you want to run in full screen mode). This isn't rocket science under VMware, since most of the parameters really don't matter much. Of the ModeLine for “1024×768”, all that really matters are the 1024 and the 768. The 100.0 is the refresh rate in Hz, which is pretty much ignored under VMware (the host controls that). All the other timing values (which are important when using a physical machine with a physical monitor) are just rounded up to the next 100. So a ModeLine to display on your HDTV would read

ModeLine "1920x1080" 100.0    1920 2000 2100 2200    1080 1100 1200 1300

Keep in mind that in the current version of the X-server, the Xresolution must be a multiple of 8 pixels. That is why the ModeLine for “1366×768” uses 1360 as display width, wasting 6 physically present columns of the real screen (of my notebook).

Next you have to fix the Screen section of the file. Edit it so that is looks like this:

Section "Screen"
	Identifier	"Screen0"
	Device		"Card0"
	Monitor		"Monitor0"
	SubSection "Display"
		Viewport   0 0
		Depth     24
		Modes	"1366x768"
	EndSubSection
EndSection

Where Modes actually contains the label of the ModeLine with the resolution you want.

Save the file and copy it to /usr/pkg/X11R6/lib/X11/xorg.conf.

Shared Folders

VMWare shared folders are supported in much the same way as VirtualBox ones. After defining a shared folder, simply mount it with:

mount -t hgfs -o share=NAME none /mnt

Then you can access it under: cd /mnt/NAME

Workarounds

Lance workaround

In Minix 3.1.5, after working correctly for a period of time, the lance driver may stop working silently, causing all network traffic to be dropped for some period of time. Workaround: when this happens, run “service refresh lance” as root to restart the lance driver. This issue has been fixed in the Minix trunk available from Subversion.

In Minix 3.1.3, the Lance driver set-up is broken, resulting in no network support for Minix3 in VMware.

You can use this set of instructions to get the Lance driver to work.

VMWare Hardware version 6.x workaround

For Minix versions below 3.1.4, you may see the following error when running newer versions of VMWare: *** vcpu-0:ASSERT vmcore/private/iospace_shared.h:558 bugNr=64440.

You will need to edit the .vmx file corresponding to your virtual machine. It can likely be found in ~/Documents/Virtual Machines/<VM name> or ~/vmware/<VM name>.

You will need to remove the line:

pciBridge0.present = "TRUE"

and any similar lines for pciBridge, pciBridge2, etc. from the .vmx file.

Unable to partition hard disk

VMWare Server, by default, installs SCSI hard disks.

In Minix3.1.3a, with this default configuration, the disk partitioning step would not run automatically. In 'expert mode', I couldn't partition my disk.

I removed the SCSI hard disk and installed an IDE disk instead.