[Pkg-systemd-maintainers] About a problem with GRUB2 rescue images and /dev/disk/by-label

Thomas Schmitt scdbackup at gmx.net
Sat Nov 23 08:56:07 GMT 2013


Hi,

> > Obviously, the variables ID_FS_LABEL_ENC and ID_FS_USAGE should
> > not be copied from parent device to partition device, but only
> I'm not sure if that is so obvious. I mean, yeah, it's one way of fixing
> it, but I personally can't judge if there are any downsides by changing
> this.

I do not claim that my experimental fix is valid.
It only shall demonstrate that the rule with IMPORT is
the reason for the undesirable behavior.

But i think it is obvious that a partition either should have
an own readable filesystem ID or that it should have no
filesystem ID at all.
To unconditionally inherit the ID of the parent device makes
no sense to me. Even if i try hard to invent a use case.


> Note that sending a patch is the best way to get this fixed, or at least
> encourage discussion about the change you are proposing to make.

Creating a presentable patch turns out to be not so easy.

I assume to have found the current source of rules.
But
  http://cgit.freedesktop.org/systemd/systemd/plain/rules/60-persistent-storage.rules
differs from Debian's by a rule that plays a role in the problem.

Where Debian has:
  # probe filesystem metadata of disks
  KERNEL!="sr*", IMPORT{program}="/sbin/blkid -o udev -p $tempnode"
i see on cgit.freedesktop.org:
  # probe filesystem metadata of disks
  KERNEL!="sr*", IMPORT{builtin}="blkid"

If i replace the Debian 6 rule by the upstream rule, then the
USB stick does not show up in /dev/disk/by-label. The man page
udev(7) does not list "builtin" as IMPORT{} type.
So i assume it is not supported in Debian 6.

Does ist work in current Debian ?
Does it by chance overwrite the imported values by empty values
if there is no filesystem ID on the partition ?


> If, after posting that patch and waiting for a couple of days, you still
> have trouble reaching upstream, let me know and I can try to pull some
> strings.

It seems that my system is not ready for testing a patch
that is based on systemd upstream.
I feel uncomfortable with the idea to stumble into that
community while being poorly educated and poorly prepared.


Would you accept the problem as a valid Debian bug ?

An ISO image which shows the problem is in wheezy's
  grub-rescue-pc_1.99-27+deb7u2_amd64.deb
as
  usr/lib/grub-rescue/grub-rescue-cdrom.iso
It has only 2 MB of size. Despite its name, it boots
from USB stick, too, if one copies it onto the parent
device:
  dd if=grub-rescue-cdrom.iso of=/dev/sdb

The filesystem ID "ISOIMAGE" then shows up in Debian 6 as
  /dev/disk/by-label/ISOIMAGE -> ../../sdb1
which is not mountable
   # mount /dev/disk/by-label/ISOIMAGE /mnt
   mount: you must specify the filesystem type
whereas
   # mount /dev/sdb /mnt
   #

(The Debian installation ISOs let BIOS boot via ISOLINUX.
The ISOLINUX isohybrid MBR has a mountable partition which
starts at LBA 0 or 16. So the problem does not show up with
them.)


Have a nice day :)

Thomas





More information about the Pkg-systemd-maintainers mailing list