QNX Partitioning

Recenty, I decided to try out QNX, just for fun. So I went through all of the hassle of registration and reading long EULA’s to get the 6.3.0 momentics ISO, only to find that the partitioner is incredibly restrictive and stupid.

I already have several operating systems installed, and more primary partitions than MBR entries, so I have to be able to specify exactly the location and dimentions of my partitions, to avoid overwriting partitions that might not be in the MBR.

I notice that there is the ISO for version 6.1 available here: what is it’s partitioner like? Would it allow me to use an existing partition, or specify the dimensions of the QNX partition?

All the QNX installers will only look at the four primary partition slots. The simplest approach is to pre-organise some empty space outside the extended partition and leave an empty primary partition slot.

The installer will find this and all you have to tell it is to use 100% of the space.

QNX 6.1 is no better.

If you are brave enough, you can use the “fdisk” in Linux to create a type 4f (decimal 79) partition with the exact location/dimention of your choice.

You can then boot the QNX CD, in a LiveCD mode, and

  1. “format” the new QNX partition. eg: dinit -R -h /dev/hd0t79
  2. mount the new QNX partition and copy the boot files from QNX CD over.
    eg: cp /fs/cd0/boot/fs/qnxbasedma.ifs /newmnt/.boot
    cp /fs/cd0/boot/fs/qnxbase.ifs /newmnt/.altboot
  3. unpack the /fs/cd0/boot/fs/qnxbase.qfs onto the /newmnt
  4. now boot the QNX from the new QNX partition.
  5. add the license key (activation -l) and finish up the installation by running /fs/cd0/install

Come back if you stuck anywhere.

Thanks for the answers.

I think I’ll try using a dummy partition occupying the space where I do not qnzt QNX to install, as evanh suggested. I only hope that QNX looks for the first apparently unpartitioned section, rather than the largest.

If that is not the case then there is one of two ways to ensure you do get what you want. 1: Take up all the excess with another differing primary partition or, 2: Put it all in the extended partition.

How can i unpack the qnxbase.qfs archive (3.)? which progamm/command unpacks it?

first you copy the qnxbase.qfs to your hard disk:
cp /fs/cd0/boot/fs/qnxbase.qfs /newmnt

then, you can mount this file as a directory:
mount /newmnt/qnxbase.qfs /qnxbase

Now, you will see all the content of qnxbase.qfs in the directory /qnxbase, you can then just copy everything from /qnxbase to your hard disk /newmnt, I usually use the following command:

cd /qnxbase
find * -print | cpio -pdm /newmnt

Thx for the fast answer. I’ll test it now :laughing:

Still here, it worked fine. But rebooting the system produces a “Missing operating system” message.
I tried “fdisk /dev/hd0 loader”
and “dinit -b /dev/hd0t79”

What can I do to boot successfully?

answered here.

This is great stuff. I am trying to make a runtime installation CD to install qnxbase.qfs on to an x86 target. It seems that QSSL expects all installations to be embedded images and have not created a runtime installation CD like 4.25 had. This is a big problem for us b/c traditionally the customer would install from runtime CD, then load our apps.

My question is:
What needs to be done after qnxbase.qfs is copied onto the target? I tried to use the qnxbasedma build file to create a boot image but it is missing something. I need to do some post steps that the installer would normally do, I believe these include:

Build helpviewer db,
configure graphics.

Is there Anything else that needs to be done and how do I do these two things (what needs to be executed to build helpviewer and configure graphics).

Thanks,
Paul

Dan Dodge announced there would be a runtime CD available at some point in time (don’t know when).

Our sales rep is looking into it but, he could only say for sure that it was on the road map :unamused:

Those additional steps are “automatic”. It will happen when you boot your QNX partition for the first time, step 4 as mentioned in my above post.

Yep! Thanks, I though the installer did some of that work, but diskboot takes care of it.

step 5 in my post is only necessary if you are installing on a development machine. When you run /fs/cd0/install , you will be presented a list of dev packages (gcc, IDE, etc) which you can choose as needed. For your runtime environment, you probably need none of them. Not sure about license for a runtime environment, you may still need to add the license key by running (activation -l)

It’s an OK runtime install using this method. Activation would be necessary only if you do step 5 as you said.

The only thing that prevents this from being a perfect runtime install is the licensing message you get upon each boot. It displays

and sleeps for 5 seconds. I am looking into getting rid of this message so customers aren’t like WTF???

Paul

well, you can run “activation -l” to add your license key and that will get rid of the annoying licensing displays. of course, you probably don’t want to share your license with your customers :slight_smile: