Update grub команда не найдена

Я пытаюсь обновить конфигурацию grub на сервере ubuntu 12.04.3, чтобы включить переменную GRUB_RECORDFAIL_TIMEOUT, как описано здесь: https://help.ubuntu.com/community/Grub2.

Процедура говорит, что запустите update-grub после внесения изменений, но это не похоже на мою систему. Как это установить?

2 ответа

Команда update-grub была создана, чтобы упростить задачу — это просто скрипт оболочки в /usr/sbin/:

Если его там нет, вы можете сделать свой собственный. Для этого запустите это и вставьте в этот скрипт:

Сохраните с помощью Ctrl + O и выйдите с помощью Ctrl + X.

Затем запустите: 7]

И теперь вы можете запустить update-grub. : —

Я пытаюсь обновить конфигурацию grub на сервере ubuntu 12.04.3, чтобы включить переменную GRUB_RECORDFAIL_TIMEOUT , как описано здесь: Ссылка .

Процедура говорит о запуске update-grub после внесения изменений, но это не похоже на мою систему. Как я могу установить это?

3 ответа

Я бы переустановил grub, выполнив следующую команду:

Команда update-grub была создана, чтобы упростить задачу — это просто скрипт оболочки в /usr/sbin/ :

Если его там нет, вы можете сделать свой собственный. Для этого запустите это и вставьте указанный выше сценарий:

Сохранить с помощью Ctrl + O и выйти с помощью Ctrl + X .

Затем выполните следующие действия:

И теперь вы можете запустить update-grub . : -)

update-grub failed with an error message

@GAD3R Output of

Note1 I’ve installed Debian 10 Buster Alpha 3 release (Xfce) using the amd64 CD iso installer using a default installation (except that I removed the print server and added the ssh server ).

Note2 I used the root account ( su root ).

3 Answers 3

Solutions (best ones first)

  1. su — root instead of su root — nicest solution (thanks to Rui)
  2. extend path of the regular user in /etc/enviroment or
Читайте также:  Bios lenovo b590 настройка

/.bashrc or similar config file

  • call commands explicitly; using this solution would require that one modifies all scripts that happens to call another command from sbin (this is not practical, nevertheless there is an example of it in the troubleshooting section)
  • Findings

    This happened because the PATH works in a really strange way (actually works as designed).

    1. regular user login -> environment PATH doesn’t contain /usr/sbin =>opinion: works as designed, quite logical
    2. su root -> admin rights, but the environment is lacking /usr/sbin:/sbin =>opinion: works as designed, but illogical, because an account with root level of access should be able to execute commands from sbin without adding the path to the binaries manually
    3. su — root -> admin rights, /usr/sbin on the path =>opinion: works as designed, quite logical

    Some more background

    There are two PATH defined in /etc/login.defs, but unless I start su — or su — root , I’m going to get the ENV_PATH. I know that this has been designed this way, to keep the environment of the actual user, but in this single case, it really boggles my mind, why not add automatically /usr/sbin and /sbin to thew path of a "regular user" after a successful su root

    Troubleshooting

    I’ve found that there is an update-grub command in /usr/sbin .

    Ran it, just to get the next error message.

    Searched for grub-mkconfig and found it under /usr/sbin/grub-mkconfig . Then it came to me, let’s see how the update-grub script looks like?

    Modified /usr/sbin/update-grub in order to call grub-mkconfig by it’s explicit path .

    Читайте также:  Выбор победителя в инстаграм по комментариям

    . then called update-grub with it’s explicit path and tada, it worked!