LINUX.ORG.RU

Злой UEFI не загружает хороший Debian

 ,


1

1

Всем привет.
Ситуация следующая - есть Dell Inspiron 5558 (красненький :3).
Изначально на нем стояла убунта.Для некоторых тестов и заданий решил установить винду - отформатировал раздел (один на 500 гб), разбил на 2 по ~250 гб, на один поставил восьмерочку, на второй - переустановил убунту (фетиш у меня такой, всё должно быть установлено мной, а не производителем). Всё работало нормально.
Потом надобность в винде отпала окончательно, решил поставить дебиан.
Захожу в установщик, и что-то меня перемкнуло, и тыкаю на «Использовать весь диск». А там была какая-то виндовая ересь (100мб), и ещё каких-то два раздела, на одном из которых был образ для восстановления системы, а на втором - невесть что.
Не придал особого значения, дохожу до конца установки, перезагружаюсь - нет устройства для загрузки...
Захожу в настройки БИОСа - в Legacy стандартно: порядок загрузки с диска, флешки и харда. А вот в UEFI - пусто. Не вопрос, есть же кнопка «Добавить запись». Добавляю запись grub'а (она там была единственная в ФС, ошибиться не вышло бы). Сохраняюсь, перезагружаюсь - нет устройства для загрузки... И тут я начинаю что-то подозревать.
Захожу в настройки, в UEFI снова пусто. Короче говоря, не сохраняется оно никак.
Пробовал ставить Федору, Дебиан, Убунту - ни Lilo, ни Grub не хотят устанавливаться. Пробовал запустить установку Арча - «Load EFI install, Reboot to hardware блаблабла»: первый пункт не делает ничего, второй тупо выключает ноутбук.
И так, знатоки, внимание, вопрос: чего теперь делать, кроме как выбросить его через окно?

Странное что-то, можешь попробовать полностью снести MBP/GPT таблицу на диске и поставить ОС начисто. Самый простой способ это сделать - бутануть любой дитстр в Live-режим. Узнать маппинг диска (например это /dev/sda) и в консоли

dd if=/dev/zero of=/dev/sda bs=1024 count=1024

Jefail ★★★★
()
Последнее исправление: Jefail (всего исправлений: 1)

Дело в 100МБ разделе, на нём находится считываемый БИОСом файл загрузчика, в том числе и граба.
Отформатирован он должен быть в понимаемую БИОСом FS.
Какое то легаси fat УГ.

torvn77 ★★★★★
()

Так работать не будет. На ЛОРе вопрос уже разжёван.
Запомни простое правило. В каком режиме ты загрузил установщик, в таком же режиме ОС и установится. Загрузил в легаси - установится для легаси. Загрузил в uefi - установится для uefi. uefi без наличия специфичных разделов работать не будет.

targitaj ★★★★★
()
Последнее исправление: targitaj (всего исправлений: 3)

Захожу в настройки БИОСа - в Legacy стандартно

Ну и нафиг тебе это UEFI? Тебе надо не просто загрузить дебиан, а загрузить максимально через жопу?

anonymous
()
Ответ на: комментарий от anonymous

Только UEFI, только хардкор. Так решил Dell, и не позволяет загружать операционку кроме как через него (либо у меня руки слишком кривые, что скорее)

qnicolya
() автор топика

man cgdisk

When creating a fresh partition table, certain considerations may be in order:

* For data (non-boot) disks, and for boot disks used on BIOS-based computers with GRUB as the boot loader, partitions may be created in whatever order and in whatever sizes are desired.

* Boot disks for EFI-based systems require an EFI System Partition (GPT fdisk internal code 0xEF00) formatted as FAT-32. The recom‐ mended size of this partition is between 100 and 300 MiB. Boot-related files are stored here. (Note that GNU Parted identifies such partitions as having the «boot flag» set.)

* The GRUB 2 boot loader for BIOS-based systems makes use of a BIOS Boot Partition (GPT fdisk internal code 0xEF02), in which the secondary boot loader is stored, without the benefit of a filesystem. This partition can typically be quite small (roughly 32 KiB to 1 MiB), but you should consult your boot loader documentation for details.

* If Windows is to boot from a GPT disk, a partition of type Microsoft Reserved (GPT fdisk internal code 0x0C01) is recommended. This partition should be about 128 MiB in size. It ordinarily follows the EFI System Partition and immediately precedes the Win‐ dows data partitions. (Note that old versions of GNU Parted create all FAT partitions as this type, which actually makes the par‐ tition unusable for normal file storage in both Windows and Mac OS X.)

* Some OSes' GPT utilities create some blank space (typically 128 MiB) after each partition. The intent is to enable future disk utilities to use this space. Such free space is not required of GPT disks, but creating it may help in future disk maintenance. You can use GPT fdisk's relative partition positioning option (specifying the starting sector as '+128M', for instance) to sim‐ plify creating such gaps.

targitaj ★★★★★
()
Ответ на: комментарий от anonymous

Прикола ради, видимо. Я пробовал, у меня не завелось.

qnicolya
() автор топика

