XOSL HOWTOs and FAQs v1.00

by Filip Komar (filip.komar@email.si)




I. For the very beginning

II. Booting from logical partition

III. Creating partitions

IV. Installation of multiple Operating Systems

V. 1024 cylinder limit

VI. Miscellanies

VII. Glossary

VIII. Links

IX. Trademarks

X. Credits

XI. History


I. For the very beginning

This manual comes with ABSOLUTELY NO WARRANTY and is distributed under the terms of the GNU General Public License (GPL). Check for newer versions now and then. Please feel free to mail me personally at filip.komar@email.si and send me your questions, comments, problems, confirmations, solutions, opinions, additions, thanks, etc...


Before starting anything, I'd like to know if I can install XOSL without reinstalling anything?

You can, but only after reading the documentation.


Tell me the recommended short procedure for installing more Operating Systems and multi-booting

  1. Create partitions
  2. Install XOSL
  3. Create Boot items before installations (hiding other Operating Systems partitions is highly recommended)
  4. Restore XOSL if it has been overwritten.

Small complicated example showing how to install Windows NT, Windows 98, Windows 2000 & Redhat Linux 6.1:

  1. Install Windows 98 on a primary partition.
  2. Install XOSL.
  3. Create another primary partition, and make it active.
  4. To be on the safe side, hide the Windows 98 partition.
  5. Install Windows NT4 (using the Service Pack 4 ATAPI driver) on a logical partition, with the boot loader on the primary partition.
  6. Install Windows 2000 on another logical partition (which can share the same bootloader as Windows NT).
  7. Install Linux on another logical partition, putting LILO on its partition.

Important tips & tricks


II. Booting from logical partition


How to install or run Windows 9x on a logical partition?

It's not possible to install Windows 9x on a logical partition directly because of the "SU 013 Error". But, wait, there are possibilities for that, although they are tricky:

Copy the Windows primary partition to a logical partition and make it bootable. Detailed instructions follow:

  1. Prepare yourself one primary partition for installation of Windows 9x and of course one logical partition for running Windows 9x. If you already have a D: partition and would like to keep it that way, use the partition before that one for your new C: drive. Also be careful about the 1024 cylinder limitation!
  2. Install Windows 9x if you haven't already. Copy your old c: to the newly-prepared logical partition. That can be tricky. If you do it in DOS mode (better), you must recover long filenames and attributes (program DOSLFNBK can do that for you). If you copy in Windows (simpler), you should skip files in use like swapfile (usually named win386.swp) or else an error will stop copying. Be sure to copy all files and folders including system and hidden files. Preserve attributes of those files. Ranish Partition Manager is capable of copying partitions, but I didn't test it yet thoroughly.
  3. Make your new partition bootable: type "sys ?:" (replace ? with your new partition). Don't worry about activating your new partition.
  4. In XOSL, change your Boot item to hide all existing primary partitions except the extended partition which contains your logical partition, and then boot the (copied) logical partition. If you have any logical partitions before this, hide them also.
  5. Check everything, especially your Boot items before erasing your old primary partition.

With Partition Magic this task is even simpler: make room for the new partition you are going to create in free space in the extended partition, then Copy it from the original; after that type "sys ?:" (replace ? with your new partition). That's it! You can also create another primary partition for that if possible. But, beware one thing; you shouldn't change the order of your Windows partitions. The partition that was originally c: should still be c: afterwards. If this is what you wanted, then this partition must be the first nonhidden primary or logical partition (e.g. hide all preceding FAT partitions).

Now when your "logical" Windows 9x is working, there are no restrictions on installing whatever Operating System(s) you want on your first primary partition, and you can repeat this as many times as you need for multiple installation of Windows 9x! Note another thing; when booted with XOSL Windows 9x doesn't need to reside on an active partition.

Maybe this picture will explain better. My recommendation for installation of XOSL is (usually hidden) non-dedicated logical partition.

Partition structure before:

Primary

Extended


Windows 9x A
 

Logical

Empty

Logical

Empty

Logical

XOSL

Partition structure after:

Primary

Extended


Whatever
 

Logical

Windows 9x A

Logical

Windows 9x B

Logical

XOSL

For running "Windows 9x A" hide just first primary partition. Maybe for safety second logical too. At least during installation. For running "Windows 9x B" hide first primary and also first logical partition.


