Как узнать, какой у меня загрузчик?

21

Я знаю, что Grub установлен по умолчанию при установке Ubuntu, но я столкнулся со встроенной системой под управлением 9.10 Desktop Edition. Ниже приведено содержимое файла lsb-release

ubuntu@ubuntu-desktop:/boot$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=9.10
DISTRIB_CODENAME=karmic
DISTRIB_DESCRIPTION="Ubuntu 9.10"

но в этой системе нет загрузчика Grub, и я хочу выяснить, какой из них он использует. Так есть идеи?

binW
источник
wiki.debian.org/BootLoader перечисляет все загрузчики, доступные в Debian, если вы хотите проверить каждый из них. Какая арка это система? Просто оставить комментарий, так как это неправильный ответ ...
andrewsomething

Ответы:

13

Если у вас есть /etc/lilo.confфайл, то вы используете LILO (LInux LOader). Это означает, что если вы наберете, liloнапример, вы должны увидеть командный диалог для загрузчика lilo.

Если у вас есть /boot/grub/каталог, то вы используете GRUB (Grand Unified Boot Loader). Это означает, что вы должны иметь возможность использовать все файлы grub, такие как grub-install, grub-reboot ...

Ubuntu 9.10 была первой версией, которая использовала GRUB2 https://help.ubuntu.com/community/DualBoot/Grub

ОБНОВИТЬ:

Вот скрипт для проверки в первом секторе жесткого диска, какой менеджер загрузки он использует:

Предполагая, что ваш жесткий диск находится в SDA, тогда:

sudo dd if=/dev/sda bs=512 count=1 2>/dev/null | strings | grep -Eoi 'grub|lilo|acronis|reboot'

скажет вам, какой загрузчик вы используете.

Остальное вы можете себе представить ...
Список загрузчиков находится здесь: http://en.wikipedia.org/wiki/Comparison_of_boot_loaders и http://wiki.debian.org/BootLoader (для дистрибутивов на основе Debian)
Также, если вы хотите увидеть реальный двоичный вывод, затем добавьте -a к части grep. Например:

sudo dd if=/dev/sda bs=512 count=1 2>&1 | grep -a GRUB который покажет вам данные в этом первом блоке.

Теперь с этой новой информацией вы должны найти менеджер загрузки, который вы используете.

Луис Альварадо
источник
Нет, не имеют ничего из этого.
binW
Обновлено с небольшой командной строкой для вас.
Луис Альварадо
Также попробуйте перебрать sda1и sda2т. Д., Если у вас есть настроенный раздел восстановления.
opyate
Как мне узнать, нахожусь ли я на VPS и этот подход не работает? (устройство - / dev / simfs, а команда не выводит)
thegeko
@ thegeko, это очень большой вопрос, потому что это зависит от вашего провайдера, программного обеспечения, которое они используют, услуг, которые они предлагают (IaaS, PaaS, MaaS, Cloud, Dedicated, Virtual и т. д.)
Luis Alvarado
3

Используйте ddкоманду, чтобы прочитать загрузочный сектор, затем используйте, grepчтобы узнать ваш загрузчик:

dd if=/dev/hda bs=512 count=1 2>&1 | grep GRUB
dd if=/dev/hda bs=512 count=1 2>&1 | grep LILO
Акаш Шенде
источник
1

Вы безопаснее проверять, запрашивая версию у самого инструмента (чем при использовании низкоуровневого dd или других артефактов).

Например, тестирование на lilo:

root# lilo -V
bash: lilo: command not found

root# grub-install --version
grub-install (GRUB) 2.02~beta2-22

Конечно, это не будет работать, если вы оба установили. Если это так, чтобы избежать путаницы, удалите те, которые вам не нужны.

Доктор Беко
источник