grub: File name syntax

 
 13.2 How to specify files
 =========================
 
 There are two ways to specify files, by "absolute file name" and by
 "block list".
 
    An absolute file name resembles a Unix absolute file name, using '/'
 for the directory separator (not '\' as in DOS). One example is
 '(hd0,1)/boot/grub/grub.cfg'.  This means the file '/boot/grub/grub.cfg'
 in the first partition of the first hard disk.  If you omit the device
 name in an absolute file name, GRUB uses GRUB's "root device"
 implicitly.  So if you set the root device to, say, '(hd1,1)' by the
 command 'set root=(hd1,1)' (⇒set), then '/boot/kernel' is the
 same as '(hd1,1)/boot/kernel'.
 
    On ZFS filesystem the first path component must be
 VOLUME'@'[SNAPSHOT].  So '/rootvol@snap-129/boot/grub/grub.cfg' refers
 to file '/boot/grub/grub.cfg' in snapshot of volume 'rootvol' with name
 'snap-129'.  Trailing '@' after volume name is mandatory even if
 snapshot name is omitted.