From: "Thomas Schmitt" <scdbackup@gmx.net>
To: grub-devel@gnu.org
Subject: Re: How to prepare an ISO 9660 CD for booting via GRUB ?
Date: Fri, 02 Apr 2010 11:32:02 +0200 [thread overview]
Message-ID: <105805073418349@192.168.2.69> (raw)
In-Reply-To: <4BB5218F.2000000@gmail.com>
Hi,
Drake Donahue wrote:
> > > mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4
> > > -boot-info-table -o grub.iso iso
> run the script it generates the image, presuming on a linux system
Regrettably i cannot spot stage2_eltorito on my
SuSE 10.2 (which has such files but not eltorito)
or on Debian 5.04 (where the GRUB installation
has files like cdboot.img).
The Debian system (where i am novice too) does
have /usr/bin/grub-mkrescue which has the line
PACKAGE_VERSION=1.96
It uses genisoimage and no --embedded-boot for
a MBR-style image.
So my plan for development looks like this:
- Use grub-mkrescue on Debian to produce a
bootable CD.
- Examine it and check whether libisofs can
produce the same. Make necessary enhancements.
- Substitute genisoimage in grub-mkrescue by
xorriso and produce bootable CD.
- Upgrade Debian to GRUB 1.98 and try to produce
an image that boots from USB stick and from CD.
This may last a few days. I have to dive into
libisofs and check where we might be glued
to ISOLINUX, inadvertedly.
I will have to learn about GRUB installation
and might need to cry for help.
When i can perform grub-mkrescue gestures, then
i plan to enable hard-disk emulation so that
others (Vladimir ?) can test that.
Vladimir wrote about HFS:
> I have an imac g3 I could test it on. The only catch is that I have no
> burner at home. But it should be manageable. I never looked deeply into
> HFS but I think I can do it.
If you have the time, then try to find specs for
HFS and make a sketch how a HFS tree would
be structured.
I would then prepare hooks in libisofs where
a HFS tree can be generated and inserted into
the emerging ISO image.
Then we could put our knowledge together for
the HFS tree generator.
libisofs holds a tree model of nodes, from which
the image trees get derived. Ideally, i would
have made any needed preparations in the tree
model, and you would know how to express it in
HFS.
This is of course a long term open ended
endeavor.
>>> --protective-msdos-label
> 3) Put 0x80 (for bootable partition), 0, 2, 0 (C/H/S of the start), 0xcd
> (partition type), [3 bytes of C/H/S end], 0x01, 0x00, 0x00, 0x00 (LBA
> start in little endian), [LBA end in little endian] at 446-462
What number of sectors/head and heads/cylinder
to use ?
32 sectors = 1 head, 64 heads = 1 cylinder
would limit C/H/S size to 1 GB, due to the
10 bit limit of cylinder count.
The partition table format would allow
63 (or 64 ?) sectors, 255 (or 256 ?) heads
= ~ 8 GB.
(isohybrid happily truncates C/H/S size to 1 GB
and expresses the real size in "LBA end".)
me:
> > --protective-msdos-label without --embedded-boot ?)
Vladimir:
> Yes, for example to allow people dd images to USB sticks without a fear
> of another OS willing to format the stick.
So OSes would pop up dangerous dialogs if they
see a USB stick without partition table ?
I would then have to write all zeros except the
one slot in the partition table ?
------------------------------------------------
Curiosity to fill my lack of MBR knowledge:
How does "0x01, 0x00, 0x00, 0x00 (LBA start" match
with "0, 2, 0 (C/H/S of the start)" ?
I see in isohybrid a similar addition of 1 to
start sector. So it is obviously correct.
But why ?
Isn't there any field where the number of sectors
per head, and heads per cylinder is recorded ?
Is there a convention to express this in
"C/H/S end" ? isohybrid seems to do so:
heads-1 , sectors | high(cyls-1) , low(cyls-1)
This gives in the sum the number of cyls.
One could express that easier.
Purpose could be to squeeze in the 1024th cylinder
or to express heads/cyl and sectors/head.
------------------------------------------------
Have a nice day :)
Thomas
next prev parent reply other threads:[~2010-04-02 9:33 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-01 13:49 How to prepare an ISO 9660 CD for booting via GRUB ? Thomas Schmitt
2010-04-01 16:59 ` Frombenny
2010-04-01 17:59 ` Thomas Schmitt
2010-04-01 19:28 ` Drake Donahue
2010-04-01 20:43 ` Thomas Schmitt
2010-04-01 20:52 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-01 21:47 ` Drake Donahue
2010-04-01 18:22 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-01 20:25 ` Thomas Schmitt
2010-04-01 20:44 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-01 22:05 ` Thomas Schmitt
2010-04-01 22:43 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-02 9:32 ` Thomas Schmitt [this message]
2010-04-02 11:51 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-02 17:10 ` Thomas Schmitt
2010-04-02 17:24 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-03 8:03 ` Thomas Schmitt
2010-04-03 14:15 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-06 11:26 ` Thomas Schmitt
2010-04-07 12:47 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-07 14:11 ` Thomas Schmitt
2010-04-09 20:53 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-09 22:28 ` Thomas Schmitt
2010-04-09 22:53 ` Seth Goldberg
2010-04-10 7:37 ` Thomas Schmitt
2010-04-10 11:09 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-10 11:57 ` Thomas Schmitt
2010-04-10 12:27 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-10 12:57 ` Thomas Schmitt
2010-04-10 15:22 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-10 23:14 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-11 7:46 ` Thomas Schmitt
2010-04-11 12:29 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-11 12:56 ` Thomas Schmitt
2010-04-11 17:32 ` Colin Watson
2010-04-17 14:55 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-17 17:52 ` Thomas Schmitt
2010-04-17 18:04 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-17 19:39 ` Thomas Schmitt
2010-04-17 20:30 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-18 11:26 ` Thomas Schmitt
2010-04-24 19:54 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-18 12:41 ` Thomas Schmitt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=105805073418349@192.168.2.69 \
--to=scdbackup@gmx.net \
--cc=grub-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.