I have installed Windows NT or 2000 in a logical partition and want to boot it from there. What should I do before hiding primary (boot) partition (C:)?

One way is copy boot files for Windows NT or Windows 2000 from its primary partition to the target logical partition and then hide the original primary partition. Hiding is preferred in Windows but not in XOSL, and especially not with Windows 2000. Remove its drive letter with Disk manager in Windows NT (or DiskManagement in Windows 2000) in your administrative tools in Windows NT or 2000. Change your Boot item to boot the logical partition and test it. After success you can safely format your primary partition and use it for any other Operating System or purpose.

Boot files for Windows NT or Windows 2000:

and for Windows 2000 also:

Check date and time just to be sure but, if you're still not sure, just copy all system and hidden files from the root of your old boot partition to your new logical partition. Make that logical partition bootable if it is a FAT type partition and not formatted with Windows NT or 2000. Use program BootPart for that. Read its documentation, but here are short instructions: Boot that partition (the rest should have been hidden with XOSL) with Windows 9x or DOS floppy and type: "bootpart winnt boot:c:". Be sure to check with "dir" that your current "C:" is the one just before that.

Note: for Windows NT it is also necessary that the installed Service Pack is at least Version 4.


Booting OS/2 from a logical partition

XOSL is able to boot the OS/2 Boot Manager, which in turn can boot OS/2. Just change your Boot Manager settings so that it boots the default OS/2 partition on the fly, without waiting... so when XOSL boots OS/2's Boot Manager you'll see it flashing on the screen and then OS/2 boots. Or, if you want to quickly pass over OS/2's Boot Manager, just add the necessary keys in your OS/2 Boot item. If your Warp partition is the default choice under OS/2's Boot Manager, simply add an extra return to the "KEYS" page in XOSL settings. So, when you'll boot OS/2, XOSL will stuff a "return" in the keyboard buffer. Now you won't even see Boot Manager flashing on the screen...

For those who boot OS/2 from a primary partition there's no problem at all: XOSL does an excellent job!


Which Operating System needs a logical or an active partition when booted with XOSL?

Operating System and version

Install on logical partition

Run from logical partition

Can use more than one primary partition

Active partition not needed for booting

MS-DOS 6.22

No

No

No

?

DR-DOS 7.03

Yes

No

Yes

Yes

MS-DOS 7 from Windows 95B

Not directly (use "SYS")

Yes

No

Yes

GNU/Linux

Yes

Yes

Yes

Yes

Oberon 2.3.6

Yes

Yes

?

Yes

Windows 95B

Not directly

Yes

Yes (but be very careful)

Yes

Windows 98SE

Not directly

Yes

Yes (but be very careful)

Yes

Windows ME

?

?

Yes (but be very careful)

?

Windows NT 4.0

Not directly

Yes

Yes

Yes (note: boot partition can be hidden)

Windows 2000

?

Yes

Yes

Yes (note: boot partition can be hidden)


Tested mostly on ancient 486DX without incorporated INT 13 extensions, but using EZ-Drive. Please report any differences, problems, additions, confirmations or suggestions. What about 1024 cylinder limitation?


III. Creating partitions

VERY IMPORTANT: Be careful on this issue: when you install other Operating Systems that use their own file system, you need to be careful of where a new file system may reside in an extended partition. Microsoft Operating Systems MS-DOS through Windows 98 or even Windows ME have a bug where, if the last logical partition in the extended partition is not a recognized file system type, and multiple visible FAT primary partitions exist, it will use the last logical partition as a FAT one in place of the next primary partition. But it will think the size of the partition is that of the primary partition. Data coruption can occur!


But how can you create 4 primary partitions with fdisk? - because, even when just one primary exists, fdisk says that "a primary partition already exists", and will not create any more.

Most versions of DOS fdisk can't create more then one visible primary partition and one extended partition. If you hide a partition with XOSL, then it will appear under fdisk as a "non-DOS partition". If all the primaries are hidden then fdisk will be able to create what it thinks is the only primary. Of course, you must ensure that space is available for your proposed new partitions. Search documentation for detailed instructions.


When you want to create one more primary partition with Partition Magic, it says than Windows 9x won't work if more than one primary partition exists.

