Novell Home

ZENworks Imaging using a USB pen drive (ZENworks 6.5 sp2 & ZENworks 7)

Novell Cool Solutions: Feature
By Jamie Glendinning

Digg This - Slashdot This

Posted: 3 Feb 2006
 

I wrote an article awhile ago on booting to the ZENworks PXE environment for ZfD4/z65 using a USB pen drive, and have just updated that with a slight enhancement.

However, the imaging environment has changed slightly with ZENworks 6.5 Sp2 and ZENworks 7. Here is a new Cool Solution that works for this new Imaging environment.

This is relatively straightforward to set up.

The DOS boot disks and the PXE environment both use linld to load the linux files.

The commandline:

linld.com image=linux initrd=initrd vga=0x314 cl=@cmd/z_maint.cmd

is used to boot the linux environment.

where z_maint.cmd contains the following information.

mode=5
install=tftp://$TFTPIP/boot
rootimage=/root
PROXYADDR=$HOSTIP
TFTPIP=$TFTPIP
tftptimeout=50
splash=silent
PXEBOOT=YES

So to do this from a USB pen drive we need to be able to boot to COS and run linld.com.

Requirements:

  • A machine that supports booting from usb devices
  • A USB pen drive
  • Free DOS files:
    http://www.fdos.org/bootdisks/
    I downloaded the kernel.zip file from the "Creating your own bootdisk" section of the page.
    You can use files from a win9x boot disk but I chose not to...
  • HP Utility for formatting USB pen drive (there may be others)
  • TFTP folder from ZENworks server

How to do it:

  1. Back up everything on the pendrive that you might need again as we are going to format the drive.
  2. Extract the files from the HP Utility download. We will use the HPUSBFW.exe util.
  3. Run this util.
  4. Select your USB device from the drop-down list.
  5. Select file system: FAT
  6. Then Format options: [x] Create a DOS Startup Disk
    [x] Using DOS system files located at:
    <specify the location of your extracted freedos files>



  7. Select Start and it should format your drive.
  8. Next create an autoexec.bat at the root of the USB device. all I've got in the file is:
    @echo off
    echo.
    echo. here goes...
    echo                     ...
    linld.com image=linux initrd=initrd vga=0x314 cl=@/z_maint.cmd
  9. Next copy the linld.com, ../boot/linux and /boot/initrd, /boot/root and /cmd/z_maint.cmd files into the root of your USb device.

Now we need to edit the z_maint.cmd file to populate the appropriate IP address.
We need to change all instances of $TFTPIP to the TFTPIP address normally used in your environment.
We also need to update the $HOSTIP entry to reflect your PROXYADDR address.
and change the rootimage entry.

Example

mode=5
install=tftp://$TFTPIP/boot
rootimage=/root
PROXYADDR=$HOSTIP
TFTPIP=$TFTPIP
tftptimeout=50
splash=silent
PXEBOOT=YES

using $HOSTIP=10.0.0.2 and $TFTPIP=10.0.0.1
becomes

mode=5
install=tftp://10.0.0.1/boot
rootimage=root
PROXYADDR=10.0.0.2
TFTPIP=10.0.0.1
tftptimeout=50
splash=silent
PXEBOOT=YES
Æ

You are ready to test.

Plug USB device into USB port - power on machine - it should boot.

If it will not boot, you will need to check that your machine's bios allows booting from USB devices and that you have set it higher in the boot order than your HD, otherwise it will boot from the local HD instead of the USB pen.

You should see linux loading in a similar way to a pxe boot.

If you want to mount the USB device try the following (it worked for me!)
img dg

This gave me the disk geometry and highlighted that there was a 0.2GB FAT device on /dev/sda1 - my pen drive.

mount /dev/sda1 /mnt/floppy

This mounted the device on /mnt/floppy - but you could use any of the existing mount points or create your own.

Now you can copy files across, or even image to the device.

If you have any questions you may contact Jamie at jamie_glendinning@engl_NOSPAM_.co.uk, after removing NOSPAM from the address.


Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com

© 2014 Novell