Глупый вопрос, но мало ли.

А ты случайно не 32 битные дистрибутивы пытаешься поставить?

fornlr ★★★★★
()
Ответ на: комментарий от fornlr

Может мне нагло врут, но качаю 64 битные.

qnicolya
() автор топика
Ответ на: комментарий от Jefail

чтобы mbr стереть вроде должно хватить:

dd if=/dev/zero of=/dev/sd* bs=512 count=1

anonymous
()
Ответ на: комментарий от targitaj

Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 976773168 sectors, 465.8 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 6A995E58-EF98-44FF-B7FB-78ACB8AF352A
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 976773134
Partitions will be aligned on 2048-sector boundaries
Total free space is 4077 sectors (2.0 MiB)

Number Start (sector) End (sector) Size Code Name
1 2048 1050623 512.0 MiB EF00
2 1050624 968554495 461.3 GiB 8300
3 968554496 976771071 3.9 GiB 8200


Вот, накатил Дебиан, перед этим затер диск нулями, ставил в режиме UEFI, граб установился без вопросов, но это абсолютно ничего не поменяло - опция пропадает после выхода из меню настроек.

Пара дополнений - сама система устанавливается отлично: если запустить с флешки rEFInd, то он видит загрузчик и загружает систему. Но даже переустановка граба изнутри не помогает

qnicolya
() автор топика

По идее, загрузка в uefi элементарна. На диске создаётся специальный раздел «EFI System Partition (GPT fdisk internal code 0xEF00) formatted as FAT-32», куда ОС кладёт файл загрузчика. Прошивка матери в режиме uefi инициализирует железо и лезет искать такой раздел и файлы прошивок на нём. Едем дальше. В линупс этот раздел монтируется в точку /boot/efi/ На самом разделе файлы прошивок складываются в папки, типа вот так:

ll /boot/efi/EFI/
total 6
drwxr-xr-x 6 root root 1024 июля 3 15:02 ./
drwxr-xr-x 3 root root 1024 янв. 1 1970 ../
drwxr-xr-x 2 root root 1024 авг. 9 23:15 Boot/
drwxr-xr-x 5 root root 1024 авг. 14 18:01 HP/
drwxr-xr-x 3 root root 1024 авг. 8 19:47 Microsoft/
drwxr-xr-x 2 root root 1024 июля 3 15:02 ubuntu/

И вот здесь есть маааааленькая хитрость. Папку Boot линупс не создаёт. У меня, по крайней мере, не создал. А именно в ЭТУ папку по-умолчанию смотрит прошивка матери. Ты берешь, РУКАМИ создаёшь эту папку и кладёшь туда файл загрузчика из папки, в моём случае, ubuntu.

ll /boot/efi/EFI/Boot/
-rwxr-xr-x 1 root root 956792 июля 10 01:10 bootx64.efi*

Вот этот файл bootx64.efi - это тупо мной переименованный файл grubx64.efi из папки

/boot/efi/EFI/ubuntu/

Узнал я это очень просто. Я поставил дуалбутом w7, которая создала папку Boot и положила туда копию своего загрузчика из /boot/efi/EFI/Microsoft/
Если всё есть, но ничего не работает, то, вероятно, у тебя не установлена signed версии загрузчика/ядер, а secure boot прошивки матери не пускает не подписанные.

targitaj ★★★★★
()
Последнее исправление: targitaj (всего исправлений: 1)
Ответ на: комментарий от qnicolya

Хм, а на джесси

aptitude search signed

даёт пустой вывод. Вот так прикол.
В убунте там целая простыня.

targitaj ★★★★★
()
Последнее исправление: targitaj (всего исправлений: 2)
Ответ на: комментарий от targitaj

В общем, не знаю, каким чудом, но нашел на askubuntu такой совет:
sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair

Иииии, всё заработало. Каким чудом - я не знаю, всё то, что программа делала автоматически, я делал руками и толку ноль.
Но, вроде как, проблема решена, всем спасибо.

qnicolya
() автор топика
Ответ на: комментарий от qnicolya

Тебе стоит получше изучить возможности настройки прошивки матери. Как минимум, прояснить ситуацию с secure boot.

targitaj ★★★★★
()
Ответ на: комментарий от qnicolya

ppa:yannubuntu/boot-repair

А ты точно грузишь дебиан в uefi режиме? Я так подозреваю, что boot-repair тупо сделал grub для загрузки в legacy режиме. Думаю руками себе такое сделать. По-идее, сложностей быть не должно.

targitaj ★★★★★
()
Последнее исправление: targitaj (всего исправлений: 1)
Ответ на: комментарий от qnicolya

Интересно. Может быть, оно создало папку /boot/efi/EFI/Boot/ ? Не смотрел? Я к тому, что пользоваться в линупсе магией - это не очень нормально.

targitaj ★★★★★
()
Ответ на: комментарий от qnicolya

Ладно, хрен с ним. Я тут как раз думал одну машину на jessie перевезти, вот там и попробую. Хорошо, что ты тут отписал. Теперь знаю, что возможны грабли.

targitaj ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.