Adding a Linux driver to ZENworks Imaging boot CD or Floppy.

(Last modified: 08Jun2006)

This document (10070123) is provided subject to the disclaimer at the end of this document.

goal

Instructions on how to add on a driver to the linux Kernel.

fact

ZENworks 3.X imaging.

Novell ZENworks for Desktops 4 - ZFD4

Novell ZENworks 6.5 Desktop Management - ZfD6.5

Novell ZENworks Imaging

Preworks from the companion CD

symptom

How to add Linux drivers to PXE

Adding drivers for ZENworks imaging

fix

First check to see if your card is a supported NIC. Supported Cards for ZfD 3.x imaging are found at: http://www.novell.com/documentation/lg/zdfs/index.html?zdfsadmn/data/a6n3rch.html

Then, find the website for the Vendor of that particular card and download the UNIX drivers.

This file will unpack and include the driver name and instructions for how to compile it on linux.

Here is an example of the process for the the Intel Pro100 VE.

Step 1. Run ZMBOOT.EXE from sys:\Public\Zenworks\imaging directory.

Step 2. Under "Workstation Linux Drivers" check the box next to "Load additional Linux Drivers ...".

Step 3. Click the "Add Linux Drivers" button.
a. Click Network Drivers.
b. Click the Add button.
c. navigated to the e100.o file, selected it and click OK.

Step 4. Create Disk 1.

Step 5. Create Disk 2.

Step 6. With Disk 2 still in the drive, clicked "Add Linux Drivers".
a. Click "Copy Drivers" then OK.

Step 7. Mount Floppy 2 in a Red Hat Linux 6.2 box. Using VI Edit the /drivers/driver.conf by adding the following line to the "#Loading Network Drivers" section:
insmod -f $MODPATH/net/e100.o > /dev/null 2>&1.



Notes on Step 7.
a: All drivers/cards have different instructions so the above instructions should only be considered an example.

b:By default this file only has headers in it. Only include here driver modules to be loaded prior to any pre-compiled drivers in the Kernel. The syntax of this file is "insmod -f <modulename> <commandline parameters>.

c: Each driver has its own set of Command lines you can use. For example to load driver 3c90x you use:
*************************************
insmod -f 3c90x.o > /dev/null 2>&1
*************************************
This same driver has command line parameters like half and full duplex modes, 10M, 100M etc... For this driver the -f option designates fullduplex. The above syntax will load a 3c90x.o with full duplex and pipe all errors to the null device.

d: Here is the location of the driver and the drivers.conf file on the second disk.
***************
/drivers
/drivers/drivers.conf
/drivers/net
/drivers/net/newdriver.o
***************


e: If linux finds it is not the one you have a cable plugged into, then you will fail to obtain an IP address. For example, the PCMCIA drivers are always tried first. If you have the cable plugged into the docking station (where the nic is on the PCI bus), and a PCMCIA nic is in the laptop, the PCMCIA nic will load first.

f: To see which driver is loaded, at the bash# prompt type lsmod.

To add drivers to the CDROM boot disk, follow these steps:
1. Create the CD with the BOOTCD.ISO found in public\zenworks\imaging , but leave the session open (do not finalize the CD)
2. Next, copy your settings.txt and the following directory structure and file to the root of the CD, and then finalize the CD.
drivers\net\<whateveryourdriveris... for example 3c90x.o>
or
Make a copy of the sys:\public\zenworks\imaging\bootcd.iso and then open it with an image editor such as WinIso.
Add the driver to the /drivers/net folder in the iso image editor. If the /net directory is not there you will need to add the directory to the iso image.
After this is done click the "Save" button. ****DO NOT select "Save As" this will corrupt the bootcd.iso file and cause you to receive a checksum error. 
Whatever drivers are in this directory will overwrite the files stored in the Linux kernel with the ones that you added to the CD image.

With ZENworks 3.0 and above you have an option to have a Linux "ZEN" partition. If you have a Zen Partition on your C-drive.

1) the driver needs to be copied to /lib/modules/2.x.xx/kernel/drivers/net (2.4.28 is the kernel in ir5, 2.6.x is not supported)

2) driver.conf needs to be modified as per the dirvers instructions and copied to the /bin directory

To add drivers to the Linux.2 file used for PXE booting see How to update Linux.2 file (ie: SuSE, RedHat, etc):
Abstract:  Sometimes there are new nics/drivers that need to be updated for linux. This is how you add those drivers to PXE/linux.2

symptom

Driver will not load on the Linux boot disks

cause

The kernel did not include the lan cards driver and a new one needs to be added.

document

Document Title: Adding a Linux driver to ZENworks Imaging boot CD or Floppy.
Document ID: 10070123
Solution ID: NOVL77274
Creation Date: 17Apr2002
Modified Date: 08Jun2006
Novell Product Class:Management Products

disclaimer

The Origin of this information may be internal or external to Novell. Novell makes all reasonable efforts to verify this information. However, the information provided in this document is for your information only. Novell makes no explicit or implied claims to the validity of this information.
Any trademarks referenced in this document are the property of their respective owners. Consult your product manuals for complete trademark information.