On Wed, Mar 20, 2013 at 11:36 PM, Arbiel (gmx) <[email protected]> wrote: > In fact, this is a first try. My goal is to look for a partition name, and > not a UUID. And when the partition has been found, I will boot immediately, > without any user action. The USB keys are to be "regular" NTFS or FAT keys, > without any track of Linux >
If you intended to implement it using embedded config, much more easier is to make normal grub install on USB stick and implement it in grub.cfg. Do not forget that embedded config runs very early in restricted environment (basically, in rescue mode) when very limited scripting capabilities and only subset of grub features are available. You need to enter normal mode before you can do anything useful here. > > Where can I find reliable information ? > Supported way to install grub is to use grub-install. grub-mkimage, embedded config, modules available etc are internal implementation details that can change from version to version and platform to platform. If you want to use them directly you probably need to follow grub development or read sources. But in your case you simply do not need it. grub-install + suitable grub.cfg is enough and makes changing configuration also easier. > > Le 20/03/2013 18:40, Andrey Borzenkov a écrit : > >> В Wed, 20 Mar 2013 10:34:46 +0100 >> "Arbiel (gmx)" <[email protected]> пишет: >> >>> Hi >>> >>> I try to record in the MBR of USB keys an autonomous MBR (no support of >>> any other directory or file) to boot a PC with the system located on a >>> partition whose name is predefined "cielos", and in case this fails, to >>> chainload to the hd0's MBR. >>> >>> I've understood from Grub's Manual that to achieve such a goal, I have >>> to embed the file using option -c of grub-mkimage. >>> >>> I have now modified the --grub-mkimage option to point to the shell >>> script which creates /media/maisonnette/grub/core.img and from there I >>> have been able to imbed the file and launch a boot process. However, >>> this process failed, with a "no such device : the uuid I used in my >>> search.fs_uuid command" whereas such a device exists on my external >>> device >>> >> >> You need to include much more of grub modules than you did. At least >> you need disk driver and filesystem driver to read UUID. >> >> grub-install creates exactly the same embedded config. Why do not you >> simply use it? >> >>> The imbedded file reads >>> >>> search.fs_uuid 0aceef09-a694-4105-bade-2dca95a09a08 root >>> set prefix=(root)/boot/grub >>> >>> and a sudo blkid | grep 0aceef09-a694-4105-bade-2dca95a09a08 responds >>> >>> /dev/sdb5: LABEL="cielos" UUID="0aceef09-a694-4105-bade-2dca95a09a08" >>> TYPE="ext4" >>> >>> I try to understand why the search fails. >>> >>> Le 20/03/2013 04:18, Andrey Borzenkov a écrit : >>>> >>>> В Wed, 20 Mar 2013 00:15:07 +0100 >>>> "Arbiel (gmx)" <[email protected]> пишет: >>>> >>>>> Hi >>>>> >>>>> I'm trying to embed a file into core.img. I followed instructions from >>>>> GNU Grub Manual's 5.4 Embedding a configuration file into Grub and >>>>> tried >>>>> to replicate the example given there with a config file figuring two >>>>> lines >>>>> >>>>> search.fs_uuid the_uuid_of_my_partition root >>>>> set prefix=($root)/boot/grub >>>>> >>>>> >>>>> I used the following commands >>>>> >>>>> #! /bin/bash >>>>> cd "${1}" >>>>> cat 1> grub/embed.cfg <<EOF >>>>> search.fs_uuid 0aceef09-a694-4105-bade-2dca95a09a08 root >>>>> set prefix=($root)/boot/grub >>>>> EOF >>>>> sudo grub-mkimage -c 'grub/embed.cfg' -o 'grub/grub-image' -O i386-pc >>>>> -d >>>>> '/usr/lib/grub/i386-pc' -C none search_fs_uuid >>>> >>>> >>>> -O and -d together are redundant. >>>> >>>>> sudo chmod +x 'grub/grub-image' >>>>> sudo grub-install --boot-directory=/media/maisonnette >>>>> --grub-mkimage=grub/grub-image /dev/sdb 2>grub/msg.log >>>>> >>>> >>>> --grub-mkimage points to program to create image, not to image itself. >>>> >>>> You do not explain what you attempt to achieve. May be using grub-rescue >>>> to build ISO image that includes full grub and can optionally include >>>> arbitrary files would be easier? >>>> >>>>> I get the following error message >>>>> >>>>> grub/grub-image: 1: grub/grub-image: Syntax error: word unexpected >>>>> (expecting ")") >>>>> >>>>> Can anybody tell me what's wrong, knowing that my partition >>>>> /media/maisonnette has nothing to do with the >>>>> 0aceef09-a694-4105-bade-2dca95a09a08 partition. >>>>> >>>>> Thank you >>>>> >>>>> I used the following command >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Help-grub mailing list >>>>> [email protected] >>>>> https://lists.gnu.org/mailman/listinfo/help-grub >>>> >>>> >> > _______________________________________________ Help-grub mailing list [email protected] https://lists.gnu.org/mailman/listinfo/help-grub
