Novell Home

Creating a Bootable SLES Installation DVD (Containing a Service Pack)

Novell Cool Solutions: Feature
By Kirk Coombs

Rate This Page

Reader Rating  stars  from 1 ratings

Posted: 3 Nov 2005

Applies To

  • SUSE Linux Enterprise Server

Overview

Installing SLES, especially when using a service pack, requires many CDs and a lot of CD swapping. A common question from system administrators is how to generate an installation DVD that contains the latest service pack so installs can be done from a single disk. This article answers this question.

The process is simple: Generate a network installation repository, either manually or with the help of a YaST module, fix some symbolic link issues, and generate a bootable DVD image with the mkisofs command.

Creating the Repository

Creating a network installation repository is quite simple. Follow the instructions in one of the following articles to build the repository:

The example in this article will use the repository generated with YaST. Whichever method is used, the DVD building process is the same.

Note: Remember is that a single-layer DVD is limited to 4.3 GB. There is not enough room on the disk if the SLES sources (CDs 5 & 6) are included.

After generating a repository with SP2 integrated you should have a directory structure similar to the following, with a size of about 3.7GB:

/home/user/installation/sles:

lrwxrwxrwx boot -> SUSE-SLES-Version-9/CD1/boot
lrwxrwxrwx content -> SUSE-SLES-Version-9/CD1/content
lrwxrwxrwx control.xml -> SUSE-SLES-Version-9/CD1/control.xml
lrwxrwxrwx driverupdate -> SUSE-SLES-9-Service-Pack-Version-2/CD1/driverupdate
lrwxrwxrwx linux -> SUSE-SLES-9-Service-Pack-Version-2/CD1/linux
lrwxrwxrwx media.1 -> SUSE-SLES-Version-9/CD1/media.1
drwxr-xr-x SUSE-CORE-Version-9
drwxr-xr-x SUSE-SLES-9-Service-Pack-Version-2
drwxr-xr-x SUSE-SLES-Version-9
drwxr-xr-x yast

You are now ready to begin generating the DVD.

Generating the DVD

Generate the DVD with the following steps:

  1. Fix the boot symbolic link. SLES uses a system called ISOLINUX to boot from a CD/DVD and pass control on to a regular kernel. All components of this system reside in boot/loader which is actually SUSE-SLES-Version-9/CD1/boot/loader, when the symbolic link is followed. The ISOLINUX system is not able to follow this link and will fail if the link is not removed:
    # cd /home/user/installation/sles

    # rm boot

    # cp -r SUSE-SLES-Version-9/CD1/boot .

    Note: It is important to leave all the other links intact. If the links are removed, either directly or with a mkisofs flag, the DVD will not be functional.

  2. Generate the DVD file system. The DVD file system is simply generated with the mkisofs command:

    # mkisofs -V SLES9_SP2 -r -J -l -L -iso-level 4 -P "SUSE Linux AG" \
    -b boot/loader/isolinux.bin -c boot/loader/boot.cat -no-emul-boot \
    -boot-load-size 4 -boot-info-table -graft-points -o /home/user/SLES9_SP2_DVD.iso \
    /home/user/installation/sles

    mkisofs: The option '-L' is reserved by POSIX.1-2001.
    mkisofs: The option '-L' means 'follow all symbolic links'.
    mkisofs: Mkisofs-2.02 will introduce POSIX semantics for '-L'.
    mkisofs: Use -allow-leading-dots in future to get old mkisofs behavior.
    mkisofs: The option '-P' is reserved by POSIX.1-2001.
    mkisofs: The option '-P' means 'do not follow symbolic links'.
    mkisofs: Mkisofs-2.02 will introduce POSIX semantics for '-P'.
    mkisofs: Use -publisher in future to get old mkisofs behavior.
    Warning: creating filesystem that does not conform to ISO-9660.
    Warning: Creating ISO-9660:1999 (version 2) filesystem.
    Warning: ISO-9660 filenames longer than 31 may cause buffer overflows in the OS.
    Size of boot image is 4 sectors -> No emulation
    0.25% done, estimate finish Fri Oct 28 14:04:03 2005
    0.50% done, estimate finish Fri Oct 28 14:04:03 2005
    <--snip-->
    99.68% done, estimate finish Fri Oct 28 14:09:33 2005
    99.93% done, estimate finish Fri Oct 28 14:09:34 2005
    Total translation table size: 2048
    Total rockridge attributes bytes: 528877
    Total directory bytes: 1124352
    Path table size(bytes): 2610
    Max brk space used 3d6000
    1991331 extents written (3889 MB)

    An explanation of the flags:

    Flag

    Explanation

    -V

    Sets the volume name for the disk.

    -r

    Generates Rock-Ridge extensions, preserving UNIX file attributes.

    -J

    Generates Joliet extensions, ensuring Windows compatibility.

    -l

    Allow full 31-character file names.

    -L

    Allows leading dots in file names

    -iso-level 4

    If the repository was generated with the YaST module then some file names will exceed 31 characters. This flag creates a non-standard ISO-9660 file system that allows more than 31 characters. This may be a problem on some systems but generally works.

    If there are problems with using this option either generate the repository manually or rename the root directories (SUSE-SLES-Version-9, SUSE-SLES-9-Service-Pack-Version-2, SUSE-CORE-Version-9) to something shorter and modify the yast/order and yast/instorder

    files to match.

    -P

    Specify the disk publisher.

    -b, -c, -no-emul-boot, -boot-load-size, -boot-info-table

    Flags needed by the ISOLINUX boot system.

    -graft-points

    Allow the use of graft points for file names.

    -o

    Output file.

  3. Burn the image to a DVD. The DVD ISO image can easily be burned to a DVD with the growisofs command:

    # cd /home/user

    # growisofs -Z /dev/dvdrecorder=SLES9_SP2_DVD.iso

    The -Z flag specifies that a new session should be started.


Novell® Making IT Work As One

© 2009 Novell, Inc. All Rights Reserved.