Linux+Solaris HOWTO: Preparing Linux

Next Previous Contents

## 3. Preparing Linux

## 3.1 Building a new kernel

Some people donīt like building a custom kernel. For those of you: you must build your own kernel if you want to share data between Solaris and Linux on one hard disk. If, however, you do not want to share data, you are safe with your old kernel.

Here are your kernel options for ``Solaris compatibility'':

- Under `code maturity`:
  `Prompt for development drivers`

    Unfortunately UFS writing is still experimental.

- In `file systems`:
  `UFS file system support`

    UFS is the Solaris file system

  `UFS file system write support`

    The only way to pass data to Solaris

  `partition types / Solaris (x86) partition table support`

    Is needed for the slices within your Solaris partition to be found.

Additional info about kernel building can be found in the Kernel-HOWTO

## 3.2 Preparing your boot loader

Before messing with your boot loader, please make sure that you have an emergency disk ready which enables you to boot your old system.

Unfortunately the Solaris install overwrites the master boot record (MBR) and overwrites your old boot manager.

Fortunately, the Solaris boot manager is able to chain-boot. For this to work you have to put your old boot loader (e.g. lilo) into the boot sector of one primary Linux partition.

For lilo this means: look at your /etc/lilo.conf. Look for the `boot=` line. If it is something like `boot=/dev/hda1` everything is fine. But if itīs something like `boot=/dev/hda` it points to the MBR. Please change it to point to a primary Linux partition (e.g. `boot=/dev/hda1`)

A way to check if your boot-loader is chain-loadable is installing lilo in to the MBR and trying to chain load your other boot-manager. I used the following file called lilo.conf.mbr for this:

    #lilo.conf.mbr
    #Lilo in Master Boot Record doing nothing but chain-loading another lilo
    boot=/dev/hda
    root=/dev/hda5
    install=/boot/boot.b
    map=/boot/map
    vga=ask
    delay=50
    other=/dev/hda1
    label=lilochain

You can then run `lilo -C lilo.conf.mbr` to install lilo into your MBR. And donīt forget to run `lilo` to have lilo in the boot sector of your hard-drive.

If you reboot now, you should have a lilo-prompt. When you select `other` this chain loads the old lilo, which in turn loads Linux.

Next Previous Contents