![]() |
Установка Ubuntu/Xubuntu на девайс, похожий на Wintel
Добрый день.
Попался мне в руки девайс, похожий на этот: Скрытый текст
![]() Основные характеристики такие: Intel Bay Trail-T CR up to 1.83GHz Atom Z3735F 2GB DDR3L 64GB/32G(16G to 128GB) (EMMC) standard 32G. На нём была установлена Ubuntu, пароль от которой был давно потерян. Поэтому я решил установить эту ОС заново. Решив погуглить перед этим делом, я вычитал, что для того, чтобы поставить ОС на подобные девайсы, нужно использовать дистрибутив amd64 + скопировать bootia32.efi в EFI/BOOT установочного носителя. Скачал ubuntu-16.04.1-desktop-amd64.iso, добавил bootia32.efi на носитель. При установке ОС разбил диск на 3 части: EFI - 100 МБ - fat32 swap - 2 ГБ / - всё остальное место - ex4 По окончанию установки появилось сообщение "Не удалось установить пакет grub-efi-ia32 в /target/". При попытке восстановить GRUB с помощью команды grub-install появилось сообщение "this GPT partition label contains no BIOS Boot Partition". В интернете нашёл совет, что нужно создать раздел 1-2 МБ с флагом bios_grub. В итоге я пересоздал диск с этим разделом + EFI + swap + /. В конце установки ОС снова появилась ошибка о том, что не удалось установить пакет grub-efi-ia32. Что еще можно сделать в данном случае? |
Цитата:
P.S. по поводу "this GPT partition label contains no BIOS Boot Partition", возможно, вы просто ошиблись на этом этапе (обратите внимание на скрин и текст над ним) |
gannet,
Цитата:
Цитата:
|
crashsoft, 1. Почему grub-efi-ia32,а не grub-efi-amd64, вы же вроде 64-bit ОС ставите? Вообще, большинство плат поддерживают только 1 разрядность UEFI, загружаться будет только 32 или 64 битная ОС
2. http://linuxmint.info/forum/thread52-1.html, я так понимаю, про это и это
![]() ![]() |
gannet,
Цитата:
Если я использую x64 образ Ubuntu, в нём есть эти каталоги, но флешка всё равно не отображается в списке устройств в boot-меню, до тех пор, пока я в EFI/BOOT не добавлю файл bootia32.efi. |
Цитата:
Кстати, первая ссылка из гугла на вашу ошибку)) (это и следующее сообщение) |
gannet,
Цитата:
|
crashsoft, раздел efi(fat32) ставите как загрузочный EFI(он же /efi/boot), swap как swap, а системный раздел как /.
То есть основным отличием от bios-legacy является разделение загрузочного раздела (кстати, у раздела efi должен быть соответствующий загрузочный флаг) и системного /. |
|
Debian 32х битный в efi режиме при автоматической разметке предлагает так
Картинко 1
![]() Обратите внимание на первый и последний "недоразделы" А убунта 64битная после выбора стереть все и установить в gparted показывает следующее: Картинко 2
![]() |
crashsoft, а вы не пробовали из под Live сделать chroot на установленную ОС и попробовать установить туда grub-efi-ia32? Быть может, в таком режиме он вам скажет больше - какая операция не удалась, какого пакета не хватает... А уже потом, если удастся, делать grub2-update
Кстати, все-таки интересно, в том ли режиме у вас флешка ОС подгружает, проверьте: Код:
[-d /sys/firmware/efi] && echo UEFI || echo BIOS |
James Marsh, я попробовал установить Ubuntu x64 в автоматическом режиме. При установке появилось сообщение: ""Запущенный установщик в режиме UEFI, но это выглядит так, что возможно уже установлена другая ОС в режиме совместимости с BIOS...", я нажал вернуться и установка продолжилась. В конце загрузчик был установлен без ошибок, но после перезагрузки в boot-меню я не увидел возможность загрузить установленную ОС:
GParted показывает такую разметку: А если установить ОС в режиме UEFI, то в конце установки появляется сообщение GParted показывает это: |
gannet,
Цитата:
Цитата:
|
Цитата:
А загрузчик в UEFI работает по другому принципу: биос больше не передает контроль диску, который подгружает установленный в его корень загрузчик (mmcblk0). Наоборот, существует раздел EFI, помеченный как загрузочный, в нем располагаются файлы загрузчиков (стандартные) установленных на компьютере ОС, к ним прилагаются конфиги (позволяют загружать вашу установленную ОС, которая может быть даже не на разделе диска, а в файле-"виртуальном диске", например vhd, wim..). Соответственно, загрузчик устанавливается на этот раздел! И если ОС установлено несколько, выбрать в какую ОС загружаться, вы можете прямо из БИОС)) |
gannet,
выполнил команду dmesg | grep "EFI v" и получил ответ [0.000000] efi: EFI v2.40 by INSIDE Corp.. Я правильно вас понял, что нужно попробовать через chroot установить загрузчик на раздел EFI? |
gannet, попробовал всё-таки установить GRUB через chroot по этой инструкции, но что-то пошло не так:
|
crashsoft, указанная вами инструкция для bios-legacy загрузчика
Вам примонтировать надо системный раздел, т.е. mmcblk0p3 (к ESP-разделу доступ по-другому получают, но оно вам и не надо). И попробовать установить пакет grub-efi-ia32 (или grub-efi-ia32-bin) и посмотреть выхлоп. Может он требует чего? Также почитайте мануал, обратите внимание на раздел Регистрации загрузчика EFI. Единственное, будьте осторожны с утилитой efibootmgr, он работает с EFI NVRAM модулем на плате)) Если и с этим не выйдет, тогда оставьте этот grub c его ошибками и попробуйте установить другой загрузчик. |
gannet, прошу прощения за глупые вопросы: я монтирую раздел mmcblk0p3: sudo mount dev/mmcblk0p3 /mnt, а как мне дальше установить пакет grub-efi-ia32 (или grub-efi-ia32-bin)?
|
crashsoft, что-то вроде такого:
Код:
chroot /mnt apt-get update P.S. по rEFInd на rodbooks инструкция та еще, вот с хабра
Хотите также?
Процесс установки из под Linux необычайно прост. Все способы описаны на официальном сайте, устанавливать можно практически из любой ОС. Для начала посетите эту страничку и скачайте .deb- или .rpm-пакет. Если у вас редкий дистрибутив вроде Slackware или Gentoo, то лично я вам помочь не смогу, но на сайте есть обычный .zip-архив и другие варианты установки, так что если уж вы работаете в подобных дистрибутивах, то наверняка поставить своими силами вы сможете без проблем. Сделайте бэкап EFI-директории: cp -r /boot/efi/EFI /boot/EFI.bkp После загрузки пакета, выполните: cd Downloads или cd Загрузки И установите пакет: sudo dpkg -i <имя пакета>.deb или sudo dnf install <имя пакета>.rpm В моем случае dpkg не мог иногда подтянуть зависимости, если у вас возникнут такие же трудности, то установите gdebi (sudo apt-get install gdebi) и выполните sudo gdebi <имя пакета>.deb. Если у вас RHEL или CentOS, то используйте yum вместо dnf. В логах установки пакета можно отследить лог установки rEFInd, в котором возможно будут ошибки их надо сразу отследить. Однако по моему опыту ошибок не возникает, если всё сделать правильно. Проверить результат работы установщика rEFInd можно, воспользовавшись утилитой efibootmgr, там первым приоритетом должна должен быть именно rEFInd Boot Manager. Установить rEFInd повторно, если пакет уже установлен, можно с помощью команды: refind-install Установку rEFInd первым приоритетом можно произвести в ручную, с помощью команды: refind-mkdefault Перезагружаемся. источник |
Ок. А если грузануться с убунты, запустить gparted, стереть все разделы и создать таблицу разделов типа gpt, а потом в автоматическом режиме попробовать?
В общем нашел в интернетах http://unix.stackexchange.com/questi...talling-debian Нижний пост на странице В виртуал-боксе попробовал - 1 раз загрузился, но потом что-то не того. Попробуйте на реальном железе. https://www.debian.org/devel/debian-installer/ - Debian Installer Stretch RC 2 release установился без ругани. Первый раз загрузился. Потом таки опять дальше эфи шелла не пошло. |
gannet, James Marsh, ох, ребята, вы не поверите как решилась проблема. Я пробовал установить загрузчик
Код:
chroot /mnt apt-get update Спасибо вам за помощь! Остался у меня небольшой вопрос. Так как UEFI x32, почему тогда не получается загрузиться с флешки с образом Ubuntu x32, а только x64? Файлик bootia32.efi я копирую в EFI/BOOT в корне флешки (хотя у x32 образа этих каталогов нет, а у x64 есть). Или это невозможно? |
crashsoft, Кроме загрузчика, который передает управление от БИОС-UEFI самой ОС (на нужном разделе, с заданными параметрами загрузки), должен быть еще и поддерживающий UEFI, установленный\настроенный загрузчик в самой ОС. Он уже зависит от битности не UEFI, а самой ОС. Сравните списки файлов\пакетов предлагаемых образов Ubuntu х64 и х86 по слову efi и вы даже на этом этапе увидите разницу. Кроме того, разница наверняка есть и в запакованной LiveOS.
Возможно, у Ubuntu есть другой установщик, поддерживающий х86 (James Marsh вам показывал пример Debian), однако даже в этом случае с установкой проблемы не заканчиваются, потому что х86, она же 32bit в основном рассматривается как ОС для устаревшего оборудования, некоторые дистры от нее отказываются, и нововедения вроде SoC уже не вызывают у разработчиков должного энтузиазма, чтобы они всерьез взялись за разработку драйверов для х86 ОС, поэтому проблемы с последними вам в 32-битной ОС обеспечены(( Видел жалобы в основном на сетевые адаптеры. |
gannet, спасибо за информацию!
|
Время: 10:20. |
Время: 10:20.
© OSzone.net 2001-