grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to prepare an ISO 9660 CD for booting via GRUB ?


From: Thomas Schmitt
Subject: Re: How to prepare an ISO 9660 CD for booting via GRUB ?
Date: Sun, 18 Apr 2010 13:26:35 +0200

Hi,

> Ok, legacy :(. But --efi-boot would have no legacy.

--efi-boot will be all at your service. :))
The more definite your wishes, the more swift
their implementation.

Maybe we should call it --efi-grub-boot just
to make clear whom it cares for ?

Shall the --efi* option have any influence on
the BIOS boot stuff except the boot catalog ?
(Default Entry, BIOS boot image, ...)


> http://bzr.savannah.gnu.org/r/grub/people/phcoder/rescue-efi/

My bzr is too old for that. :(
It is from 2009. Hrmpf.
Is there a web interface to browse the source 
for a first glimpse ?


> BIOS+EFI one should look like ...

Ok. I will start this in a few days.
Keep your test environment ready. :))

------------------------------------------------


xorriso-0.5.3 timestamp 2010.04.18.100814
allows to set LBA sorting weights.
Within the mkisofs emulation it is:

  --sort-weight number ISO-path

If ISO-path is a directory, then its whole tree
is affected. --sort-weight can get overridden by
further --sort-weight options. They get applied
after all files are added to the image.

The boot catalog already has a hardcoded weight
of 1000 in libisofs. It cannot be influenced by
--sort-weight because it gets created after the
image manipulations are done.
The boot catalog of grub-mkrescue has no ISO-path
anyway (no option -c).

So in grub-mkrescue , this would give all files
weight 0, then override the /boot/grub tree by 1,
and the -b file by 2:

  --sort-weight 0 / \
  --sort-weight 1 /boot/grub \
  --sort-weight 2 /boot/grub/i386-pc/eltorito.img \


After the image is written, xorriso can display
the data LBAs of regular files:

  xorriso \
     -indev image.iso \
     -find / -sort_lba -exec report_lba -- \
     2>/dev/null | less

yields:
  Report layout: xt , Startlba ,   Blocks , Filesize , ISO image path
  File data lba:  0 ,       38 ,       12 ,    24317 , 
'/boot/grub/i386-pc/eltorito.img'
  File data lba:  0 ,       50 ,        6 ,    10564 , 
'/boot/grub/i386-pc/acpi.mod'
  ...

For the boot catalog LBA, one has to peek binary
(even if there was a ISO-path leading to it).
This reads the LBA word from El Torito record:

  dd if=image.iso bs=1 skip=34887 count=4 \
     2>/dev/null | od -x

yields LBA 37 (decimal)
  0000000 0025 0000


(There is a mkisofs option -sort with a file as
 argument where single files get a weight.
 Wildcards are promised in mkisofs/README.sort.
 For now i deem that rather unappealing.)

------------------------------------------------


I will now finish multi-session MBR handling and
release libisoburn-0.5.4.
Then begins the next development cycle with EFI,
adjustable boot catalog weight, ...


Have a nice day :)

Thomas





reply via email to

[Prev in Thread] Current Thread [Next in Thread]