If you'll hide all other primary partitions except the current one in XOSL you won't experience any trouble.


Windows won't boot from extended partitions so I started to create primary partitions and both Partition Magic and Ranish Partition Manager would not let me create more than 4. What should I do?

The specification for the PC hard disk MBR sector allows maximum of 4 primary partitions. Each primary partition can contain an Operating System on its own (or just data), but can also be set up as an extended partition. An extended partition is a container for logical partitions, of which you can have any number. But some Operating Systems will only reference a limited number of partitions. Many Operating Systems such as Linux and BeOS, and many flavours of Unix, can boot from an extended or a logical partition. Windows can boot from a logical partition (this is not common knowledge) but this type of installation is a little tricky (for more information check this and also other documentation). It is also possible to have 2 or more Hard Drives, which would allow you to have 4 primary partitions per hard disk. That way you are able to boot 8 or more of your Operating Systems from primary partitions and as many others as you have logical partitions available for them. Don't forget hiding.


How to create multiple primary partitions with any DOS or Windows boot floppy

This is required should you want to install more than one Operating System. Partitioning can be a destructive process for your data, and should be handled with care. Keeping to a regular Backup policy is highly recommended.

Make a boot floppy (at least it must also contain format.com, sys.com and fdisk.exe) and copy the XOSL installation files to another "XOSL Install" floppy.

Run fdisk and create the first primary partition. Be sure that you leave enough space for other Operating Systems and for data partitions. Reboot your system and format the new partition with the command "a:\format c: /s". Make sure that you format the right partition or else you'll lose data! Then install XOSL in that partition. Use the "DOS Drive" and not the "Dedicated Partition" installation. This way you'll be able to test it and get used to it. Later you should reinstall it to another partition (for more information read on). Reboot and create Boot item for floppy. You have to hide the first partition at this point.

Now put the boot floppy in and boot your new Boot item. Run fdisk again and create the second primary partition. Leave the non-DOS partition alone, because this is your hidden partition.

Again reboot and repeat format procedure. Remember to change the Boot item to also hide the new partition on reboot.

If you need a third primary partition then repeat the above once again.

After you have created any primary partitions you need (as above), you should create one more primary partition: extended. That partition is a "container" for logical partitions. You can create as many logical partitions as you like. Organize your data in logical partitions. My recommendation for XOSL is that it should be installed in a (hidden) logical partition, so create one more for that.

If you have more than one hard disk repeat the same procedure. Don't forget that each hard disk can contain up to 4 primary partitions. If you need more partitions than that, then create logical partitions.

Now is a good time for the reinstallation of XOSL to its previously prepared partition. Reboot and give yourself some time to create Boot items for all planed Operating Systems now. With each Boot item, hide all partitions except those for the current Operating System. If you need to share data between Operating Systems, make one or more logical partitions visible for that. Format shared data partitions to FAT16, because almost all Operating Systems can access that file system.

If an Operating System happens to overwrite XOSL, just restore XOSL with your "XOSL Install" floppy.


How DOS, Windows or OS/2 assign drive letters

The boot partition always gets the drive letter "c:\" regardless of whether it is a primary or a logical partition. After that, drive letters are allocated sequentially to the first primary partition in each hard disk (hd2 primary as d:|, hd3 primary as e:\, hd4 primary as f:\, and so on). Then the logical partitions are assigned drive letters drive by drive, for example hd1 logicals 1-3 as g:\ h:\ I:\, hd2 logicals 1-2 as j:\ and k:\, and hd3 logical 1 as m:\. Finally are the rest of primary partitions in same order like logical partitions. Hidden partitions do not get a drive letter, and remember that multiple primaries are not visible in DOS/Win/OS2 type Operating Systems, so only one primary per hd will have a drive letter.

Note: Windows NT or 2000 doesn't change assigned letters if partition is removed or hidden.


Preventing drive letter change when multibooting DOS, Windows or OS/2

If you place partitions in the right order, you can avoid drive letter changes. If we look at different file systems, the most common one is FAT. So, create those partitions at the beginning of the hard disk. After them place FAT32 and finally any NTFS and HPFS partitions. Unix and Linux don't use drive letters, but there are other limitations depending on the Unix flavour in question.


IV. Installation of multiple Operating Systems


