На этот вопрос уже есть ответ:
Я выполнил sudo apt-get remove ruby *
, а затем я увидел, что некоторые пакеты grub также удаляются, поэтому я вернулся к установке тех пакетов, которые были показаны в журнале удалили
. Я установил grub для работы на моем / sda
(в общем, не на любом номере) при обратной установке.
Должно ли все быть в порядке или мне следует опасаться за свою систему и планировать установку / перенастройку большего количества grub.
И почему это произошло?
Попробуйте эту команду на терминале,
sudo grub-install /dev/sda
Это переустановит grub2 на Вашем диске.
, Если Вы хотите настроить свою личинку тогда, устанавливают grub-pc
пакет. Попробуйте ниже команды для установки grub-pc
пакет,
sudo apt-get install grub-pc
Примечание: Установка этот пакет, только если Вы установили Ubuntu в режиме Legacy.
Если Вы не знаете точно, что Вы делаете, Вы не должны использовать:
sudo apt-get remove package.*
# ⤷ or any other character in the place of dot
поскольку это может удалить непреднамеренные пакеты и вызвать больше проблем, чем это решает. package.*
будет соответствовать всем пакетам (и их зависимости) содержащий строку package
на их имя. Это от man apt-get
, где-нибудь в строке 110:
If no package matches the given expression and the expression contains one of '.', '?' or '*' then it is assumed to be a POSIX regular expression, and it is applied to all package names in the database. Any matches are then installed (or removed). Note that matching is done by substring so 'lo.*' matches 'how-lo' and 'lowest'. If this is undesired, anchor the regular expression with a '^' or '$' character, or create a more specific regular expression.
И это - от Регулярных Выражений/POSIX Основной Викиучебник Регулярных выражений:
*
Соответствует предыдущему нулю элемента или больше раз. Например,ab*c
соответствия "ac", "abc", "abbbc", и т.д.[xyz]*
соответствия"" ", x", "y", "z", "zx", "zyx", "xyzzy", и так далее.\(ab\)*
соответствия"" ", ab", "abab", "ababab", и так далее.
Так или иначе, если Вы действительно хотите выполнить что-то как sudo apt-get remove package.*
(или sudo apt-get remove packagey*
, или sudo apt-get remove packagec*
- все - в этом случае то же), первый показ это с -s
(--simulate
) опция видеть точно, что это сделает (см. man apt-get
для большего количества информации).
Теперь, я думаю, что можно решить проблему с помощью выполняющего двух шагов:
Удалите только ruby
:
sudo apt-get remove ruby
Или, если Вы хотите удалить все пакеты, начинающие их имена с ruby
:
sudo apt-get remove ^ruby
Но лучше моделировать сначала с:
apt-get -s remove ^ruby
Склонный - получают работы с регулярными выражениями, что означает, что ruby*
выбирает все пакеты, которые содержат , трутся на их имя. Корректный способ удалить все пакеты, запускающиеся с рубин :
apt-get remove ^ruby