Ultimate Boot CD
Ultimate Boot CD
LangaListSubscribe to Scot's NewsletterFreshmeatSoftPedia
WebAttackSuperDownloads10/10 Perfect on Older Geeks.comSourceForge.netRealistic 3D illustration of UBCD

Customizing UBCD

Why customize?

Do to license restrictions, the Ultimate Boot CD does not contain boot disks of commercial software eg. MS-DOS, Windows, Ghost etc. It also does not contain boot disks specific to your environment eg. network drivers, SCSI drivers etc. Finally, it may not always contain the most up-to-date virus definitions. This section talks about how to create your own customized Ultimate Boot CD, tailored to your specific needs.

Extraction

First, extract all the files on the UBCD to a directory on your harddisk such as c:\ubcd-exracted (pathname may contain spaces). If you wish, you can directly extract the files from the ISO image using a tool such as 7-Zip or Daemon Tools.

You should have a directory structure that looks like:

c:\ubcd-extracted\
  antivir\
  boot\
  pmagic\
  ubcd\
    custom\
      custom.cfg
      custom.lst
  autorun.inf
  license.txt

Adding floppy images

To add your own floppy images to UBCD, copy them to c:\ubcd-extracted\ubcd\custom. Floppy images can be created from the physical floppy disks by using utilities such as rawread. You can optionally compress each image using gzip (via a tool such as 7-Zip) to make them smaller.

Then edit c:\ubcd-extracted\ubcd\custom\custom.cfg and add each floppy disk image to the menu.

For example:

LABEL -
MENU LABEL MS-DOS V6.22
TEXT HELP
 MS-DOS boot disk
ENDTEXT
LINUX /boot/syslinux/memdisk
INITRD /ubcd/custom/msdos622.img.gz
APPEND raw

Adding ISO images

To add your own ISO images to UBCD, copy them to c:\ubcd-extracted\ubcd\custom. You can optionally compress each image using gzip (via a tool such as 7-Zip) to make them smaller. Then edit c:\ubcd-extracted\ubcd\custom\custom.cfg and add each ISO image to the menu.

For example:

LABEL -
MENU LABEL Windows 98
TEXT HELP
 Windows 98 boot disk
ENDTEXT
LINUX /boot/syslinux/memdisk
INITRD /ubcd/custom/win98.iso.gz
APPEND iso raw

Note that not all ISO images can be successfully booted this way. Real mode OSes and boot loaders that use INT13 BIOS calls will likely work, but other may not. For more information, refer to the memdisk documentation on ISO image support.

Adding FreeDOS-based applications

To add a DOS app to UBCD that is launched via FreeDOS, create a CAB archive of the application files. For example, suppose you wish to add a DOS program found in c:\myapp which comprises of the following files:

c:\myapp
  myapp.exe
  myapp.dat

Create the CAB archive by using CabPack V1.4a (Local mirror). Recommended settings: CompressionType (LZX), CompressionMemory (21), Create cabinets for (32bit extractor)..

Alternative tools that support CAB archive creation includes IZArc and CL-Tools 4Win. Note that other archive formats such as zip and 7z can be used too.

Next edit c:\ubcd-extracted\ubcd\custom\custom.ini and append at the end:

[User Defined]
myapp; "myapp.exe"; -$; My custom application

The section name [User Defined] is listed as a submenu under FreeDOS when you type "ubcd" at the command prompt.