Installing Windows 9x or Windows ME

Please read examples; in almost every one there is some information.


Installing GNU/Linux

If you're installing Linux, install LILO in the Linux partition's boot sector (superblock). You can safely ignore the warning that says you won't be able to boot Linux. XOSL can do the job.


Installing Windows NT or Windows 2000

If you're installing Windows NT, create a separate FAT partition and format it. Windows NT can later convert it into a NTFS partition, if you prefer that. Now reboot your system. When the XOSL menu appears, Create Boot Item for Windows NT and make sure that you hide all other partitions except the one in which you're going to install Windows NT. Clone that Boot item and edit it to boot from floppy. Name it for example "Windows NT installation from floppy". Now, put the Windows NT's boot floppy in the floppy drive and choose Boot item "Windows NT installation from floppy" to begin with installation. After installation you can disable the Boot item. If you need it later just enable it again.

If you want to use CD installation there are few differences. You don't need to clone a Boot item, but you will need to boot the Boot item for Windows NT. Immediately after that insert a bootable installation CD and reboot. Your PC should be able to boot from CD and the "boot order" in BIOS should be "CDROM, HARD DISK, FLOPPY". After installation just remove the CD. If you want more partitions than just the current C:, then just use Disk manager in your Administrative tools to assign them the letters you want.

If your CD-ROM is not bootable from your BIOS, just use XOSL version 1.1.5 or later which can boot your Windows NT or Windows 2000 bootable installation CD.


Installing BeOS 5 PE on a dedicated partition

Report from advanced BeOS user Roland:

If you want to install BeOS 5 PE on a dedicated partition and boot it with XOSL first check this site http://www.betips.net/misc.html and look for 'Install Personal Edition to a real partition'

To create a BeOS installation CD using Nero 5 CD Burning software under Windows follow the link 'create a BeOS installation CD' and check the section 'Creating the CD from within Windows'. It all worked first time for me.

I created a 4 GB BeOS primary partition on hard drive #3 (28 GB) and later moved it right to the end with Partition Magic 5. XOSL has no problems whatsoever booting it!

Example to set up your computer running these Operating Systems (Windows 2000, Windows 98, Windows ME, SuSE Linux 7.0 and BeOS) and installing XOSL on a partition on it's own.

My major concern was to have all Operating Systems separated as far as possible: each individual Operating System must not have any connection to the other. Only a few 'data partitions' may be 'shared'. So hide as many partitions as possible.

There are 3 hard drives:

  1. XOSL partition (can be logical)
    Windows ME primary partition


  2. Windows 2000 primary partition
    Linux on primary partitions (boot, root, swap)


  3. Windows 98 primary partition
    two logical partition in the extended partition
    BeOS primary partition

Installation was a bit unorthodox, but I am a control freak and I REALLY HATE the Windows NT bootloader. Windows 98 was already installed.

XOSL install

Windows ME install

Windows 2000 install

Linux install

BeOS install

Just a few remarks

The bottom line: setting up all this stuff is a wonderful waste of time and you learn a lot from it.


1024 cylinder limit


What is the 1024 cylinder limit?

The 1024 cylinder limit is a PC BIOS constraint. If the BIOS does not have INT 13 extensions incorporated, no Operating System can be booted from a partition that intrudes into the space beyond. Newer systems have the INT 13 extensions. They enable booting from space beyond cylinder 1024 only if the Operating System is capable of utilising them. DOS can't. Neither can OS/2 Warp 3 and 4 GNU/Linux with newer LILO (version 0.21.4.2 or later) can. Windows NT original (without Service pack 4 or later) cannot. Windows 98, and possibly also Windows ME, cannot exceed this limit either.


Do you have to install the boot files of any Operating System within 1024 cylinders in order for the Operating System to be able to boot?

It depends on the Operating System. If the Operating System loader isn't INT 13 extensions aware, it probably won't even attempt to boot if any portion of the boot partition crosses the 1024 boundary. Even though the boot files might be installed at the beginning of the partition when the Operating System is first installed, there's no guarantee they would all stay there through various upgrades and patches (this includes any partition moves made (for example) with the assistance of Partition Magic). Of course your hardware must support it also.


LILO over the 1024 cylinder limit

One excellent report from Peter:

