История изменений
Исправление mradermaxlol, (текущая версия) :
Смысл ставить отдельный загрузчик, когда пользуешься UKI? Да и способ с хуками пакмана не совсем корректный - в рач уже некоторое время как завезли более правильные хуки в /etc/initcpio
, работающие конкретно на этапе вызова mkinitcpio
.
TL;DR по (на данный момент + ИМХО) пацанскому способу настройки сесурбута:
- прописал commandline ядра в
/etc/kernel/cmdline
- прописал в настройках профиля mkinitcpio генерацию UKI вместо обычного initrd, например:
# mkinitcpio preset file for the 'linux-cachyos-lto' package
ALL_config=(/etc/mkinitcpio.conf)
ALL_kver=(/boot/vmlinuz-linux-cachyos-lto)
PRESETS=('default')
default_uki=(/efi/EFI/Linux/linux.efi)
- создал загрузочный пункт через efibootmgr:
efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "Arch Linux" --loader 'EFI\Linux\linux.efi' --verbose
- нагенерил самоподписанные ключи через
sbkeys
где-нибудь в/etc/secureboot
с правильным chmod+chown, при желании сделал с мелкософтовским барахлом через флаг-m
- добавил ключи в фирмварь через условный
sbkeysync --keystore /etc/secureboot --pk
(на этом этапе может возникнуть прикол с ридонли-переменными EFI, лечение расписано в арчвики) - прописал в
/etc/initcpio/post/secureboot
что-то типа
#!/bin/sh -Eeu
sbsign --key /etc/secureboot/DB.key --cert /etc/secureboot/DB.crt --output "${3}" "${3}" > /dev/null 2>&1 || exit 1
- запустил
mkinitcpio -P
и обрадовался подписанному UKI
Пердоллинг с точками монтирования ESP тут опущен. ЕМНИП /boot/efi
перевели на /efi
просто как правило хорошего тона (или обновились стандарты файловой иерархии в Linux? не помню, да и мне как-то индифферентно вспомнил: это сделано для того, чтобы образы ядра хранить в корневом /boot, а финальное EFI-барахло складировать в ESP в отдельном каталоге /efi на, соответственно, другой ФС; сделано для того, чтобы не захламлять ESP дублирующимися данными: раньше туда клалось и ядро, и UKI (это ядро содержащее), а теперь там остался только UKI).
В качестве загрузчика спокойно используется встроенное загрузочное меню (U)EFI, где в случае дуалбута продолжает спокойно висеть ещё и Windows Boot Manager; в случае же правильной (tm) конфигурации будет один лишь пункт под пингвин.
Использовал и использовал такую штуку с полнодисковым LUKS2 как с, так и без TPM - полёт нормальный. Печально, что на той же арчвики статья написана крайне сумбурно, когда по факту всё достаточно просто.
Исправление mradermaxlol, :
Смысл ставить отдельный загрузчик, когда пользуешься UKI? Да и способ с хуками пакмана не совсем корректный - в рач уже некоторое время как завезли более правильные хуки в /etc/initcpio
, работающие именно конкретно на этапе вызова mkinitcpio
.
TL;DR по (на данный момент + ИМХО) пацанскому способу настройки сесурбута:
- прописал commandline ядра в
/etc/kernel/cmdline
- прописал в настройках профиля mkinitcpio генерацию UKI вместо обычного initrd, например:
# mkinitcpio preset file for the 'linux-cachyos-lto' package
ALL_config=(/etc/mkinitcpio.conf)
ALL_kver=(/boot/vmlinuz-linux-cachyos-lto)
PRESETS=('default')
default_uki=(/efi/EFI/Linux/linux.efi)
- создал загрузочный пункт через efibootmgr:
efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "Arch Linux" --loader 'EFI\Linux\linux.efi' --verbose
- нагенерил самоподписанные ключи через
sbkeys
где-нибудь в/etc/secureboot
с правильным chmod+chown, при желании сделал с мелкософтовским барахлом через флаг-m
- добавил ключи в фирмварь через условный
sbkeysync --keystore /etc/secureboot --pk
(на этом этапе может возникнуть прикол с ридонли-переменными EFI, лечение расписано в арчвики) - прописал в
/etc/initcpio/post/secureboot
что-то типа
#!/bin/sh -Eeu
sbsign --key /etc/secureboot/DB.key --cert /etc/secureboot/DB.crt --output "${3}" "${3}" > /dev/null 2>&1 || exit 1
- запустил
mkinitcpio -P
и обрадовался подписанному UKI
Пердоллинг с точками монтирования ESP тут опущен. ЕМНИП /boot/efi
перевели на /efi
просто как правило хорошего тона (или обновились стандарты файловой иерархии в Linux? не помню, да и мне как-то индифферентно вспомнил: это сделано для того, чтобы образы ядра хранить в корневом /boot, а финальное EFI-барахло складировать в ESP в отдельном каталоге /efi на, соответственно, другой ФС; сделано для того, чтобы не захламлять ESP дублирующимися данными: раньше туда клалось и ядро, и UKI (это ядро содержащее), а теперь там остался только UKI).
В качестве загрузчика спокойно используется встроенное загрузочное меню (U)EFI, где в случае дуалбута продолжает спокойно висеть ещё и Windows Boot Manager; в случае же правильной (tm) конфигурации будет один лишь пункт под пингвин.
Использовал и использовал такую штуку с полнодисковым LUKS2 как с, так и без TPM - полёт нормальный. Печально, что на той же арчвики статья написана крайне сумбурно, когда по факту всё достаточно просто.
Исправление mradermaxlol, :
Смысл ставить отдельный загрузчик, когда пользуешься UKI? Да и способ с хуками пакмана не совсем корректный - в рач уже некоторое время как завезли более правильные хуки в /etc/initcpio
, работающие именно конкретно на этапе вызова mkinitcpio
.
TL;DR по (на данный момент + ИМХО) пацанскому способу настройки сесурбута:
- прописал commandline ядра в
/etc/kernel/cmdline
- прописал в настройках профиля mkinitcpio генерацию UKI вместо обычного initrd, например:
# mkinitcpio preset file for the 'linux-cachyos-lto' package
ALL_config=(/etc/mkinitcpio.conf)
ALL_kver=(/boot/vmlinuz-linux-cachyos-lto)
PRESETS=('default')
default_uki=(/efi/EFI/Linux/linux.efi)
- создал загрузочный пункт через efibootmgr:
efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "Arch Linux" --loader 'EFI\Linux\linux.efi' --verbose
- нагенерил самоподписанные ключи через
sbkeys
где-нибудь в/etc/secureboot
с правильным chmod+chown, при желании сделал с мелкософтовским барахлом через флаг-m
- добавил ключи в фирмварь через условный
sbkeysync --keystore /etc/secureboot --pk
(на этом этапе может возникнуть прикол с ридонли-переменными EFI, лечение расписано в арчвики) - прописал в
/etc/initcpio/post/secureboot
что-то типа
#!/bin/sh -Eeu
sbsign --key /etc/secureboot/DB.key --cert /etc/secureboot/DB.crt --output "${3}" "${3}" > /dev/null 2>&1 || exit 1
- запустил
mkinitcpio -P
и обрадовался подписанному UKI
Пердоллинг с точками монтирования ESP тут опущен. ЕМНИП /boot/efi
перевели на /efi
просто как правило хорошего тона (или обновились стандарты файловой иерархии в Linux? [s]не помню, да и мне как-то индифферентно[/s] вспомнил: это сделано для того, чтобы образы ядра хранить в корневом /boot, а финальное EFI-барахло складировать в ESP в отдельном каталоге /efi на, соответственно, другой ФС; сделано для того, чтобы не захламлять ESP дублирующимися данными: раньше туда клалось и ядро, и UKI (это ядро содержащее), а теперь там остался только UKI).
В качестве загрузчика спокойно используется встроенное загрузочное меню (U)EFI, где в случае дуалбута продолжает спокойно висеть ещё и Windows Boot Manager; в случае же правильной (tm) конфигурации будет один лишь пункт под пингвин.
Использовал и использовал такую штуку с полнодисковым LUKS2 как с, так и без TPM - полёт нормальный. Печально, что на той же арчвики статья написана крайне сумбурно, когда по факту всё достаточно просто.
Исправление mradermaxlol, :
Смысл ставить отдельный загрузчик, когда пользуешься UKI? Да и способ с хуками пакмана не совсем корректный - в рач уже некоторое время как завезли более правильные хуки в /etc/initcpio
, работающие именно конкретно на этапе вызова mkinitcpio
.
TL;DR по (на данный момент + ИМХО) пацанскому способу настройки сесурбута:
- прописал commandline ядра в
/etc/kernel/cmdline
- прописал в настройках профиля mkinitcpio генерацию UKI вместо обычного initrd
- создал загрузочный пункт через efibootmgr:
efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "Arch Linux" --loader 'EFI\Linux\linux.efi' --verbose
- нагенерил самоподписанные ключи через
sbkeys
где-нибудь в/etc/secureboot
с правильным чмодом+човном, при желании сделал с мелкософтовским барахлом через ключ-m
- добавил ключи в фирмварь через условный
sbkeysync --keystore /etc/secureboot --pk
(на этом этапе может возникнуть прикол с ридонли-переменными EFI, лечение расписано в арчвики) - прописал в
/etc/initcpio/post/secureboot
что-то типа
#!/bin/sh -Eeu
sbsign --key /etc/secureboot/DB.key --cert /etc/secureboot/DB.crt --output "${3}" "${3}" > /dev/null 2>&1 || exit 1
- запустил
mkinitcpio -P
и обрадовался подписанному UKI
Пердоллинг с точками монтирования ESP тут опущен. ЕМНИП /boot/efi
перевели на /efi
просто как правило хорошего тона (или обновились стандарты файловой иерархии в Linux? не помню, да и мне как-то индифферентно).
В качестве загрузчика спокойно используется встроенное загрузочное меню (U)EFI, где в случае дуалбута продолжает спокойно висеть ещё и Windows Boot Manager; в случае же правильной (tm) конфигурации будет один лишь пункт под пингвин.
Использовал и использовал такую штуку с полнодисковым LUKS2 как с, так и без TPM - полёт нормальный. Печально, что на той же арчвики статья написана крайне сумбурно, когда по факту всё достаточно просто.
Исходная версия mradermaxlol, :
Смысл ставить отдельный загрузчик, когда пользуешься UKI? Да и способ с хуками пакмана не совсем корректный - в рач уже некоторое время как завезли более правильные хуки в /etc/initcpio
, работающие именно конкретно на этапе вызова mkinitcpio.
TL;DR по (на данный момент + ИМХО) пацанскому способу настройки сесурбута:
- прописал commandline ядра в
/etc/kernel/cmdline
- прописал в настройках профиля mkinitcpio генерацию UKI вместо обычного initrd
- создал загрузочный пункт через efibootmgr:
efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "Arch Linux" --loader 'EFI\Linux\linux.efi' --verbose
- нагенерил самоподписанные ключи через
sbkeys
где-нибудь в/etc/secureboot
с правильным чмодом+човном, при желании сделал с мелкософтовским барахлом через ключ-m
- добавил ключи в фирмварь через условный
sbkeysync --keystore /etc/secureboot --pk
(на этом этапе может возникнуть прикол с ридонли-переменными EFI, лечение расписано в арчвики) - прописал в
/etc/initcpio/post/secureboot
что-то типа
#!/bin/sh -Eeu
sbsign --key /etc/secureboot/DB.key --cert /etc/secureboot/DB.crt --output "${3}" "${3}" > /dev/null 2>&1 || exit 1
- запустил
mkinitcpio -P
и обрадовался подписанному UKI
Пердоллинг с точками монтирования ESP тут опущен. ЕМНИП /boot/efi
перевели на /efi
просто как правило хорошего тона (или обновились стандарты файловой иерархии в Linux? не помню, да и мне как-то индифферентно).
В качестве загрузчика спокойно используется встроенное загрузочное меню (U)EFI, где в случае дуалбута продолжает спокойно висеть ещё и Windows Boot Manager; в случае же правильной (tm) конфигурации будет один лишь пункт под пингвин.
Использовал и использовал такую штуку с полнодисковым LUKS2 как с, так и без TPM - полёт нормальный. Печально, что на той же арчвики статья написана крайне сумбурно, когда по факту всё достаточно просто.