O que é '$ menuentry_id_option' no grub?

5

Eu estava mexendo com meus arquivos de configuração do GRUB 2 ( /boot/grub/grub.cfg ) e notei que a linha menuentry para a inicialização do Ubuntu adicionada automaticamente se parece com isso:

menuentry 'Ubuntu 14.04 Trusty Tahr (on sda5)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-fe3a2033-d77c-4d8c-ba04-3bb27b267dc2' {

O que é essa $menuentry_id_option 'gnulinux-simple-fe3a2033-d77c-4d8c-ba04-3bb27b267dc2' parte no final e eu preciso dela quando adiciono novas opções de inicialização?

Então, o que significa o $menuentry_id_option ?
Preciso usá-lo quando adiciono outro item de menu de inicialização para outra distro?
O que aconteceria se eu não o incluísse?

Além disso, há alguma referência do GRUB para perguntas sobre o que essas coisas fazem?

    
por Robbie Wxyz 30.10.2014 / 01:26

2 respostas

4

A linha que você está procurando é:

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

Dá-lhe o valor de feature_menuentry_id e, se for igual a y , adicionará o parâmetro --id às entradas do seu menu:

menuentry 'Ubuntu 14.04 Trusty Tahr (on sda5)' --class ubuntu --class gnu-linux --class gnu --class os --id 'gnulinux-simple-fe3a2033-d77c-4d8c-ba04-3bb27b267dc2' {

Se não for, então vai deixar como está:

menuentry 'Ubuntu 14.04 Trusty Tahr (on sda5)' --class ubuntu --class gnu-linux --class gnu --class os 'gnulinux-simple-fe3a2033-d77c-4d8c-ba04-3bb27b267dc2' {

O parâmetro --id para menuentry não está definido no manual para menuentry , mas é possível adivinhar aleatoriamente o UUID para a partição da qual o kernel deve inicializar.

    
por 30.10.2014 / 02:02
3

De acordo com este email: link

trecho
> @@ -3135,6 +3136,9 @@
>  The @option{--hotkey} option associates a hotkey with a menu entry.
>  @var{key} may be a single letter, or one of the aliases @samp{backspace},
>  @samp{tab}, or @samp{delete}.
> +
> +The @option{--id} may be used to associate unique identifier with a menu entry. address@hidden is arbitrary string.

It has to be [a-zA-Z_][0-9a-zA-Z_]* (while arbitrary string would work it's not a good idea.

Esta opção realmente dá ao menuentry um ID único, mas não está documentado porque não é recomendado. AFAIU, a coisa do UUID da partição é meramente uma prática que muitas distros seguem ao criar esse id.

No Arch, por exemplo, o formato é "gnulinux-core repo kernel-true- {UUID}".

    
por 10.06.2015 / 18:01

Tags