Your BIOS must be compliant with the trick LILO uses. In other words, if your BIOS version is before 1997, chances are that it won't work for you...

I have recently done this with my laptop (I have done this on my desktop before).

Anyway here is a brief run down on how I did it.

1. I created the partitions. (This is from memory so it isn't exact):

hda1  

Windows 2000  

(FAT32)  

around 7 GB

hda2

extended partition

around 2.7 GB

hda5

/boot

(ext2)

around 16 MB

hda6

/

(ext2)

around 2.5 GB

hda7

(Linux Swap)

around 133 MB

I used Partition Magic to do this.

2. Installed Windows 2000. Into its partition

3. Got onto the Net and then downloaded the latest version of LILO (At least version 0.21.4.2 or later).

4. Installed Redhat 6.2.

It doesn't really matter where you setup LILO to install itself, as it won't work until you install the new version. I installed it to the /boot partition. This way I could still boot into Windows.

VERY_IMPORTANT: When it asks you to make a boot floppy MAKE the boot floppy.

5. Use the boot disk to get into Linux.

I am not sure how well you know Linux, so I will provide you with the steps that I used to get LILO installed. (Note I am just a beginner in Unix/Linux so this may not be the best way to do it, but I know that it works). (Anything in between a * is a command)


*cd /mnt*
*mkdir /win*    (I am making a directory to link to the Windows Partition).

*mount -t vfat /dev/hda1 /win*    (Windows was on hda1 for me, so I link off that dir)
*cd /usr/src*    (This is where I am putting all my source code)

*tar xzvf /mnt/win/(Directory with your LILO.tar file)/lilo-21.5.1.tar.gz*

*cd lilo-21.5.1*

*make*

*make install*    (This will have setup and installed LILO.)

Now you have to configure the LILO Config file.

Use your favourite editor. I use pico

*pico /etc/lilo.conf*

(My lilo.conf file looks like this).

******Start lilo.conf file************
boot=/dev/hda5
map=/boot/map
install=/boot/boot.b

prompt
timeout=50

lba32

default="Linux 2.2.14"

image=/boot/vmlinuz-2.2.14-5.0
    label="Linux 2.2.14"
    read-only
    root=/dev/hda6

image=/usr/src/linux/arch/i386/boot/bzImage
    label="Linux 2.4-pre9"
    read-only
    root=/dev/hda6
********End lilo.conf file************

   

Note that the "lba32" is needed to get LILO to work.

Also when LILO is installed there is a file in the /usr/src/lilo-21.5.1 directory called Disk.com. If you copy it onto a bootable disk and boot off it, then run that file it will tell you whether your BIOS will support lba32 calls.


VI. Miscellanies


How XOSL 1.1.x works

There are three steps to 'how XOSL works':

  1. starting XOSL
  2. running XOSL
  3. booting an OS (booting a Boot item).
  1. The MBR (first sector of a hard disk) contains an IPL (Initial Program Loader, or whatever you want to call it) and a partition table. When XOSL is installed, it replaces the existing IPL, with one to load XOSL. This IPL will load XOSLLOAD.XCF and execute it. Then XOSLLOAD.XCF will load all XOSLIMGx.XXF files (the actual boot manager), and execute it. Due to heavy code size restrictions for the IPL, the IPL cannot directly boot the actual boot manager.


  2. XOSL itself is a regular application, as every other. It's mainly written in C++. Some C files still exist. They will disappear in the future. Lastly, there's assembly, mainly for low-level stuff (mode switching, disk access, etc.).


  3. There are three things to booting: activating partitions, partition hiding, and the actual booting process. Activating a partition is setting a flag in the partition table to 0x80 (128). For hiding, XOSL will change the file system Id for the partition. Lastly, to boot, XOSL loads the first sector of the selected partition to memory address 0000:7c00, and will execute it.

Booting Windows or DOS from a second or later hard disk

Q: I now have 2 IDE hard disks. When I boot Windows from the 2nd hard disk, my hard disk runs in DOS compatibility mode, and Windows is slow as hell. There is also a message that says that my MBR may be infected by a virus or something. Is there a way to make my Windows on second hard disk NOT boot in DOS compatible mode when I boot it with XOSL ?

A: Don't select Swap hard disk, just hide all (or at least primary) FATxx partitions on the 1st hard disk when booting 2nd hard disk Windows.


EZ-Drive and XOSL 1.1.x

First you need to know something about EZ-Drive. It is a DDO (Dynamic Drive Overlay) program, which is intended to handle hard disks with more than 1024 cylinders when your BIOS can't. It was adopted around the time disks got bigger than about 504 MB. MBR loads EZ-Drive. I think that the first cylinder is used for binary itself and for up to 10 backups of "replaced MBRs". When backups are full EZ-Drive doesn't backup any more and may possibly lose new partitions (it happened to me a few times - I now use the freeware program MBRWork to backup myself). There is program for erasing those "nasty backups" called "baktrak.exe" from the makers of MaxBlast, which is just another version of EZ-Drive. But it doesn't work on all versions of EZ-Drive.

As far as I know EZ-Drive needs an active primary (but it could be hidden) partition and can only boot DOS, Windows or another boot sector with signature 0AA55h. So one option is to use the Windows NT or 2000 loader; another is changing that magic number with some kind of disk editor like "PTS DiskEditor".

Philippe Guillemette found a reason why EZ-Drive can't boot XOSL (between version 1.1.0 and 1.1.5) directly as second boot manager (on dedicated partition):

I checked a while and I saw in XOSL source code, that the boot sector signature is 0534Fh. It seems that the EZ-Drive *must* have the standard boot sector signature 0AA55h to allow a partition to be booted, even it is set "active" in the partition table. But interesting, partition type is not important.

How to install XOSL 1.1.5 if you have to use EZ-Drive:

  1. Assume that EZ-Drive is already installed.
  2. Prepare yourself one small (one MB is more than enough) activated primary partition for installing XOSL.
  3. Backup your MBR. Always use floppy for that (maybe with freeware program MBRWork, which is quite simple and also capable of some other interesting stuff).
  4. Install XOSL to a dedicated partition without reboot. But don't choose to install "Smart Boot Manager" to boot from CD-ROM or else you'll lose your first track on the hard disk where EZ-Drive is located. Instead install "Smart Boot Manager" manually but on a floppy. Very useful feature ;-).
  5. Use some disk editor (I use PTS DiskEditor) to change that partition boot sector signature from XOSL's 0534Fh to standard 0AA55h which EZ-Drive can boot.
  6. Restore MBR to start EZ-Drive again (can also be done few times with EZ-Drive disk - be careful).
  7. Reboot, setting the preferences of XOSL as usual, but hide that partition in all Boot items in XOSL or change that partition File system ID to "XOSL's type" 78h or similar (Ranish Partition Manager directly from XOSL can be used for that). Remember also not to activate any other partition except this. Don't worry about booting Windows from a non active or even from a logical partition. XOSL can handle that easily.

