Novell Home

My Favorites

Close

Please to see your favorites.

How to create a bootable USB drive to install SLES

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

Environment

SuSE Linux Enterprise Server 10 (SLES 10)

Situation

This explains how to create a bootable USB stick to install SLES 10 from for situations where a CD-ROM drive may not be available in the server. It assumes the machine BIOS allows booting from a USB device.

Resolution

It is first necessary to download CD1 or a mini.iso of SLES 10. The proceedure can then be completed in either Windows or Linux.

Creating a bootable USB device from Windows
  1. Extract the contents of the .iso file to a temporary directory like C:\isotemp (A utility such as WinRAR can be used for this)
  2. Assuming the USB device is E: copy the contents of C:\isotemp\boot\i386\loader\* to E:\
    Note: replace i386 with x86_64 if it is 64 bit
  3. Delete E:\isolinux.bin
  4. Rename E:\isolinux.cfg to E:\syslinux.cfg
  5. Download syslinux and extract it to C:\syslinux (Note: this must be downloaded separately from the Internet)
  6. Open a command prompt and change to C:\syslinux\syslinux\win32
  7. Run syslinux E:

Creating a bootable USB device from Linux
This example will use /dev/sdb as the USB device.

Create a FAT16 partition on the USB device:
(/dev/sdb1 must be a primary partition no more than 4GB in size)
mkfs.vfat -F 16 /dev/sdb1

For i386:
umount /dev/sdb1
mount -o loop SLES-10-i386-GM-CD1.iso /mnt
/mnt/boot/i386/mkbootdisk --32 --partition /dev/sdb1 /mnt

For x86_64:
umount /dev/sdb1
mount -o loop SLES-10-x86_64-GM-CD1.iso /mnt
/mnt/boot/x86_64/mkbootdisk --64 --partition /dev/sdb1 /mnt
The USB device can then be booted from. For a network installation, select the default 'linux' option and enter options for a custom installation server:
install=ftp://ftpserver.yourhost/install/sles10/arch

Additional Information

Quite often it is required to set the boot device order each time the USB device is connected. It must be placed before the hard drives in the system.

This application can also be used for SuSE Linux Enterprise Server 9 (SLES 9), however, SLES 9 does not include the mkbootdisk utility so it must be downloaded separately or taken from SLES 10.


Must be 16 bit FAT
If the mkbootdisk script fails with the error: "must be 16 bit FAT", the cause is that the FAT partition is not using a 16-bit file allocation type.  You can confirm this using the command:

fsck.vfat -v /dev/sdb1

and looking for the line:

2 FATs, 32 bit entries

This must read "16 bit entries" for the script to succeed.  You must recreate the filesystem using mkfs.vfat to modify this.

WARNING: Not enough clusters for a 16 bit FAT!
When attempting to execute the mkfs.vfat command it may fail with the following error:

WARNING: Not enough clusters for a 16 bit FAT!
The filesystem will be misinterpreted as having a 12 bit FAT without mount option "fat=16".
mkfs.vfat: Attempting to create a too large file system

This is caused by attempting to create a 16-bit file allocation table size on a partition larger than 4GB.  Verify a partition smaller than 4G has been created on the USB device.

Disclaimer

This Support Knowledgebase provides a valuable tool for NetIQ/Novell/SUSE customers and parties interested in our products and solutions to acquire information, ideas and learn from one another. Materials are provided for informational, personal or non-commercial use within your organization and are presented "AS IS" WITHOUT WARRANTY OF ANY KIND.

  • Document ID:3499891
  • Creation Date:14-MAR-07
  • Modified Date:29-MAY-13
    • SUSESUSE Linux Enterprise Server

Did this document solve your problem? Provide Feedback