Чтобы узнать, с какого раздела пользователь загрузился, посмотрите меню загрузчика перед загрузкой любой из установленных систем. Трудно сказать, не видя меню загрузчика.
Где посмотреть
На следующих комбинированных снимках экрана я пометил три подсказки, которые можно узнать, с какого раздела пользователь загрузился.
Метка (1): пункты меню GNU GRUB ниже первой записи
Метка (2): версия GNU GRUB в верхней части меню загрузчика
Метка (3): фоновое изображение GNU GRUB (требуется ручная настройка)
Наиболее очевидный совет - метка (3), которая изменяет фоновое изображение GNU GRUB в системе, управляющей меню загрузчика. Проще всего сказать, если пользователь настроил его заранее.
Ярлык (1) объяснил
Найдите раздел, который не указан в пунктах меню под первой записью. На снимке экрана показаны только две устанавливаемые операционные системы: «Ubuntu» и «Ubuntu 14.04.5 LTS».
Ubuntu
Advanced options for Ubuntu
Memory test (memtest86+)
Memory test (memtest86+, serial console 115200)
Ubuntu 14.04.5 LTS (14.04) (on /dev/sda3)
Advanced options for Ubuntu 14.04.5 LTS (14.04) (on /dev/sda3)
Последний упомянул (on /dev/sda3)
, что означает, что первый может быть расположен на /dev/sda2
или /dev/sda1
. Чтобы быть уверенным, после загрузки системы, то есть «Ubuntu», запустите соответствующую команду lsblk
, чтобы вывести список доступных разделов ( кажется, наиболее простым).
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 13G 0 disk
├─sda1 8:1 0 976M 0 part [SWAP]
├─sda2 8:2 0 6G 0 part /
└─sda3 8:3 0 6G 0 part
sr0 11:0 1 55.7M 0 rom
Только после сравнения с выводом lsblk
, мы знаем, что система, то есть «Ubuntu» находится в /dev/sda2
(который не был указан в пунктах меню), из которого осуществляется управление меню загрузчика.
Ярлык (2) объяснил
Ищите версию GRUB, которая напечатана в верхней части меню загрузчика. Обратите внимание на эту версию и сравните ее с версией GRUB, которая находится в загруженной системе, то есть «Ubuntu».
На скриншоте (нижняя половина): GNU GRUB version 2.02~beta2-9
После загрузки системы, т. Е. «Ubuntu», выполните соответствующую команду, чтобы проверить версию пакета GRUB ( grub-install --version
это актуально и наиболее просто).
$ grub-install --version
grub-install (GRUB) 2.02~beta2-9
Насколько это актуально? Потому что grub-install
и update-grub
команды предоставляются одним и тем же пакетом grub2-common
. Учитывая, что меню загрузчика создается и обновляется с использованием инструментов из того же пакета, печатная версия в верхней части меню загрузчика будет одинаковой.
Ярлык (3) объяснил
Эту подсказку необходимо настроить вручную, поскольку фоновое изображение по умолчанию в меню загрузчика отсутствует (просто черный). Фоновое изображение должно иметь глубину 8 бит.
Если desktop-base
пакет установлен в вашей системе, такие фоновые изображения, созданные специально для GRUB, легко найти с суффиксом имени файла *grub.png
в целевом каталоге.
$ ls /usr/share/images/desktop-base/*grub.png
/usr/share/images/desktop-base/desktop-grub.png
/usr/share/images/desktop-base/joy-grub.png
/usr/share/images/desktop-base/moreblue-orbit-grub.png
/usr/share/images/desktop-base/spacefun-grub.png
Чтобы установить фоновое изображение:
Откройте /etc/default/grub
файл как суперпользователь, затем добавьте строку GRUB_BACKGROUND=
с полным путем к выбранному изображению и укажите его в кавычках.
$ sudo nano /etc/default/grub
...
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
# Show background in GRUB boot menu
GRUB_BACKGROUND="/usr/share/images/desktop-base/spacefun-grub.png"
...
Затем запустите sudo update-grub
для обновления, /boot/grub/grub.cfg
которое включает в себя меню загрузчика. Пользователь увидит вывод, аналогичный следующему.
$ sudo update-grub
Generating grub configuration file ...
Found background: /usr/share/images/desktop-base/spacefun-grub.png
Found background image: /usr/share/images/desktop-base/spacefun-grub.png
Found linux image: /boot/vmlinuz-3.13.0-24-generic
Found initrd image: /boot/initrd.img-3.13.0-24-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
Found Ubuntu 14.04.5 LTS (14.04) on /dev/sda3
done
Перезагрузите компьютер и посмотрите, не было ли в меню загрузчика видимых изменений, внесенных командой update из системы.
Иначе, повторите шаги для других систем, по одной за раз. Повторные шаги были бы ненужными, если бы пользователь знал, какая система контролировала меню загрузчика (опять же, это зависит от того, как была произведена установка).
отказ
Этот ответ объясняет проверенные и хорошо проверенные критерии для системы BIOS с настройкой мультизагрузки с использованием версии GNU GRUB для ПК / BIOS. Будут применяться следующие исключения.
Для аналога системы UEFI, использующего версию GNU GRUB EFI, не гарантируется или не известно, будут ли критерии соответствовать описанным выше.
Особое внимание уделяется внешнему виду меню загрузчика (как оно может выглядеть иначе, т.е. верхняя половина снимка экрана), а не демонстрации того, как работает цепная загрузка. Таким образом, относительно того, «как была настроена мультизагрузка, как показано на скриншоте», в этом ответе не будет объяснено.
Если мультизагрузочная настройка когда-либо сделана из точно таких же копий аналогичной операционной системы, то есть Ubuntu 14.04, Kubuntu 14.04, Xubuntu 14.04 и т. Д., То единственный надежный способ узнать, с какого раздела пользователь загрузился, это метка (3).
Метка (3) может работать лучше, если использовать пользовательское фоновое изображение, которое явно пишет, из которого оно загружается, т.е. «Это меню загрузки управляется из / dev / sda1». Точно так же, относительно того, «как создать пользовательское фоновое изображение для GRUB», не будет объяснено в этом ответе
TL; DR Посмотрите меню загрузчика перед загрузкой любой из установленных систем. Самый простой и надежный способ узнать это - label (3), который заключается в ручной настройке фонового изображения GRUB.
/boot/grub/grub.cfg
файл, использованный для загрузки, мог быть удален, этот раздел мог быть удален из таблицы разделов, а этот диск физически удален из системы.