If you need a detailed procedure for using Windows NT or 2000 loader, here it is (IMPORTANT: reboot only if allowed):

  1. EZ-Drive is already installed, but before proceeding backup the MBR first. Always use a floppy for that (maybe with freeware program MBRWork, which is quite simple and also capable of some other interesting stuff).
  2. Windows NT or 2000 loader can also be found on www.bootdisk.com somewhere. Only two files are needed: ntldr and Boot.ini. Copy them to activated primary partition. Partition type shouldn't currently (XOSL 1.1.5) be FAT12 (smaller than 32MB).
  3. Create boot sector of NT loader for that partition with program BootPart. Quick instructions: Boot that partition in DOS mode with Windows or Dos Boot floppy and type "bootpart winnt boot:c:".
  4. Change NT Boot Menu manually in boot.ini or with BootPart to load "XOSL's MBR" (look example)

    Example of boot.ini:

        [boot loader]
        timeout=1
        default=C:\curr_mbr.xcf
        
        [operating systems]
        C:\curr_mbr.xcf="XOSL"
        C:\BOOTSECT.W95="Win 95 Command Prompt" /win95
       
  5. Install XOSL on that DOS Drive (not dedicated) without rebooting, but don't choose to install "Smart Boot Manager" to boot from CD-ROM or else you'll lose your first track on hard disk where EZ-Drive is located. Instead install "Smart Boot Manager" manually but on floppy. Very useful feature ;-).
  6. Restore MBR to start EZ-Drive again (can also be done few times with EZ-Drive disk - be careful).
  7. Reboot, setting the preferences of XOSL as usual, but hide that partition in all Boot items. Remember also not to activate any other partition except this. Don't worry about booting Windows from non active or even logical partition. XOSL can handle that easily.

