Environment
Novell
ZENworks for Desktops 4.0.1 - ZfD4.0.1 Imaging
Situation
Linux
bootdisks do not boot completely.
Zip drive is
present on the workstation.
Resolution
- Try putting a disk in the Zip drive and see if it boots
If this worked, then the loader has to be configured to tell the kernel not to probe for those devices. - The next step would be to determine which device type is corresponding to the Zip drive. In linux, the disk drives are named /dev/hda , /dev/hdb and so on for ide drives. Figure out what drive name corresponds to the Zip drive. This can be done by typing img d, seeing which devices are shown, and taking a guess at which one of them could represent the Zip drive. This could be confirmed by mounting the Zip drive, and trying to see the disk data contents.
- Make changes to syslinux.cfg file on the first bootdisk, and at the end of each append line add the following,
, for eg:if Zip drive corresponds to devicename /dev/hdb then type hdb=noprobe at the end.
Here is a sample of what syslinux.cfg looks like after the changes:
default Imaging
prompt 1
timeout 600
display boot.msg
label Imaging
kernel Kernel
append 2 initrd=initrd.gz hdb=noprobe
label manual
kernel Kernel
append 5 initrd=initrd.gz hdb=noprobe
label config
kernel Kernel
append 7 initrd=initrd.gz hdb=noprobe
label install
kernel Kernel
append 4 initrd=initrd.gz hdb=noprobe
label lilo
kernel Kernel
append 3 initrd=initrd.gz hdb=noprobe - Make changes to lilo.s and install.s to ask the zen partition lilo loader to ignore these drives. This will only be required if a linux partition is being installed or already installed on the workstation. In lilo.s and install.s the line append hdb=noprobe is to be added to the section where loader configuration is being written to /etc/lilo.conf. The section in lilo.s looks something like this after the changes:
echo boot=$BOOTDEVICE > $LILOFILE
#echo timeout=80 > $LILOFILE
echo install=/boot/boot.b >> $LILOFILE
echo backup=/dev/null >> $LILOFILE
echo image=/boot/kernel >> $LILOFILE
echo label=Imaging >> $LILOFILE
echo root=$ZENDEVICE >> $LILOFILE
echo read-write >> $LILOFILE
echo append=\"hdb=noprobe\">> $LILOFILE
echo image=/boot/kernel >> $LILOFILE
echo label=prompt >> $LILOFILE
echo root=$ZENDEVICE >> $LILOFILE
echo read-write >> $LILOFILE
echo append=\"5 hdb=noprobe\">> $LILOFILE
The section in install.s looks something like this after the changes:
echo boot=$BOOTDEVICE > /mnt/harddisk/etc/lilo.conf
#echo timeout=80 > /mnt/harddisk/etc/lilo.conf
echo compact >> /mnt/harddisk/etc/lilo.conf
echo install=/boot/boot.b >> /mnt/harddisk/etc/lilo.conf
echo backup=/dev/null >> /mnt/harddisk/etc/lilo.conf
echo image=/boot/kernel >> /mnt/harddisk/etc/lilo.conf
echo label=Imaging >> /mnt/harddisk/etc/lilo.conf
echo root=$ZENDEVICE >> /mnt/harddisk/etc/lilo.conf
echo read-write >> /mnt/harddisk/etc/lilo.conf
echo append=\"hdb=noprobe\">> /mnt/harddisk/etc/lilo.conf
echo image=/boot/kernel >> /mnt/harddisk/etc/lilo.conf
echo label=prompt >> /mnt/harddisk/etc/lilo.conf
echo root=$ZENDEVICE >> /mnt/harddisk/etc/lilo.conf
echo read-write >> /mnt/harddisk/etc/lilo.conf
echo append=\"5 hdb=noprobe\">> /mnt/harddisk/etc/lilo.conf
These changes are to be made using the linux box, it is explained in how-to section. - Boot using the floppy in manual mode, do an install and it should work ok. To make changes to the existing linux partition, copy the file /bin/lilo.s to the harddisk /mnt/harddisk/bin directory. Unmount the harddisk, run lilo.s, and reboot, take out the floppy, and it should boot fine from the harddisk