How to create a bootable USB drive to install SLES 10

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

Environment

SUSE Linux Enterprise Server 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

Please note that this process only works for SLES10 as there have been changes made to the syslinux package that make this process obsolete in later versions of SLES.

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 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-2007
  • Modified Date:25-Mar-2021
    • SUSE Linux Enterprise Server

< Back to Support Search

For questions or concerns with the SUSE Knowledgebase please contact: tidfeedback[at]suse.com

SUSE Support Forums

Get your questions answered by experienced Sys Ops or interact with other SUSE community experts.

Join Our Community

Support Resources

Learn how to get the most from the technical support you receive with your SUSE Subscription, Premium Support, Academic Program, or Partner Program.


SUSE Customer Support Quick Reference Guide SUSE Technical Support Handbook Update Advisories
Support FAQ

Open an Incident

Open an incident with SUSE Technical Support, manage your subscriptions, download patches, or manage user access.

Go to Customer Center