Syslinx/Extlinux

For specificity, the examples below assume the UFD is device /dev/sdb, has a single ext2 partition labeled "toolkit," and is mounted as /media/toolkit. Syslinux supports VFAT and other file systems, too. The label directory and label are arbitrary. Adjust as necessary for your workspace.

Install Syslinux/Extlinux Boot Loader

Here's how to configure a bootable USB drive with Syslinux/Extlinux (package syslinux) as its boot loader.

-> mkdir -p /media/toolkit/extlinux
-> su -c 'dd if=/usr/share/syslinux/mbr.bin of=/dev/sdb'
...
-> su -c 'extlinux --install /media/toolkit/extlinux'
-> cp /usr/share/syslinux/{chain.c32,hdt.c32,poweroff.com,reboot.c32,vesamenu.c32} /media/toolkit/extlinux

Create the configuration file /media/toolkit/extlinux/extlinux.conf.

For documentation, see text files in /usr/share/doc/syslinux-4.02; e.g., extlinux.txt, syslinux.txt, menu.txt.

Remove ldlinux.sys

The exlinux command installs file ldlinux.sys under /media/toolkit/extlinux and makes this file immutable:

-> cd /media/toolkit/extlinux
-> su
...
-> lsattr ldlinux.sys 
----i---------- ldlinux.sys

Not even root can remove the file with this attribute set:

rm -f ldlinux.sys 
rm: cannot remove `ldlinux.sys': Operation not permitted

But root can unset the attribute:

-> chattr -i ldlinux.sys 
-> lsattr ldlinux.sys 
--------------- ldlinux.sys

Then normalcy returns:

-> rm -f /media/toolkit/ldlinux.sys 
[No more griping.]