bugGNU GRUB - Bugs: bug #38868, update-grub generates bad grub.cfg...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #38868: update-grub generates bad grub.cfg linux vm root=UUID in separate boot partition

Submitter:  Douglas P Finch <doug10xspeedup>
Submitted:  Thu 02 May 2013 08:31:33 AM UTC
   
 
Category:  Booting Severity:  Major
Priority:  5 - Normal Item Group:  Software Error
Status:  Invalid Privacy:  Public
Assigned to:  None Originator Name:  doug10xspeedup
Open/Closed:  Closed Release:  other
Release:  Reproducibility:  Every Time
Planned Release:  None

Thu 02 May 2013 10:58:55 AM UTC, comment #1: 

Wrong LPARAMS is a bug in linux-boot-prober. Please take issue to debian-boot team.

Vladimir Serbinenko <phcoder>
Group administrator
Thu 02 May 2013 08:31:33 AM UTC, original submission:  

The release is on ubuntu precise grub 1.99-21ubuntu3.9.

I have 4 servers, each with a 300GB main drive for Ubuntu roots.
Each is GPT partitioned with a BIOS Boot partition, a separate boot partition, and many [8] root partitions all sharing the same boot partition. This works great, and is easy to upgrade.

The problem is that the grub.cfg file generated by update-grub
has many repeated incorrect root=UUID=xxxxxxxxxxxxxxxxxxxxxxxx
parameters ending the linux vmlinuz lines.

One of the stock formating scripts in /etc/grub.d, specifically 30_os-prober has a significant error on blank line 217.

If I insert the following lines of code there, then the problem can be resolved:

#####   ===== begin fix =====
        LBOOTUUID="`blkid -o value -s UUID -d ${LBOOT}`"
        echo "  Found boot device ${LBOOT} UUID=${LBOOTUUID}" >&2
        LROOTUUID="`blkid -o value -s UUID -d ${LROOT}`"
        LPARAMS="`echo ${LPARAMS} | sed -e s/UUID=..................................../UUID=${LROOTUUID}/`"
        echo "  Found root device ${LROOT} UUID=${LROOTUUID}" >&2
        echo "  Fix ${LROOT} linux vm root=UUID=${LROOTUUID}" >&2
#####   ===== end fix =====

For release just comment out the LBOOT stuff and the echo stuff.

The blkid tool provides the correct UUID for each partition.
The sed tool is used to patch in the correct UUID for each root.

The problem and resolution are rock solid on each of my servers.
This must be tested not just dual boot, but many [8] way boot.

There are many optimizations possible, there is no need to repeat invocations of the tools blkid and sed, they should be combined much earlier in the linux-boot-prober.

Anytime,

Doug

Douglas P Finch
Principal Software Developer and Consultant
-email is unavailable-
main: 253-863-3007
cell: 253-218-9313


Douglas P Finch <doug10xspeedup>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by phcoder (Posted a comment)
  • -email is unavailable- added by doug10xspeedup (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

     

    Follow 2 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2013-07-15 phcoder StatusNone Invalid
        Open/ClosedOpen Closed

    Back to the top

    Powered by Savane 3.13-3230.
    Corresponding source code