This bug happens only in UBCD 5.1.1 (and maybe 5.1.0)
How to produce:1. Boot UBCD 5.1.1. An ISOLINUX menu should appear.
2. Select "GRUB4DOS menu".
3. On the GRUB4DOS menu, select "UBCD FreeDOS R1.44 (Based on NwDsk V3.40)"
4. Wait until FreeDOS is loaded.
5. See that the Ultimate Boot CD version number is missing. (Symptom #1)
6. Run Volkov Commander in UBCD FreeDOS, and change to drive "T:"
7. See the directory structure of drive T is:
Code:
/boot
/pmagic
/ubcd
autorun.inf
In short, drive T is UBCD instead of FDUBCD. (Symptom #2)
Expected result:1. The version number should show properly.
2. Drive T should be FDUBCD, and the contents of UBCD should not be accessible in UBCD FreeDOS.
Workaround:Thank to the guide here (
http://diddy.boot-land.net/grub4dos/files/map.htm#swap), I can workaround this problem by making FDUBCD the first CDROM rather than the second.
There are many entries in GRUB4DOS menu that boots FDUBCD. So you need to edit many files:
- /ubcd/menus/grub4dos/bios.lst
- /ubcd/menus/grub4dos/cpu.lst
- /ubcd/menus/grub4dos/hdd/bootmgmt.lst
- /ubcd/menus/grub4dos/hdd/cloning.lst
- /ubcd/menus/grub4dos/hdd/devmgmt.lst
- /ubcd/menus/grub4dos/hdd/diag.lst
- /ubcd/menus/grub4dos/hdd/editing.lst
- /ubcd/menus/grub4dos/hdd/partmgmt.lst
- /ubcd/menus/grub4dos/hdd/wiping.lst
- /ubcd/menus/grub4dos/main.lst
- /ubcd/menus/grub4dos/memory.lst
- /ubcd/menus/grub4dos/others.lst
- /ubcd/menus/grub4dos/periph.lst
- /ubcd/menus/grub4dos/system.lst
For each file, search for pattern like this:
Code:
map --mem /ubcd/images/fdubcd.iso.gz (hd32)
map --hook
root (hd32)
chainloader (hd32)
Add two lines inside:
map --mem /ubcd/images/fdubcd.iso.gz (hd32)
map --hook
map (hd32) (cd)map --hookroot (hd32)
chainloader (hd32)
Update (2012-09-10): I have prepared a patch for "syslinux2grub4dos.sed", so please use the patch instead.
http://dl.dropbox.com/u/70170658/ubcd/s ... patch.diffIf you have tried my workaround before and have replaced this line:
Code:
s|^LINUX.*memdisk\nINITRD \(.*\)\nAPPEND iso.*|map --mem \1 (hd32)\nmap --hook\nroot (hd32)\nchainloader (hd32)|
with
Code:
s|^LINUX.*memdisk\nINITRD \(.*\)\nAPPEND iso.*|map --mem \1 (hd32)\nmap --hook\nmap (hd32) (cd)\nmap --hook\nroot (hd32)\nchainloader (hd32)|
in "syslinux2grub4dos.sed", please undo it.