All of lore.kernel.org
 help / color / mirror / Atom feed
From: Robert Millan <rmh@aybabtu.com>
To: The development of GRUB 2 <grub-devel@gnu.org>
Subject: Re: grub-probe, but in reverse?
Date: Fri, 31 Jul 2009 18:15:12 +0200	[thread overview]
Message-ID: <20090731161512.GH14675@thorin> (raw)
In-Reply-To: <20090731103602.GQ11691@riva.ucam.org>

On Fri, Jul 31, 2009 at 11:36:02AM +0100, Colin Watson wrote:
> On Wed, Jul 29, 2009 at 05:03:44PM -0400, Pavel Roskin wrote:
> > On Wed, 2009-07-29 at 19:35 +0100, Colin Watson wrote:
> > > $ sudo grub-probe -d /dev/sda1 -t drive
> > >   (hd0,1)
> > > 
> > > I have a reason to want to do the reverse of this: I have a
> > > libparted-based program that ensures that at least one partition on a
> > > disk is marked active (needed for some BIOSes), and would like to call
> > > it on the disk selected for installation of GRUB in d-i. Of course
> > > libparted is only going to understand OS device names. If possible I'd
> > > rather avoid reading device.map by hand to figure out how to map (hd0,1)
> > > back to /dev/sda1. Is there any way to do this with the code as it
> > > stands, and if not would it make sense to make it possible to pass GRUB
> > > device names to grub-probe?
> > 
> > I think device.map is fundamentally unreliable and should be obsoleted.
> > I don't know where you are getting the GRUB device names, but I suggest
> > that you use UUID instead.
> 
> They're entered by users choosing where to install GRUB, whom we can
> hardly expect to enter UUIDs by hand. Perhaps we can figure out how to
> give them a select list of available choices, which could then include
> UUIDs behind the scenes ...

Please don't use UUIDs for this.  UUIDs identify a dataset (filesystem), not
its container.  It's feasible for someone to install GRUB to a partition that
doesn't have any filesystem, for example.

Colin, in your specific problem, I think the best solution is to avoid using
GRUB drives entirely.  When in userland, they're meant for GRUB internal
consumption, and we don't make promises about them matching any given device
later on (when we run on BIOS).

Instead, just give a Linux device to grub-install.  E.g.:

  $ grub-install /dev/sda1

Does this work for you?

Alternatively, when using the Debian package you can just rely on its
recently-added grub-pc/install_devices template.  But I'm missing context
to your problem so I'm not sure if this helps.

-- 
Robert Millan

  The DRM opt-in fallacy: "Your data belongs to us. We will decide when (and
  how) you may access your data; but nobody's threatening your freedom: we
  still allow you to remove your data and not access it at all."



  parent reply	other threads:[~2009-07-31 16:15 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-29 18:35 grub-probe, but in reverse? Colin Watson
2009-07-29 21:03 ` Pavel Roskin
2009-07-31 10:36   ` Colin Watson
2009-07-31 11:15     ` Vladimir 'phcoder' Serbinenko
2009-07-31 16:15     ` Robert Millan [this message]
2009-07-31 16:19     ` Pavel Roskin

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=20090731161512.GH14675@thorin \
    --to=rmh@aybabtu.com \
    --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.