MSFN Forum: SOLVED - mkisofs bug/question - What can cause file not found in this - MSFN Forum

Jump to content



Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

SOLVED - mkisofs bug/question - What can cause file not found in this case sensitivity? I feel like missing very basic item Rate Topic: -----

#1 User is offline   delicatepc 

  • Newbie
  • Group: Members
  • Posts: 24
  • Joined: 17-June 09

Posted 02 July 2009 - 11:53 AM

SOLVED!! - See cdbob post in thread for explanation and workarounds. Issue was with design assumption in chain.c32

Original Post

Quote

Using syslinux/isolinux 3.82 to chainload windows BOOTMGR. On USB this works fine.

Create ISO with this command where %a2% is c:\file.iso:
""mkisofs.exe" -iso-level 4 -l -R -J -joliet-long -D -V %VOLUME_ID% -o "%a2%" -b "BOOT/isolinux/isolinux.bin" -c "BOOT/isolinux/boot.catalog" -hide "BOOT/isolinux/boot.catalog" -hide-joliet "BOOT/isolinux/boot.catalog" -no-emul-boot -boot-load-size 4 -boot-info-table ."


attached is image of root of files (based off ubcd). Notice caps BOOT folder, BOOTMGR, BCD.

When I boot the iso that I created I get error (it successfully chainloads BOOTMGR):
File: \Boot\BCD (notice the Boot not BOOT?)

An error occurred while attempting to read the boot configuration data.

attached image of error.

Any one had an idea? It seems to me i am just missing a very basic case sensitive item as I know this configuration works fine on USB.

any help/ideas appreciated.

thank you,
dpc

Attached File(s)


This post has been edited by delicatepc: 23 July 2009 - 12:37 PM



#2 User is offline   jaclaz 

  • The Finder
  • Group: Developers
  • Posts: 8,791
  • Joined: 23-July 04
  • OS:none specified
  • Country: Country Flag

Posted 02 July 2009 - 11:59 AM

Check you command line for mkisofs against this one (which is known to be generally working):
http://www.msfn.org/...topic=94398&hl=

jaclaz

#3 User is offline   cdob 

  • Friend of MSFN
  • PipPipPipPipPip
  • Group: Members
  • Posts: 726
  • Joined: 29-September 05

Posted 02 July 2009 - 01:26 PM

View Postdelicatepc, on Jul 2 2009, 11:53 AM, said:

File: \Boot\BCD (notice the Boot not BOOT?)

Well, all used files system or exension ignores case.
-iso-level 4 : allows lower and upper case, Boot is a valid name
-R : allows lower and upper case, Boot is a valid name
-J -joliet-long : allows lower and upper case, Boot is a valid name

Uppercase required folders and files at hard disk first. Run given command next.
Or use -force-uppercase at some versions.

#4 User is offline   delicatepc 

  • Newbie
  • Group: Members
  • Posts: 24
  • Joined: 17-June 09

Posted 21 July 2009 - 09:10 AM

I have been trying to get this to work for a while now and so far nothing I seem to be doing can get it to work properly. On USB it works great but as soon as I get it into ISO format the BOOTMGR cannot find the BCD file it seems.

Can anyone give me a hand? Alternatively is there another place I could ask?

thanks,
dpc

#5 User is offline   cdob 

  • Friend of MSFN
  • PipPipPipPipPip
  • Group: Members
  • Posts: 726
  • Joined: 29-September 05

Posted 22 July 2009 - 12:41 PM

Which files exist at hard disk?
Can you run: dir BOOT /s /b

Does exist files:
BOOT\BCD
BOOT\BOOT.SDI
BOOT\BOOTFIX.BIN
Case is importand.

Which bootmgr do you use?
Do you use Vista, SP1, SP2, WAIK, Windows 7

Which BCD do you use?
Do you use a default file? Do you use a edited file?

Which bootmgr entry do you use at isolinux.cfg?
Post your bootmgr isolinux.cfg entry.

Which ISO file size do you get? Do you get a file greater 4GB ?

Which mkisofs -version do you use?

Cross checked myself:
mkisofs.exe -iso-level 4 -l -R -J -joliet-long -D -V VOLUME_ID -o ..\o.iso -b "BOOT/isolinux/isolinux.bin" -c "BOOT/isolinux/boot.catalog" -hide "BOOT/isolinux/boot.catalog" -hide-joliet "BOOT/isolinux/boot.catalog" -no-emul-boot -boot-load-size 4 -boot-info-table -graft-points /BOOT/etfsboot.bin=BOOT/etfsboot.com .
Bootmgr does find BCD, PE does boot.

