Как изменить заголовок «GNU GRUB version x.xx»

Та же причина, что и в ответе bashBedlam, но другой код (опция -nне требуется, это экономит два байта), просто измените эту строку:

 howmany=${2:-10}

на это :

 howmany=${2:--10}

1
29.11.2016, 01:00
2 ответа

Вы можете отредактировать исполняемый файл grub и заменить заголовок строкой той же длины. Особенностью формата ELF является отсутствие контрольной суммы.

В моем Debian 7 это (найдено с помощью grep -l 'GNU GRUB' ) в /boot/grub/normal.mod , что od Показывает, что используется строка с завершающим нулем:

           726f    616d    206c    6e65    6976    6f72    6d6e    6e65
0153140   t  \0   >  \0   g   r   u   b   >  \0   G   N   U       G   R
           0074    003e    7267    6275    003e    4e47    2055    5247
0153160   U   B           v   e   r   s   i   o   n       %   s  \0   1

Команда file сообщает вам о формате, например,

$ file /boot/grub/normal.mod
/boot/grub/normal.mod: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV), not stripped

Конечно, вы должны использовать для этого подходящий инструмент, такой как шестнадцатеричный редактор.

Дополнительная литература:

0
28.01.2020, 01:07

К сожалению, единственный способ изменить текст заголовка - это изменить исходный код Grub 2 и перекомпилировать его, поскольку текст заголовка жестко закодирован в grub-core/normal/main.c в дереве исходного кода. Подробности смотрите в этом ответе на AskUbuntu - здесь слишком много деталей, чтобы их воспроизводить.

0
28.01.2020, 01:07

Теги

Похожие вопросы