Исправить это должно быть возможно, и это примерно похоже на процесс установки Arch Linux (отказ от ответственности: я могу ошибаться насчет некоторых шагов, прокомментируйте, если вы в беда).
Прежде всего, загрузитесь с живого CD / DVD / USB. Затем смонтируйте свой раздел (все как root!):
mkdir /mnt/ubuntu
mount /dev/sda2 /mnt/ubuntu
Затем сделайте резервную копию всего, что вам может понадобиться, из вашего / dev / sda1 и переформатируйте его для чего-то подходящего для GRUB - допустим, ext3 сделает:
mkfs.ext3 /dev/sda1
Затем смонтируйте его в вашем системном местоположении, затем привяжите материал, который обычно заполняется во время процесса загрузки:
mount /dev/sda1 /mnt/ubuntu/boot
mount -o bind /dev /mnt/ubuntu/dev
mount -o bind /dev/pts /mnt/ubuntu/dev/pts
mount -o bind /proc /mnt/ubuntu/proc
mount -o bind /sys /mnt/ubuntu/sys
Наконец, перейдите в свой старый Ubuntu:
chroot /mnt/ubuntu
Теперь вы должны стать пользователем root в своем старом Ubuntu, если все прошло хорошо. Вам в основном придется переустановить grub и ядро (предполагая имена grub2 и pkg, как в Debian):
aptitude install grub2 linux
Установите grub на свой жесткий диск:
grub-install /dev/sda
Затем сгенерируйте конфигурацию:
grub-mkconfig -o /boot/grub/grub.cfg
Просмотрите конфигурацию, и если все в порядке тебе должно быть хорошо! Перезагрузитесь и попробуйте, работает ли.
Вы должны иметь возможность просто удалить пакет, но перед этим прочитайте оставшуюся часть ответа.
Если команда, которую вы указали в своем вопросе, выполнялась без сообщения об ошибке, вы не переустанавливали свое настоящее ядро, а установили другое (, которое сейчас не используется ).
Если вы просто запустите apt-get install
для уже установленного пакета, вы получите следующий вывод:
linux-image-4.4.0-137-generic is already the newest version (4.4.0-137.163)
и apt -get ничего не делают. Поскольку он что-то установил на ваш сервер, это должен быть пакет, который не был установлен ранее.
Итак, чтобы быть абсолютно уверенным, что вы не удаляете текущее ядро, запустите следующее:
$ dpkg -S /boot/vmlinuz-`uname -r`
linux-image-4.4.0-137-generic: /boot/vmlinuz-4.4.0-137-generic
Это позволяет dpkg искать пакет, содержащий работающее в данный момент ядро (, на основе имени файла в/boot
).
В моем случае имя пакета linux-image-4.4.0-137-generic
, для вашего виртуального сервера, скорее всего, оно будет другим.
Если это имя пакета отличается от имени пакета, который вы установили ранее, вы можете безопасно удалить ненужный пакет.
sudo apt-get remove linux-image-$(uname -r)
Последующий запуск sudo apt-get autoremove
должен позаботиться обо всех зависимостях.