I lost LILO and Linux doesn't start anymore. How can I fix it?

Excellent post from Tom A. Honermann explains all:

Here is what happened:

You had Windows 9x already installed.
You installed GNU/Linux.
GNU/Linux installed LILO to the MBR (Master Boot Record) of your first disk thus blowing away Windows 9x's MBR (which is normal).
LILO was configured to boot either Windows 9x or GNU/Linux.
You installed Windows 9x again, which installed it's boot loader to the MBR again and lost LILO.

What you need to do:
Re-install LILO back to the MBR and use it to boot both Operating Systems as before; or, even better, re-install LILO to the boot block of a "/boot" partition or (if you don't have one) to your root partition "/". The partition that you'll use must be within the first 1024 cylinders of the disk or get newer LILO (At least version 0.21.4.2 or later). Then use XOSL to boot that partition

How to do it:


LI ERROR

Q: I have Linux & LILO installed on my 2nd hard disk. When trying to boot it, LILO stops with 'LI' When I disconnect my first drive, LILO boots up just fine. What should I do?

A: In this case, LILO expects to be on the first drive, which it is when the 1st hard disk is disabled. However, when you use XOSL to boot LILO, LILO is on the 2nd drive. Then it's only natural that LILO will fail to boot. To solve this, you have to reconfigure LILO, while the 1st hard disk isn't disabled (so you'll have to boot Linux from a CD). Linuxconf or YAST should be able to do this.

Note also that your /boot partition has gone from /dev/hda? to /dev/hdb?!


No Active Partition error

Q: The problem I have is that, after booting into the logical partition, the next time I start the computer it responds with a "no active partition found error" before it gets to XOSL. I then have to reset an active partition using FDISK. Is there a way round this?

A: When you boot off the logical partition, XOSL will activate it. However, your BIOS doesn't like it when no primary partition is active after reboot, hence the error. To solve it, uncheck the 'Activate' check box for the logical partition Boot item.


Manual backup of XOSL's files

No one knows when you'll need it, so backup these files for version 1.1.x:

How to restore that backup depends on the situation. If XOSL isn't installed at all, install it and overwrite those three files with the backups.

If XOSL is installed, just overwriting will do.

IMPORTANT NOTE: files of different versions may not be compatible with each other! Only when easy-upgrade is supported, can you exchange them between different versions.


I installed Windows NT on the second partition. After the reboot it just halts without showing NTloader.

Windows NT without Service Pack 4 or higher must boot from the within the first 4 GB of a hard drive. This problem is avoided with the 3 Windows NT setup disks created during installation. When asked, supply the driver disk with Service Pack 4's file ATAPI.SYS. Be aware that, whilst this solution does work, the boot process takes a few seconds longer.

See the following Microsoft KnowledgeBase articles for details on this: Q197295 and Q102873. However they forget to tell you that you need to copy ATAPI.SYS to NTBOOTDD.SYS in the same folder as your BOOT.INI file.

Also Ranish Partition Manager can overcome this situation. Check its documentation for details.


Hiding Partitions in Windows NT or 2000

Q: When I boot Windows 2000, I get to the login dialog, but it goes into an infinite loop of trying to read/write my preferences. Windows 2000 works fine if I remove XOSL and just make that partition active. What should I do?

A: This is likely to have happened if your partition was visible when you installed Windows 2000. It doesn't matter if it is later marked as hidden, Windows 2000 will always assign it a drive letter. So don't hide partitions in XOSL for Windows 2000. That Operating System wants to know everything about your partitions and if you hide any it is confused and "restarts" all the time to reread the preferences.

To change partition visibility in Windows 2000 go to the "Computer Management->Disk Management" option, select your partition, right-click and choose "Change Drive Letter and Path." Now click the "Remove" button and it will remove your drive letter assignment, effectively making it hidden. You can use the same method (but clicking "Add") to make hidden partitions available to the Operating System. In Windows NT use Disk manager in Administration tools. Remember that once you assign a drive letter, it will stay visible until you remove the assignment, regardless of whether XOSL makes it hidden or not on boot-up.


VII. Glossary

1024 cylinder limitation!
many Operating Systems have it at least during loading; your BIOS must support INT 13 extension for overcoming that boundary limitation
BIOS
is checking and controlling your hardware at the most basic level
Boot item
please read the XOSL manual once again
EZ-Drive, Disk Manager
dynamic drive overlay (DDO) programs used when your BIOS or Operating System can't handle large hard drives; upgrade your BIOS or hardware if possible
FAT12
file system for partitions smaller than 32MB
FAT16
basic Windows file system
FAT32
file system for effective use of your Windows partitions
fdisk
very basic partition manager
file system
structure of written information on hard disk, floppy, Zip drive...
format
basic program for (re)creating of file system
HD
Hard Drive; contain Operating System and your data, vital part of you PC
IPL
Initial Program Loader - loads OS; located in MBR, executed by BIOS
LILO
LInux LOader; can load almost every PC based Operating System
MBR
Master Boot Record; very important part of your hard disk, contains partition table and IPL
multi-booting
using more than one Operating System and/or multiple versions of one Operating System
NTFS
file system for Windows NT or 2000; safer and more efficient than FAT
OS
Operating System
partition
container for file system
partition, activating
some Operating Systems loaders (IPL to be exact) need this in order to know which partition to boot
partition, extended
special type of primary partition which is intended for use as a container for logical partition
partition, hiding
Windows usually don't see hidden partitions, but data is still there
partition, logical
same as primary, except there is no 4 per hard disk limitation (logical partitions live inside the extended partition)
partition, primary
container for your Operating System and data; each hard disk can have a maximum of 4
partition table
contains information about the primary partitions on that hard disk
PC
Personal Computer
VESA
Video Electronics Standards Association - create standards for graphical cards


VIII. Links

XOSL - excellent bootmanager
http://www.xosl.org
http://xosl.sourceforge.net

Ranish Partition Manager - excellent partition manager; useful also for copying partitions
http://www.users.intercom.com/~ranish/part

Partition Resizer - nice partition resizer
http://members.xoom.com/Zeleps

BootDisk - useful tools and boot disks of all kinds
http://www.bootdisk.com

BootPart - interesting program for multibooting in general
http://www.winimage.com/bootpart.htm

INSTALLING A DRIVE AND COPYING WIN95 - a lot of information about copying Windows to other partition
http://thef-nym.sci.kun.nl/~pieterh/copying-win95.html

DOSLFNBK - backup and restore long filenames and attributes in plain DOS
http://www8.pair.com/dmurdoch/programs/doslfnbk.htm

GNU/Linux - excellent and free Operating System
http://www.linux.org
http://www.freshmeat.net

LILO - LInux LOader
http://www.lilo.org
http://www.freshmeat.net

MBRWork - interesting freeware program to backup, restore or erase your MBR; also very useful if you have EZ-Drive
http://www.terabyteunlimited.com

Partition Magic - commercial software from PowerQuest, but the best one to play with partitions
http://www.powerquest.com

PTS DiskEditor - very useful (and free) disk editor
http://www.PhysTechSoft.com

Smart Boot Manager - nice little boot manager capable of booting from CD-ROM
http://btmgr.sourceforge.net


IX. Trademarks

All mentioned product names are trademarks or registered trademarks of their respective companies.


X. Credits

Geurt Vos - for his eXtended Operating System Loader and it's documentation and accessories
Vijai K. Amarnath - some interesting information from his OSLoader documentation
PowerQuest - for lots of information and very simple but extremely powerful partition manager
Users of XOSL - for posting interesting questions and effective solutions
GNU/Linux community - for excellent volunteer work
Philippe Guillemette - for his solution for EZ-Drive to boot XOSL directly

Authors: Filip Komar (filip.komar@email.si) and many others, who posted on XOSL's mailing list (Please don't say it's Copyrighted)
Editor (Suggestions, Grammar & Spell Check): David Denny: English (UK)
Proofreading and converting to HTML: Geurt Vos


XI. History

NOTE: date format in d.m.yyyy!

Version 1.00

Last change: 6.3.2001 by Filip
Last revision: 8.2.2001 by David
Converted to HTML: 1.3.2001 by Geurt