Ultimate Boot CD
Ultimate Boot CD
PC & Network DownloadsSubscribe to Scot's NewsletterFreshmeatSoftPedia
WebAttackSuperDownloads10/10 Perfect on Older Geeks.comSourceForge.net5/5 stars on findmysoft.com

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\
  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

The FreeDOS boot image and the various DOS apps (compressed in CAB archives) are located in a 16MB superfloppy at c:\ubcd-extracted\ubcd\images\fdubcd.img.gz. To modify this image, you need to uncompress it using 7-Zip or equivalent to fdubcd.img, then load the image using DiskExplorer, WinImage or a similar utility.

You should have a directory structure that looks like:

  bin\
  custom\
  dosapps\
  etc\
  level1\
  level2\
  level3\
  lib\
  autoexec.bat
  command.com
  config.sys
  diskid.txt
  kernel.sys

To add a DOS app to UBCD that is launched via FreeDOS, first 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
  app.exe
  app.dat

Create the CAB archive myapp.cab 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 custom\custom.ini in fdubcd.img and append at the end:

[User Defined]
myapp; "app.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 app.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
    COM32 linux.c32 memdisk
    INITRD /ubcd/images/fdubcd.img.gz
    APPEND floppy raw c=32 h=16 s=63 ubcdcmd=myapp

    *1 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.

    *2 In general, try to avoid extracting to paths containing spaces (eg. C:\Documents and Settings\User\UBCD Extracted) to reduce complications. If you absolutely have no choice, remember to delimit paths containing spaces with double-quotes when entering commands (eg. "C:\Documents and Settings\User\UBCD Extracted")

    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 two scripts clamav.cmd and fprot.cmd that help update the antivirus databases for the two antivirus engines included in UBCD (ClamAV and F-Prot; found within 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 create 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.

  • Extract the new version of UBCD to c:\ubcd-extracted.
  • Overwrite c:\ubcd-extracted\ubcd\custom with the custom directory from your old UBCD.
  • If you have a customized fdubcd.img.gz that you want to preserve, then you need to overwrite the custom subdirectory in the new image with the one from your older, customized image.

    Finally run ubcd2iso.cmd to create the new customized UBCD ISO image.

    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