The items under the section name are the individual DOS programs. Each line comprises of four parameters, separated by semicolons.

  • The first parameter is the archive name. In this case, it will look for myapp.cab, myapp.zip, myapp.uha and myapp.rar on the entire CD or disk, so make sure you specify a unique name that can be found anywhere else on the CD or disk.
  • The second parameter is the command line to run for the specific program. In this case, it will run myapp.exe (this file comes from the extracted myapp.cab).
  • The third parameter controls what to do after the program terminates:

    -$ : go back to the menu
    -$$ : drop to the command prompt so you can add switches to your program (handy for programs that require extra parameters)
  • The fourth parameter is the name that will be displayed under the submenu for the tool.
  • Finally, append this section to c:\ubcd-extracted\ubcd\custom\custom.cfg:

    LABEL -
    MENU LABEL MyApp V1.0
    TEXT HELP
     My custom application
    ENDTEXT
    LINUX /boot/syslinux/memdisk
    INITRD /ubcd/images/fdubcd.img.gz
    APPEND raw ubcdcmd=myapp

    When working with DOS files, remember to observe the 8.3 limitation of DOS filenames. This includes the filename of the archive files as well as the filenames of the files found with it.

    Converting menu commands to grub4dos format

    UBCD offers two bootloaders: syslinux/isolinux (default) and grub4dos. The file custom.cfg contains the menu commands for syslinux/isolinux. If you plan on using grub4dos at some stage, you can convert the menu commands automatically to a format that grub4dos understands (found in custom.lst). To make the conversion, at the command prompt, type:

    cd \ubcd-extracted\ubcd\tools\win32\syslinux2grub4dos
    syslinux2grub4dos

    Updating anti-virus databases

    Under c:\ubcd-extracted\ubcd\tools\win32\antivirus, there are three scripts avira.cmd, clamav.cmd and fprot.cmd that help update the antivirus databases for the three antivirus engines included in UBCD (AVIRA AntiVir Rescue System, ClamAV and F-Prot; the latter two are found in Parted Magic). You need an Internet connection for these scripts to work. Simply run the scripts to update the antivirus databases when you create a customized/updated version of UBCD.

    Generating customized ISO image

    At the command prompt, type:

    cd \ubcd-extracted\ubcd\tools\win32\ubcd2iso
    ubcd2iso c:\ubcd-extracted c:\ubcd50-custom.iso

    This will create ubcd50-custom.iso in C:\.

    Making UBCD memory stick

    To create a bootable UBCD memory stick, at the command prompt, type:

    cd \ubcd-extracted\ubcd\tools\win32\ubcd2usb
    ubcd2usb c:\ubcd-extracted x:

    where X: is that drive letter of USB memory stick, which is assumed to be already formatted. If it is not already formatted, or you wish to force it to be formatted, you can add the /f switch at the end:

    ubcd2usb c:\ubcd-extracted x: /f

    Either of the above will created a bootable UBCD memory stick in X:.

    Note that booting a USB memory stick requires BIOS support and is only available on newer machines. You can also expect to encounter more compatibility issues compared to booting from a CD, and some tools may not work properly when run from a USB memory disk.

    For Linux users...

    For those running Linux, the equivalent tools for syslinux2grub4dos, ubcd2iso and ubcd2usb etc. are available under ./ubcd-extracted/ubcd/tools/linux.

    You may need to make the tools executable:

    $ cd ./ubcd-extracted/ubcd/tools/linux
    $ chmod a+x ./*/*.sh
    $ chmod a+x ./ubcd2usb/syslinux
    $ chmod a+x ../../../antivir/antivir

    Upgrading to a newer version of UBCD while preserving customization

    The advantage of limiting your customizations to c:\ubcd-extracted\ubcd\custom is that it makes it easier to upgrade to a newer version of UBCD later. Simply extract the new version of UBCD, overwrite with the custom directory from your old UBCD, and run ubcd2iso.cmd again.

    Replacing Parted Magic with your Linux distro of choice

    The Linux distro Parted Magic is now included with UBCD since it is a more reliable way of accessing NTFS filesystems and USB devices compared to DOS. Most of the payload in Parted Magic can be found in c:\ubcd-extracted\pmagic, so if you wish to get rid of Parted Magic and include your own Linux distro instead, you can reclaim most of the space by deleting c:\ubcd-extracted\pmagic, adding your own distro to c:\ubcd-extracted and adding a section in c:\ubcd-extracted\ubcd\custom\custom.cfg to launch it.

    Resources

  • syslinux configuration
  • syslinux menu system
  • grub4dos guide