
Недавно установил Ubuntu 15.04 на свой ноутбук вместе с Windows 7. Он был установлен на раздел на Samsung SSD, и все, казалось, установилось нормально. Разделы кажутся правильными, и все выглядит хорошо, но по какой-то причине, когда я загружаю компьютер, он загружается прямо в Windows, не загружая меню GRUB.
Я пробовал использовать инструмент Boot-Repair из Live CD несколько раз, но это не решило проблему. Я также пробовал некоторые ручные исправления с помощью терминала, как предлагается в сети, но это тоже не сработало. Я новичок в Ubuntu, так как это моя первая установка, и я ищу помощь.
Мне очень нравится Ubuntu, и я довольно хорошо знаком с командами Linux, так что я не полный новичок, но мне нужна помощь, чтобы разобраться, как правильно настроить систему.
Сводку информации о загрузке для моей текущей настройки можно найти здесь.здесь
Спасибо за любую помощь заранее.
решение1
Согласно сводке информации о загрузке
=> Windows 7/8/2012 установлена в MBR /dev/sda.
у вас загрузчик Windows установлен в MBR, а grub установлен в разделе /dev/sda6. Таким образом, ваш компьютер загружается напрямую в загрузчик Windows, который ничего не знает о вашем grub, linux и т. д.
Вам необходимо установить grub непосредственно в sda, а не в раздел (sda6).
Для этого загрузите Linux любым способом (можно использоватьМенеджер загрузки Plopс CD или любого другого), и выполните в консоли sudo grub-install /dev/sda
(это установит его в mbr), а затем sudo update-grub
(это обновит меню grub).
Судя по вашему grub.conf, найденному на sda6, update-grub автоматически добавляет записи загрузки Windows в меню.
Затем вы сможете загрузить любую установленную ОС, в том числе и Linux (судя по всему, это будет опция по умолчанию).
решение2
После многочисленных попыток решить эту проблему я наконец решил ее с помощью нескольких советов из разных источников. Прежде всего, я ценю помощь каждого в попытке решить эту проблему. Ни один из ответов не сработал напрямую, но все они помогли мне найти решение проблемы, так что спасибо.
Установка GRUB напрямую в MBR /dev/sda не сработала, потому что я считаю, что Windows и Sony проделали очень хорошую работу по маскировке того, как Windows на самом деле загружается на моей машине. В конце концов мне пришлось скопировать файл "grubx64.efi" поверх файла менеджера загрузки для Windows. Вот шаги, которые я предпринял, чтобы сделать это безопасно и эффективно. Я расскажу о каждом шаге, который я предпринял при установке Ubuntu, на случай, если у кого-то возникнет похожая проблема и ему понадобится подробный ответ.
Шаги по установке Ubuntu 15.04 на Sony Vaio S с Windows 7
ПРИМЕЧАНИЕ: Этот процесс следует использовать только в том случае, если вы чувствуете, что исчерпали все другие возможные варианты. Этот процесс сработает, но он требует переименования загрузочных файлов Windows, что может быть опасно, если не сделать это правильно. Я настоятельно рекомендую сделать резервную копию важной информации перед продолжением.
Подготовьте жесткий диск для установки Ubuntu
- Загрузите Windows
- При желании вы можете дефрагментировать жесткий диск, но это не обязательно.
- Сократите раздел Windows на желаемый размер. Я рекомендую решить, сколько места вам нужно для всех ваших файлов, установки и т. д., а затем добавить к этому размер вашей оперативной памяти.
- Для визуального руководства по уменьшению размера раздела нажмитездесь
- Пример: Я хотел зарезервировать 50 ГБ для своей системы Ubuntu, а у меня 16 ГБ ОЗУ. Поэтому я уменьшил свой раздел на 66 ГБ. Однако Windows вычисляет уменьшение в МБ, поэтому вам нужно умножить желаемый размер на 1024. В моем случае,66 x 1024 = 67584 МБ
- ПРИМЕЧАНИЕ: Если ваша текущая установка не работаетнету вас уже есть ESP (системный раздел EFI), тогда я рекомендую вам следовать другому руководству по установке.Это руководство специально предназначено для установок на компьютерах с ESP, вызывающих проблемы с загрузкой из-за мер безопасности Windows.Узнайте больше о UEFI и ESPздесь
Загрузите Ubuntu с Live CD или USB
- Когда появится меню GRUB, нажмите "Попробовать Ubuntu без установки". Если вы не знакомы с Ubuntu, я рекомендую немного поиграться, чтобы убедиться, что это то, что вы хотите установить. Помните, что все будет загружаться очень медленно, учитывая, что вы работаете с CD или USB-накопителя.
Когда Ubuntu наконец запустится и запустится, нажмите на логотип на рабочем столе с надписью "Установить Ubuntu XX.XX" с той версией, которую вы устанавливаете. В моем случае это была 15.04.
Щелкните по меню, следуя инструкциям (я рекомендую установить флажки «Сторонние драйверы» и «Установить обновления», если у вас быстрое подключение к Интернету и особенно если вы устанавливаете на SSD).
Если вы хотите выполнить установку быстрее, не устанавливайте эти флажки, поскольку вы всегда сможете выполнить эти действия позже.
ВАЖНЫЙ:Когда вы дойдете до меню «Выделить место на диске», вам нужно будет нажать на опцию «Что-то еще», поскольку именно здесь мы настраиваем разделы, которые вы подготовили на шаге 1.
Создать разделы:
- Создайте раздел для подкачки. Выберите раздел свободного пространства, затем нажмите кнопку «плюс» в левом нижнем углу. Сделайте размер эквивалентным размеру вашей оперативной памяти, в моем случае это было 16 ГБ (16384 МБ). Выберите «Основной» для типа раздела, «Начало пространства» для расположения и «подкачка» для использования в качестве раздела. Примечание: опция точки монтирования должна исчезнуть при выборе «подкачки». Нажмите «ОК»
Создайте раздел для всех ваших файлов и корня. Это основной раздел, где будут располагаться все ваши файлы и программы. Выберите свободное пространство, нажмите кнопку «плюс» в нижнем левом углу. Сделайте размер эквивалентным оставшемуся свободному пространству (редактор должен сделать это автоматически). Выберите «Primary» для типа раздела, «Beginning of this space» для расположения, «Ext4 journaling file system» для использования в качестве и, наконец, выберите «/» (корень) для точки монтирования. Нажмите «OK»
ПРИМЕЧАНИЕ: Не должно быть больше "свободного места". Если у вас что-то осталось, убедитесь, что все размеры разделов в сумме соответствуют общему числу МБ, на которое вы сжали Windows на шаге 1.
ВАЖНЫЙ:При выборе опции «Устройство для установки загрузчика» вам нужно выбрать то же местоположение, что и ваш каталог «/boot». Поскольку это установка в системе ESP, ваш каталог загрузки будет находиться в том же месте, что и диспетчер загрузки Windows.
В моем случае это было «/dev/sda3», но должно быть описание «Windows Boot Manager» или что-то в этом роде, чтобы вы знали, на каком устройстве находится ваш ESP.
Если в установщике нет описания, то откройте GParted и найдите в разделе Label что-то, описывающее Windows Boot Manager, это и есть то место, которое вы ищете. Выберите это устройство в "Устройство для установки загрузчика"
Теперь нажмите кнопку «Установить сейчас» в правом нижнем углу.ЭТО ТОЧКА НЕВОЗВРАТА. ПРОДОЛЖАЙТЕ, ТОЛЬКО ЕСЛИ ВЫ УВЕРЕНЫ, ЧТО ВСЕ НАСТРОИЛИ ПРАВИЛЬНО
Когда установка будет завершена НЕ НАЖИМАЙТЕ ПЕРЕЗАГРУЗИТЬ. Нажмите кнопку«Продолжить пробовать Ubuntu»ссылку и перейдите к шагу 7.
Закройте все открытые программы и окна.
ПРИМЕЧАНИЕ: В этом разделе замените «/dev/sda3» на устройство, которое вы выбрали для установки загрузчика в конце шага 6.
Откройте Терминал и выполните следующие действия, внимательно прочитав и НЕ СПЕШИТЕ.
Нам нужно определить, где находится ваш файл Windows Boot Manager. Скорее всего, он будет в пути "/EFI/Microsoft/Boot/bootmgfw.efi", как и у меня, но нам нужно убедиться.
Единственный способ, который я знаю, как это сделать, — обновить grub и позволить ему сообщить нам, где он нашел менеджер загрузки. Сделайте это, введя следующее, не забыв заменить "/dev/sda3" на устройство, на которое вы установили свой загрузчик:
sudo mount /dev/sda3 /mnt cd /mnt sudo update-grub
Команда
cd /mnt
необходима для того, чтобы попасть в каталог, где был установлен grub, и она также будет полезна позже при переходе в другие каталоги. Командаupdate-grub
должна выдать что-то вроде следующего. Вот что выдал мой:jrichter@RICKY:~$ sudo update-grub Generating grub configuration file ... Found linux image: /boot/vmlinuz-3.19.0-22-generic Found initrd image: /boot/initrd.img-3.19.0-22-generic Found linux image: /boot/vmlinuz-3.19.0-15-generic Found initrd image: /boot/initrd.img-3.19.0-15-generic Found Windows Boot Manager on /dev/sda3@/EFI/Microsoft/Boot/bootmgfw.efi done
Глядя на последнюю строку, строку перед "done", мы должны увидеть, где был найден менеджер загрузки. У меня Windows Boot Manager был найден по
/dev/sda3
адресу/EFI/Microsoft/Boot/bootmgfw.efi
Это точное местоположение файла загрузки, который вызывается при нормальной загрузке системы, и это то, что нам нужно заменить.ПРИМЕЧАНИЕ:Если при обновлении GRUB возникает ошибка или не удается найти местоположение диспетчера загрузки Windows, то, скорее всего, вы смонтировали неправильное устройство или установили загрузчик на неправильное устройство во время установки.
Если все прошло без ошибок, и теперь вы понимаете файл и местоположение, из которого загружается Windows, то мы готовы двигаться дальше. Для оставшихся шагов не забудьте заменить местоположение, в котором находится мой загрузочный файл, на местоположение вашего, хотя я готов поспорить, что они одинаковы.
Продолжайте, введя следующие команды:
Перейдите в каталог, в котором находится ваш загрузочный файл:
cd EFI/Microsoft/Boot
Скопируйте обычный загрузочный файл Windows в резервную копию и создайте новый файл, назвав его «bootwin.efi», который мы настроим для загрузки Windows 7 внутри GRUB:
sudo cp bootmgfw.efi bootmgfw.efi.bkp sudo cp bootmgfw.efi bootwin.efi
Скопируйте файл загрузчика GRUB поверх обычного файла загрузки Windows. Это нужно, чтобы заставить вашу машину думать, что она загружает Windows, но вместо этого она загрузит меню GRUB. Введите следующее:
cd /mnt/EFI sudo cp ubuntu/grubx64.efi Microsoft/Boot/bootmgfw.efi
Вернитесь в основной каталог, отмонтируйте устройство загрузчика и перезагрузите компьютер. Обратите внимание, что команда для отмонтирования называется
umount
НЕunmount
:cd sudo umount /dev/sda3 sudo reboot
После перезагрузки компьютера ДОЛЖНО загрузиться меню GRUB.
ПРИМЕЧАНИЕ: Мы больше не используем Live CD или USB, поэтому убедитесь, что они удалены. Если загрузка GRUB не происходит, то вы, вероятно, допустили ошибку где-то по пути, или файл, который мы скопировали ("bootmgfw.efi"), на самом деле не тот файл, который вызывается при запуске Windows Boot Manager.
- Если вы столкнулись с этой ошибкой, я рекомендую загрузить rEFInd на загрузочный CD. Вставьте загрузочный CD и запустите компьютер. rEFInd должен увидеть все загрузочные файлы и предоставить вам варианты загрузки. Я рекомендую просмотреть эти варианты, пока вы не найдете тот, который нормально загружает Windows. Примечание: файл, вызываемый при загрузке, находится под выбором параметров в rEFInd. Используйте его как файл, в который нужно скопировать "grubx64.efi"
После загрузки меню GRUB загрузите Ubuntu.
Примечание: Если все шаги были выполнены правильно, выбор опции Windows Boot Manager должен вернуть вас обратно в меню GRUB. Это потому, что мы скопировали файл для загрузки Windows Boot Manager с файлом для загрузки GRUB.
Теперь, когда мы вернулись в Ubuntu, откройте Терминал и введите следующие команды:
Запустите терминал администратора, введя:
sudo -s
Это позволяет нам выполнять команды уровня root без необходимости вводить sudo каждый раз. Теперь введите следующее, чтобы найти файл, в который нужно добавить запись Windows:
cd /etc/grub.d ls
Это должно дать вам список файлов. Найдите тот, который выглядит как "XX_custom", где XX — это число, вероятно, кратное десяти. В моем случае это было "40_custom". Вот как должен выглядеть файл:
#!/bin/sh exec tail -n +3 $0 # This file provides an easy way to add custom menu entries. Simply type the # menu entries you want to add after this comment. Be careful not to change # the 'exec tail' line above.
Введите следующие команды, чтобы добавить пункт меню для Windows (заменив «40_custom» соответствующим именем файла):
nano 40_custom
Добавьте пункт меню под всеми комментариями (обозначается знаком #).
ПРИМЕЧАНИЕ: Замените «hd0,gpt3» на соответствующий жесткий диск и устройство, на котором находится ваш загрузчик (это то же самое место, куда вы установили свой загрузчик во время установки, где gpt3 представляет sda3, например). Также замените строку после «chainloader» на то же место, которое вы определили для своего загрузочного файла Windows.
Теперь введите следующее, убедившись, что имя файла в конце — это имя файла, которое мы создали ранее, скопировав «bootmgfw.efi». Я назвал свой «bootwin.efi»:
menuentry "Windows 7" { root='hd0,gpt3' chainloader /EFI/Microsoft/Boot/bootwin.efi }
Теперь нажмите "Ctrl-X", затем нажмите "Y", а затем нажмите "Enter", чтобы сохранить изменения. Убедитесь, что вы находитесь в
sudo -s
терминале, иначе вам не разрешат вносить изменения.И наконец, нам нужно обновить GRUB с помощью нашей новой записи и перезагрузить систему, чтобы убедиться, что все работает. Сделайте это, введя:
update-grub reboot
При загрузке системы GRUB должен загрузиться по умолчанию, и вы должны увидеть новую запись с именем, которое вы ему дали в файле "XX_custom". В моем случае это "Windows 7". Выберите опцию Windows, чтобы убедиться, что она загружается правильно, поскольку она должна загрузить Windows так же, как и до установки.
Перезагрузите компьютер и убедитесь, что опция Ubuntu все еще работает.
Поздравляю! Вы все сделали, и если все прошло правильно, вы официально установили Ubuntu на машину с ESP рядом с Windows. Теперь вы можете загружать две лучшие операционные системы :)