[Bug 1876331] Re: update-grub fails to add ZFS menu entries
Jim Hunziker
1876331 at bugs.launchpad.net
Mon May 11 13:21:45 UTC 2020
Ah - that's it! My /bin/sh is symlinked to /bin/bash. I believe
following the instructions for installing a GNU Radio SDK is why I made
that change:
"On some distributions (e.g. Ubuntu), PyBOMBS can run into shell issues. To avoid those problems, it is recommended to run the following command
before continuing, and choose "no" in the prompted dialogue:
$ sudo dpkg-reconfigure dash"
Is it expected that changing the system's default shell would break
scripts?
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to grub2 in Ubuntu.
https://bugs.launchpad.net/bugs/1876331
Title:
update-grub fails to add ZFS menu entries
Status in grub2 package in Ubuntu:
Confirmed
Bug description:
This is for:
Ubuntu 20.04 LTS
grub-common 2.04-1ubuntu26
I don't know how I got into this mess (maybe by removing ZFS @install
snapshots?), but update-grub stopped adding any Ubuntu entries to my
menu.cfg.
The culprit is the use of \t as a field separator in
/etc/grub.d/10_linux_zfs.
There's a line that says:
echo "${dataset}\t${is_zsys}\t${machine_id}\t${pretty_name}\t${last_used}\t${initrd_device}\t${initrd_list}\t${kernel_list}\t${last_booted_kernel}"
Instead, it should say:
echo -e "${dataset}\t${is_zsys}\t${machine_id}\t${pretty_name}\t${last_used}\t${initrd_device}\t${initrd_list}\t${kernel_list}\t${last_booted_kernel}"
By default, echo does not interpret the escaped tab sequence, \t. So
all of the awk lines that use it as a field separator elsewhere in the
script fail.
Adding the above -e flag fixed my problem.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1876331/+subscriptions
More information about the foundations-bugs
mailing list