Когда вы устанавливаете Windows, Windows предполагает, что это единственная операционная система (ОС) на компьютере, или, по крайней мере, она не учитывает Linux. Таким образом, он заменяет GRUB своим собственным загрузчиком. Что вам нужно сделать, это заменить загрузчик Windows на GRUB. Я видел различные инструкции по замене GRUB с помощью команд GRUB или чего-то подобного, но для меня самый простой способ - просто chroot
в вашу установку и запустите update-grub
. chroot
это здорово, потому что это позволяет вам работать над вашей фактической установкой, вместо того, чтобы пытаться перенаправлять вещи туда и сюда. Это действительно чисто.
Вот как это делается:
- Загрузитесь с live CD или live USB в режиме "Попробуйте Ubuntu".
-
Определите номер раздела вашего основного раздела.
sudo fdisk -l
,sudo blkid
или GParted (который по умолчанию уже должен быть установлен в сеансе live) может помочь вам здесь. Я собираюсь предположить в этом ответе, что это/dev/sda2
, но убедитесь, что вы используете правильный номер раздела для вашей системы!Если ваш основной раздел находится в LVM, вместо этого устройство будет расположено в
/dev/mapper/
, скорее всего,/dev/mapper/{volume}--{os}-root
где{volume}
является именем тома LVM и{os}
это операционная система. Выполнятьls /dev/mapper
для точного названия. -
Смонтируйте свой раздел:
sudo mount /dev/sda2 /mnt #Replace sda2 with the partition from step 2
Если у вас есть отдельный
/boot
,/var
или/usr
перегородки, повторите шаги 2 и 3, чтобы смонтировать эти разделы на/mnt/boot
,/mnt/var
и/mnt/usr
соответственно. Например,sudo mount /dev/sdXW /mnt/bootsudo mount /dev/sdXY /mnt/varsudo mount /dev/sdXZ /mnt/usr
заменяющий
sdXW
,sdXY
, иsdXZ
с соответствующими номерами разделов. -
Привязать смонтировать некоторые другие необходимые вещи:
for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done
-
Если Ubuntu установлена в режиме EFI (посмотрите этот ответ, если вы не уверены), использовать
sudo fdisk -l | grep -i efi
или GParted, чтобы найти ваш раздел EFI. На нем будет надписьEFI
. Смонтируйте этот раздел, заменивsdXY
с фактическим номером раздела для вашей системы:sudo mount /dev/sdXY /mnt/boot/efi
-
chroot
в вашу установку Ubuntu:sudo chroot /mnt
-
На данный момент вы находитесь в своей установке, а не в реальном сеансе, и работаете от имени root. Обновление личинки:
update-grub
Если вы получаете ошибки или переход к шагу 7 не устранил вашу проблему, перейдите к шагу 8. (В противном случае это необязательно.)
-
В зависимости от вашей ситуации вам, возможно, придется переустановить grub:
grub-install /dev/sdaupdate-grub # In order to find and add windows to grub menu.
-
Если Ubuntu установлена в режиме EFI, а UUID раздела EFI изменился, вам может потребоваться обновить его в
/etc/fstab
. Сравните это:blkid | grep -i efigrep -i efi /etc/fstab
Если UUID текущего раздела EFI (из
blkid
) отличается от того , что в/etc/fstab
, обновление/etc/fstab
с текущим UUID. -
Если все работало без ошибок, то у вас все готово:
exitsudo reboot
На этом этапе вы должны быть в состоянии нормально загрузиться.
Если вы не можете нормально загрузиться и не выполнили шаг 8 из-за отсутствия сообщений об ошибках, повторите попытку с помощью шага 8.
- Иногда предоставление GRUB2 правильного конфигурация для ваших разделов этого недостаточно, и вы должны фактически установить его (или переустановить) в Главную загрузочную запись, что и делает шаг 8. Опыт оказания помощи пользователям в чате показал, что шаг 8 иногда необходим, даже если сообщения об ошибках не отображаются.