Every time I ran into this problem it was 'cause syslinux wasn't installed to usb,
there was no valid syslinux.cfg/isolinux.cfg menu entry, or sometimes syslinux needs to be reinstalled.
Is that what your talking about or what?
Looking at your other post I know why
Even though many distro maker's use a isolinux.cfg similar to this
Code:
DEFAULT menu.c32
MENU TITLE ClamAV Live CD
MENU COLOR UNSEL 37;44 #9000000 #00000000 std
LABEL clamav
menu label ^Start ClamAV Live CD
kernel vmlinuz
append boot=casper initrd=initrd.gz vga=788 quiet
It is really not right; isolinux does have the ability to go find the kernel/initrd, etc
However, I have ALWAYS found that if you give the Absolute path to everything; it usually works flawlessly
Here is what any isolinux/syslinux.cfg should look like
Code:
DEFAULT /isolinux/menu.c32
MENU TITLE ClamAV Live CD
MENU COLOR UNSEL 37;44 #9000000 #00000000 std
LABEL clamav
menu label ^Start ClamAV Live CD
kernel /casper/vmlinuz
append boot=casper initrd=/casper/initrd.gz vga=788 quiet
And, with syslinux, you must always give absolute path to kernel/initrd and you can't have any filenames longer than 8 letters and extensions of no more than 3 letters
so, like "tinycore.gz" is ok, but "microcore.gz" does not work with syslinux(I told them?!), cause it's 9 letters.
Unetbootin Often screws this up too.
If you extract the iso, edit the isolinux.cfg and show full path to
kernel/initrd with forward slashes "/", and then recreate the iso
I bet it works
You can use a script to recreate iso as long as you have
mkisofs installed(cdrtools, genisoimage, or similar)
here is one script to make a isolinux iso
Code:
#!/bin/bash
# ---------------------------------------------------
# Script to create bootable ISO in Linux
# usage: make_iso.sh [ /tmp/slax.iso ]
# author: Tomas M. <http://www.linux-live.org>
# ---------------------------------------------------
if [ "$1" = "--help" -o "$1" = "-h" ]; then
echo "This script will create bootable ISO from files in curent directory."
echo "Current directory must be writable."
echo "example: $0 /mnt/hda5/slax.iso"
exit
fi
CDLABEL="SLAX"
ISONAME=$(readlink -f "$1")
cd $(dirname $0)
if [ "$ISONAME" = "" ]; then
SUGGEST=$(readlink -f ../../$(basename $(pwd)).iso)
echo -ne "Target ISO file name [ Hit enter for $SUGGEST ]: "
read ISONAME
if [ "$ISONAME" = "" ]; then ISONAME="$SUGGEST"; fi
fi
mkisofs -o "$ISONAME" -v -J -R -D -A "$CDLABEL" -V "$CDLABEL" \
-no-emul-boot -boot-info-table -boot-load-size 4 \
-b boot/isolinux/isolinux.bin -c boot/isolinux/isolinux.boot ../.
That's from slax "slax" folder, there's one for windows too(.bat)
you must have the above script in the /boot folder and there must be a isolinux folder containg isolinux.bin and isolinux.boot
If you click it and press "run", it will create a iso named "boot.iso"
if you click it and choose "run in terminal", you can give it a name, it must end in ".iso", so "mycd.iso" will work.
Here is another isolinux iso script from riplinux
Code:
#!/bin/sh
#
PATH="$PATH:/bin:/sbin:/usr/bin:/usr/sbin"
help() {
echo "
--------------------------------------------------------------------------
This script \`$0' creates a bootable ISO image (using mkisofs),
from the contents of the specified source directory.
Usage: $0 grub source_directory out_directory iso_name (or)
$0 isolinux source_directory out_directory iso_name
For example, create a bootable grub ISO image named fooboo.iso in the
/boo directory, from the contents of the /foo directory.
sh $0 grub /foo /boo fooboo.iso
--------------------------------------------------------------------------
"
exit 1
}
if [ "$1" = "" -o "$2" = "" -o "$3" = "" ]; then
help
fi
if [ "$1" = "isolinux" ]; then
boot_image="isolinux/isolinux.bin"
elif [ "$1" = "grub" ]; then
boot_image="boot/grub/iso9660_stage1_5"
else
help
fi
source_dir="$2"
out_dir="$3"
iso_name="$4"
if [ ! -d "$source_dir" ]; then
echo "ERROR: Can't find \`$source_dir' directory!"
exit 1
elif [ ! -d "$out_dir" ]; then
echo "ERROR: Can't find \`$out_dir' directory!"
exit 1
elif [ "$iso_name" = "" ]; then
echo "ERROR: No ISO name given!"
exit 1
fi
if [ "$1" = "isolinux" ]; then
if [ ! -f $source_dir/isolinux/isolinux.bin ]; then
echo "ERROR: Can't find isolinux/isolinux.bin in $source_dir!"
exit 1
fi
elif [ "$1" = "grub" ]; then
if [ ! -f $source_dir/boot/grub/iso9660_stage1_5 -o ! -f $source_dir/boot/grub/stage2 ]; then
echo "ERROR: Can't find boot/grub/iso9660_stage1_5, and/or"
echo "boot/grub/stage2 in $source_dir!"
exit 1
fi
fi
if [ ! -x "`type -path mkisofs`" ]; then
echo "ERROR: Can't find \`mkisofs' on the system!"
exit 1
fi
echo fooboo >$source_dir/fooboo || exit 1
rm -f $source_dir/fooboo
echo -n "Continue and create $out_dir/$iso_name, from the
contents of the $source_dir directory? (Y/n) "
read ans
if [ "$ans" = "n" -o "$ans" = "N" ]; then
exit 0
fi
#mbr="`grep "^ " /proc/partitions | grep -E "(hd|sd)[a-z]$" | awk '{print $4}' | head -n 1`"
#2if [ -n "$mbr" -a -b "/dev/$mbr" ]; then
#2dd if=/dev/$mbr of=$source_dir/$mbr.mbr bs=512 count=1 1>/dev/null 2>/dev/null
#MBR=YES
#fi
mkisofs -R -J -no-emul-boot -boot-load-size 32 -boot-info-table \
-b $boot_image -o $out_dir/$iso_name -V "MD v2_5" \
-A "RIP Linux rescue system behind" $source_dir || exit 1
if [ "$MBR" = "YES" ]; then
echo
echo "I copied your hard drive MBR from \`/dev/$mbr' to \`$mbr.mbr' on $out_dir/$iso_name."
echo "You can restore your whole MBR from the CD, like this!"
echo "dd if=$mbr.mbr of=/dev/$mbr bs=512 count=1"
echo "If you just want to restore the boot sector, do this!"
echo "dd if=$mbr.mbr of=/dev/$mbr bs=446 count=1"
fi
echo
echo "DONE: Created $out_dir/$iso_name from the $source_dir directory!"
exit 0
here is a simple script to make a Grub stage2_eltorito iso image
Code:
mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o grub_boot.iso linux
the code above is editable; "grub_boot.iso" is the name iso will be given, "linux" is the name of the folder that will be made into a iso image.
Also, this script must be in the same folder as the "linux" folder, not in /boot or not inside the "linux" folder.
I use these all the time 'cause I get tired of having to re-type it all in terminal
See this page and it shows my menu.c32 sub-menu and grub menu/sub-menu system.
(
http://multidistro.com/shots/scrnshots.html )
If you wanna make a custom iso with menu's etc or usb whatever
I can help you out