What to do if your system will no longer boot

If a previously working QNX Neutrino system suddenly stops working and will no longer boot, then one of the following may have occurred:

The following steps can help you identify the problem. Where possible, corrective actions are suggested.

  1. Try booting from CD or across the network.
    • If you have a network to boot over, try booting your machine over the network. Once the machine is booted, you'll need to log in as root.
    • If you don't have a network, boot from your installation CD. The filesystem will already be running in this case, and you'll be logged in as root.
  2. Start the hard disk driver. For example, to start a driver for an Adaptec series 4 SCSI adapter, type:
    devb-aha4 options &
    

    If you're using another type of driver, enter its name instead. For example:

    devb-eide options qnx4 options &
      

    This should create a block special file called /dev/hd0 that represents the entire hard disk.

  3. Run fdisk.

    Running the fdisk utility will immediately give you useful information about the state of your hard disk.

    The fdisk utility might report one of several types of problems:

    Problem: Probable cause: Remedy:
    Error reading block 1 Either the disk controller or the hard disk itself has failed. If the disk is good, replacing the controller card might let you continue using the disk. Otherwise, you'll have to replace the hard drive, reinstall QNX Neutrino, and restore your files from backup.
    Wrong disk parameters Your hardware has probably "lost" its information about this hard drive—likely because the battery for the CMOS memory is running low. Rerunning the hardware setup procedure (or the programmable option select procedure on a PS/2) will normally clear this up. Of course, replacing the battery will make this a more permanent fix.
    Bad partition information If the disk size is reported correctly by fdisk, but the partition information is wrong, then the data in block 1 of the physical disk has somehow been damaged. Use fdisk to recreate the correct partition information. It's a good idea to write down or print out a hard copy of the correct partition information in case you ever have to do this step.
  4. Mount the partition and the filesystem.

    At this point, you have verified that the hardware is working (at least for block 1) and that a valid partition is defined for the QNX Neutrino RTOS. You now need to create a block special file for the QNX 4 partition itself and to mount the block special file as a QNX 4 filesystem:

    mount -e /dev/hd0
    mount /dev/hd0t79 /hd 
      

    This should create a volume called /dev/hd0t79. Depending on the state of the QNX 4 partition, the mount may or may not fail. If the partition information is correct, there shouldn't be any problem. Since the root (/) already exists (on a CD or on a remote disk on the network), we've mounted the local hard disk partition as a filesystem with the name /hd.

    Your goal now would be to run the chkfsys utility on the disk to examine—and possibly fix—the filesystem.

Note: If you booted from CD and you don't suspect there's any damage to the filesystem on your hard disk (e.g., the system was unable to boot because of a simple error introduced in the boot file or system initialization file), you can see up a symbolic link to your hard disk partition in the process manager's in-memory prefix tree:
ln -sP /hd /

If you run this command, you can skip the rest of this section.