or
mkisofs.exe -iso-level 4 -r -joliet-long -D -V VOLUME_ID -o ..\o.iso -b "BOOT/isolinux/isolinux.bin" -hide "boot.catalog" -hide-joliet "boot.catalog" -no-emul-boot -boot-load-size 4 -boot-info-table -graft-points /BOOT/etfsboot.bin=BOOT/etfsboot.com .


#6 User is offline   delicatepc 

  • Newbie
  • Group: Members
  • Posts: 24
  • Joined: 17-June 09

Posted 23 July 2009 - 02:06 AM

I downloaded UBCD 5.0b12 and updated the syslinux/isolinux files from syslinux 3.82.

I am using Sun Virtual Box to test these ISOs.



View Postcdob, on Jul 22 2009, 11:41 AM, said:

Which files exist at hard disk?
Can you run: dir BOOT /s /b
C:\ubcd-stripped\BOOT\BCD
C:\ubcd-stripped\BOOT\BOOT.SDI
C:\ubcd-stripped\BOOT\BOOTFIX.BIN
C:\ubcd-stripped\BOOT\etfsboot.com
C:\ubcd-stripped\BOOT\isolinux
C:\ubcd-stripped\BOOT\syslinux
C:\ubcd-stripped\BOOT\isolinux\isolinux.bin
C:\ubcd-stripped\BOOT\isolinux\isolinux.cfg
C:\ubcd-stripped\BOOT\syslinux\chain.c32
C:\ubcd-stripped\BOOT\syslinux\ldlinux.sys
C:\ubcd-stripped\BOOT\syslinux\memdisk
C:\ubcd-stripped\BOOT\syslinux\menu.c32
C:\ubcd-stripped\BOOT\syslinux\reboot.c32
C:\ubcd-stripped\BOOT\syslinux\syslinux.cfg
C:\ubcd-stripped\BOOT\syslinux\vesamenu.c32

View Postcdob, on Jul 22 2009, 11:41 AM, said:

Does exist files:
BOOT\BCD
BOOT\BOOT.SDI
BOOT\BOOTFIX.BIN
Case is importand.
Yes see above.

View Postcdob, on Jul 22 2009, 11:41 AM, said:

Which bootmgr do you use?
Do you use Vista, SP1, SP2, WAIK, Windows 7

Which BCD do you use?
Do you use a default file? Do you use a edited file?
I downloaded the Vista Recovery Environment ISO from here: http://neosmart.net/blog/2008/windows-vist...-disc-download/
I downloaded the 32bit edition, extracted with 7zip and properly renamed the files and folders to all caps (see above).

I confirmed that the plain ISO boots to Vista Recovery environment.

BCD file is default one from this ISO and not modified.

etfsboot.com was not included on this iso so I downloaded it from here: http://www.mydigitallife.info/wp-content/u...01/etfsboot.com

View Postcdob, on Jul 22 2009, 11:41 AM, said:

Which bootmgr entry do you use at isolinux.cfg?
Post your bootmgr isolinux.cfg entry.
isolinux.cfg entry
DEFAULT main

LABEL main
KERNEL /boot/syslinux/menu.c32
APPEND /ubcd/menus/syslinux/main.cfg

and then ubcd/menus/syslinux/main.cfg looks like this:
MENU INCLUDE /ubcd/menus/syslinux/defaults.cfg
DEFAULT /boot/syslinux/menu.c32
PROMPT 0

LABEL -
	MENU LABEL BOOTMGR
	COM32 /boot/syslinux/chain.c32
	APPEND boot ntldr=/BOOTMGR

MENU SEPARATOR

LABEL -
MENU LABEL Boot next device
TEXT HELP
 Boot next device in the boot sequence. Supporting BIOS required. May not work
 with all systems.
ENDTEXT
LOCALBOOT -1

LABEL -
MENU LABEL Reboot
TEXT HELP
 Reboot the PC
ENDTEXT
KERNEL /boot/syslinux/reboot.c32
APPEND -

MENU SEPARATOR

View Postcdob, on Jul 22 2009, 11:41 AM, said:

Which ISO file size do you get? Do you get a file greater 4GB ?

Which mkisofs -version do you use?
ISO size is 385mb with ubcd and the Vista Recovery environment. With the ubcd files and BOOT.WIM stripped out its 5MB.

I am using the one included with UBCD 5.0b12 = mkisofs 2.01-bootcd.ru (i386-pc-mingw32)

View Postcdob, on Jul 22 2009, 11:41 AM, said:

