Команда update-grub не найдена


8

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

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

Ответы:


11

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

sudo apt-get update; sudo apt-get install --reinstall grub

1
я потерял update-grub после do-release-upgrade. Это сработало для меня.
boredcoding

2
Я также сделал do_release_upgrade, но не знаю, потерял ли я его после этого. если я запускаю приведенную выше команду, это то, что я получаю: Package grub is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source However the following packages replace it: grub2-common
nurp

17

Команда update-grubбыла создана для упрощения - это просто скрипт оболочки /usr/sbin/:

#!/bin/sh
set -e
exec grub-mkconfig -o /boot/grub/grub.cfg "$@"

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

sudo nano /usr/sbin/update-grub

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

Затем запустите эти:

sudo chown root:root /usr/sbin/update-grub
sudo chmod 755 /usr/sbin/update-grub

И теперь вы должны быть в состоянии бежать update-grub. :-)


Спасибо, так как он отсутствовал, я переустановил grub. Не уверен, что что-то еще могло пропасть.
Энди Арисменди

2
Это спасение жизни, если переустановка grub невозможна из-за поломки системы.
Plok

Да, действительно, спасатель. Команда update-grub была у меня в системе, но выдает ошибку / cow, эта не выдает ошибок.
Quidam

Знаете ли вы, как восстановить grub.cfg из живого сеанса?
Quidam

@Quidam askubuntu.com/q/145241/178596 . Также такие инструменты, как Boot Repair AFAIK, могут это сделать. Режим восстановления, если вы можете получить к нему доступ, также является опцией (переход к приглашению корневой оболочки, который может запускать команды после монтирования разделов)
Уилф,

0

вам нужно запустить его с корневыми привилегиями, запустите: sudo update-grub. Если вы не удалили его, его там в системе.


2
Это определенно пропало, не знаю, как это пропало. Переустановил личинку, вернул ее обратно.
Энди Арисменди
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.