help-grub
[Top][All Lists]
Advanced

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

Re: Installing Grub2 To Manage Window 8+ Systems


From: Jordan Uggla
Subject: Re: Installing Grub2 To Manage Window 8+ Systems
Date: Tue, 17 Mar 2015 18:48:43 -0700

In the future, please don't send html email to help-grub (most other
technical mailing lists frown upon html email as well).

On Tue, Mar 17, 2015 at 11:51 AM, Marion Smith <address@hidden> wrote:
> Our company rents hundreds of computers to clients for short term events.
> The networks can be as large as 200+ laptops per event. To easily deploy
> these laptops we created years ago a Grub Legacy solution that lets us boot
> to a Grub menu and have the choice to boot the installed OS or to use Ghost
> to re-image the hard drive with some other standard OS configuration.
>
>
>
> With the advent EFI and GPT, we are looking at moving to a Grub 2 with
> Clonezilla as the imaging software. We are attempting to inject Grub 2 into
> the EFI partition and have that boot first and show a menu. The only way we
> have been able to do this is using Ubuntu to install and manage Grub. We are
> hoping to not have to maintain a Linux partition on the systems if at all
> possible.
>
>
>
> Is there a way to install Grub into the EFI partition to work stand alone?

Yes.

>
> Is there a way to install Grub into the EFI partition but have it reference
> a FAT partition (that doesn’t have an OS) for the config files?

Yes.

>
> Can we direct Grub to reference the config files in a folder in the EFI
> partition?

Yes.

>
> Would a live type installation work better (like the live USB from
> Clonezilla)?

I don't quite understand this question, but I think that my full reply
below will clarify this for you as well.

Grub definitely does not require an OS to be able to function (though
indeed without any OS to boot at all, grub is usually not very
useful). You should use grub-install to install grub, and note three
important options, first --boot-directory:

Passing --boot-directory=/path/to/some/directory/ as an option to
grub-install will cause it to create its grub/ directory as a
subdirectory of the path specified. At boot grub will read it's
grub.cfg from this grub/ directory. Pretty much any filesystem or
configuration you could think of can be used for this purpose
(including the EFI System Partition), and the grub.cfg stored here can
itself read files (including loading other grub.cfg files) from any
other devices on the system. If this option is not specified then
"--boot-directory=/boot/" is implied. This option is common to all
architectures.

Second, --efi-directory=/path/to/mountpoint/of/ESP/ :

This option specifies which EFI System Partition should be used for
grub's efi image. If not specified then it defaults to
$boot_directory/efi/ (so if neither --boot-directory nor
--efi-directory are specified, --efi-directory=/boot/efi/ is implied).

Third, --removable:

This is another EFI specific option, which disables writing a boot
entry to your boot firmware's NVRAM and creates grub's efi image at
the path $efi_directory/EFI/BOOT/BOOTX64.EFI , which is where a UEFI
based machine will look for an efi image if it's asked to boot a drive
for which it has no entry in its nvram. It's most often used with
removable media, like USB drives, which you want to be able to use to
boot multiple machines, without having to prepare a boot entry for
each new machine you want to boot it with. That said, it works fine
for internal drives as well.

As long as you're careful that you're passing appropriate values for
--boot-directory and --efi-directory, there is no difference between
grub-install run from a normal GNU/Linux installation or from a
LiveCD/USB. I would recommend that you choose a distribution with a
recent version of grub though, just because that's always good to have
:)

As for writing a grub.cfg for this setup, see:
http://www.gnu.org/software/grub/manual/grub.html#Multi_002dboot-manual-config

-- 
Jordan Uggla (Jordan_U on irc.freenode.net)



reply via email to

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