Cross checked myself:
mkisofs.exe -iso-level 4 -l -R -J -joliet-long -D -V VOLUME_ID -o ..\o.iso -b "BOOT/isolinux/isolinux.bin" -c "BOOT/isolinux/boot.catalog" -hide "BOOT/isolinux/boot.catalog" -hide-joliet "BOOT/isolinux/boot.catalog" -no-emul-boot -boot-load-size 4 -boot-info-table -graft-points /BOOT/etfsboot.bin=BOOT/etfsboot.com .
Bootmgr does find BCD, PE does boot.

or
mkisofs.exe -iso-level 4 -r -joliet-long -D -V VOLUME_ID -o ..\o.iso -b "BOOT/isolinux/isolinux.bin" -hide "boot.catalog" -hide-joliet "boot.catalog" -no-emul-boot -boot-load-size 4 -boot-info-table -graft-points /BOOT/etfsboot.bin=BOOT/etfsboot.com .
I tried both the those mkisfofs lines and the result is still the same (File: \Boot\BCD Status: 0xc000000e Info: An error occurred while attempting to read the boot configuration data.)

The way I create the iso is run administrator command prompt, CD c:\ubcd-stripped\ubcd\tools\win32\ubcd2iso\, and then run either ubcd2iso or ubcd2iso1 or ubcd2iso2.

the script variables are: (script) (ubcdfileslocation eg. c:\ubcd-stripped) (location/name of what i want the ISO to be eg. c:\ubcd-stripped.iso)

ubcd2iso = original build script from ubcd 5.0b12

ubcd2iso1 = modified mkisofs line to look like first one in quote:
"%~p0\mkisofs.exe" -iso-level 4 -l -R -J -joliet-long -D -V %VOLUME_ID% -o "%a2%" -b "BOOT/isolinux/isolinux.bin" -c "BOOT/isolinux/boot.catalog" -hide "BOOT/isolinux/boot.catalog" -hide-joliet "BOOT/isolinux/boot.catalog" -no-emul-boot -boot-load-size 4 -boot-info-table -graft-points /BOOT/etfsboot.bin=BOOT/etfsboot.com .


ubcd2iso2 = modified mkisofs line to look like your second one in quote:
"%~p0\mkisofs.exe" -iso-level 4 -r -joliet-long -D -V %VOLUME_ID% -o "%a2%" -b "BOOT/isolinux/isolinux.bin" -hide "boot.catalog" -hide-joliet "boot.catalog" -no-emul-boot -boot-load-size 4 -boot-info-table -graft-points /BOOT/etfsboot.bin=BOOT/etfsboot.com .


Please feel free to download the files I provided in the beginning of the thread. They are the same files I am using.

What do I seem to be missing?

thanks,
dpc

This post has been edited by delicatepc: 23 July 2009 - 12:37 PM


#7 User is offline   cdob 

  • Friend of MSFN
  • PipPipPipPipPip
  • Group: Members
  • Posts: 726
  • Joined: 29-September 05

Posted 23 July 2009 - 10:23 AM

View Postdelicatepc, on Jul 23 2009, 03:06 AM, said:

LABEL -
MENU LABEL BOOTMGR
COM32 /boot/syslinux/chain.c32
APPEND boot ntldr=/BOOTMGR

Chain.32 does cause current behaviour.

Try the classic approach: boot sector file.
Isolinux support extension .bin. Hence the mkisofs -graft-points
label b
  MENU LABEL ^BOOTMGR etfsboot.bin
  kernel /BOOT/etfsboot.bin


Back to chain.32:
http://www.boot-land.net/forums/index.php?...ost&p=72127

Icecube said:

chain.c32 did always set the boot drive to 0x80 in the DL register when it was started from ISOLINUX, because it was assumed that chainloaded bootsectors are made for hard drives.
Bootmgr dosn't detect a CD anymore. Bootmgr search BCD at a hard disk layout and dosn't find one.

There is a fixed chain.32 abailable at above link. Bootmgr does find BCD at CD.

#8 User is offline   delicatepc 

  • Newbie
  • Group: Members
  • Posts: 24
  • Joined: 17-June 09

Posted 23 July 2009 - 12:35 PM

It works!!! Thank you!

I am going to use the patched chain.c32 for now and maybe in the future I will switch to the classic approach you mentioned (but I dont want an extra menu item just for when booting ISO). For my USB installs they are using latest chain.c32 from syslinux and the iso uses all the same files except the script replaces the chain.c32 with the patched one for the iso.

Thank you very much,

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users



All trademarks mentioned on this page are the property of their respective owners
Copyright © 2001 - 2011 msfn.org
Privacy Policy