Как стать автором
Обновить

Комментарии 18

Хм, а разве EFI здесь не выступает в роли загрузчика? И, кстати, какая мотивация — просто интересно, или в этом есть практический смысл (сэкономить 1 секунду на загрузку GRUB'a, например...)?
разве EFI здесь не выступает в роли загрузчика?

думаю вы правы)
какая мотивация

Мне было интересно, на сколько сократится время загрузки системы. После установки lubuntu это время составляло 14 сек, после всех этих манипуляций стало 11, выходит я сэкономил 3 сек, правда потратил ни один час времени чтобы сделать такую экономию)) мерил с секундомером и засекал от момента нажатия кнопки питания до появления рабочего стола (думаю я не большую погрешность в измерениях сделал).
Для интереса, в основном. А вообще, терять преимущества GRUB не всякий согласится, ради пары секунд.
Эцсамое. У efibootmgr есть параметр -u. Через него можно передать нужную командную строку для ядра, что обычно и делают, не устраивая плясок с его пересборкой.
Незнал. Эта статья меня подтолкнула к такому решению. Обязательно попробую предложенный Вами метод. Спасибо!
Строго говоря, ядру всегда передаётся командная строка. А параметр -u нужен только для того, чтобы указать на её уникодность.
Ну это вообще пушка! Автор, вы наркоман!
sudo efibootmgr -c -d /dev/sdb -u -l '\EFI\arch\vmlinuz-linux.efi' -u -L "ArchLinux" root=UUID=b255359d-ca9f-4ee4-a9c6-7c8c13d614d1 initrd=EFI/arch/initramfs-linux.img rw quiet i915.lvds_downclock=1 i915.i915_enable_fbc=1 i915.i915_enable_rc6=7 i915.semaphores=1 pcie_aspm=force intel_pstate=disable

Опции можно писать любые. И никаких перекомпиляций ядра.
Разве не будет так в данном случае:
UEFI предаст управление на ядро, а оно не сможет продолжит загрузку без драйвера sata контроллера (я об этом писал в статье)
И тогда придется пересобирать ядро
для этого там есть initrd.
Если ядро уже с поддержкой EFI, то оно сможет прочитать initrd с FAT32-раздела в любом случае. А в initrd, как и сказал rimidal, могут быть любые модули.
НЛО прилетело и опубликовало эту надпись здесь
не в рамках шутки, появился вопрос: можно ли в будущем ждать загрузки без UEFI? Просто к чему вопрос — так получается UEFI при загрузке вынуждена каждый раз дергать EFI-сектора устройств и настраивать I/O и прочее управление. Возможно есть смысл как-то упростить эту операцию и пересобирать не ядро а UEFI чтобы вообще получать полноценную «железяку» которая сама все грузит без UEFI и прочих загрузчиков и не дергать диск ради не нужных для его работы частей ядра(ну да, при условии что само ядро будет не монолитным)?
Кажется, вы намекаете на CoreBoot?
Пару дополнений:

На некоторых патченых ядрах (гентушное к примеру) efi-ключи доступны только для чтения, для их изменения (efibootmgr) необходимо загрузиться с параметром «efi_no_storage_paranoia».

Можно загружаться и в SecureBoot, но для этого необходимо использовать подписаный загрузчик shim, подписаное ядро и модули (nvidia пролетает). В федоре всё это имеется. (Можно и без загрузчика, если вы уговорите MS подписать ядро)

Зачем пересобирать ядро, если в дебиане ещё с версии 2.6 в ядре по умолчанию включен EFI_STUB? UEFI умеет передавать параметры, почитайте справку по efibootmgr.

Лучше бы рассказали, как запустить 32-битное ядро на 64-битном UEFI?
Лучше бы рассказали, как запустить 32-битное ядро на 64-битном UEFI?

Никак
Вот что линуксы делают с людьми…
Ещё один шажок на путь разбирательства с «новыми» технологиями для меня. Про перекомпиляцию — с одной стороны фейл, а с другой пришлось разжевывать и объяснять что и как, получилось что материал усваивается лучше. Хотя я бы дополнил статью информацией из комментариев.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.