Вопрос или проблема
Я попытался изменить размер разделов на сервере SLES 15, используя gdisk.
Независимо от того, что я пытаюсь сделать, я не могу заставить это работать после перезагрузки системы.
Начальная ситуация:
У меня есть загрузочный раздел (/dev/sda1), корневой раздел (/dev/sda2), раздел /home (/dev/sda3) и swap (/dev/sda4).
Я хочу пересоздать раздел /home с меньшим пространством и увеличить пространство на корневом разделе.
Вот шаги, которые я сделал:
umount /home
- удалить и пересоздать разделы:
SRV01:~ # gdisk /dev/sda
GPT fdisk (gdisk) версия 1.0.8
Сканирование таблицы разделов:
MBR: защитный
BSD: отсутствует
APM: отсутствует
GPT: присутствует
Найдена допустимая GPT с защитным MBR; используется GPT.
Команда (? для помощи): p
Диск /dev/sda: 209715200 секторов, 100.0 GiB
Модель: Виртуальный диск
Размер сектора (логический/физический): 512/512 байт
Идентификатор диска (GUID): E6F4D731-D49F-4BD7-8AF7-A0EDA544AE8C
Таблица разделов вмещает до 128 записей
Главная таблица разделов начинается с сектора 2 и заканчивается сектором 33
Первый пригодный сектор - 34, последний пригодный сектор - 209715166
Разделы будут выравнены по границам секторов 2048
Общий свободный объем - 2014 секторов (1007.0 KiB)
Номер Начало (сектор) Конец (сектор) Размер Код Имя
1 2048 1050623 512.0 MiB EF00
2 1050624 84936703 40.0 GiB 8300
3 84936704 143968255 28.1 GiB 8300
4 143968256 209715166 31.3 GiB 8200
Команда (? для помощи): d
Номер раздела (1-4): 4
Команда (? для помощи): d
Номер раздела (1-3): 3
Команда (? для помощи): d
Номер раздела (1-2): 2
Команда (? для помощи): n
Номер раздела (2-128, по умолчанию 2): 2
Первый сектор (34-209715166, по умолчанию = 1050624) или {+-}размер{KMGTP}:
Последний сектор (1050624-209715166, по умолчанию = 209715166) или {+-}размер{KMGTP}: +60G
Текущий тип - 8300 (файловая система Linux)
Шестнадцатеричный код или GUID (L для показа кодов, Ввод = 8300):
Изменен тип раздела на 'файловая система Linux'
Команда (? для помощи): n
Номер раздела (3-128, по умолчанию 3): 3
Первый сектор (34-209715166, по умолчанию = 126879744) или {+-}размер{KMGTP}:
Последний сектор (126879744-209715166, по умолчанию = 209715166) или {+-}размер{KMGTP}: +8G
Текущий тип - 8300 (файловая система Linux)
Шестнадцатеричный код или GUID (L для показа кодов, Ввод = 8300):
Изменен тип раздела на 'файловая система Linux'
Команда (? для помощи): n
Номер раздела (4-128, по умолчанию 4): 4
Первый сектор (34-209715166, по умолчанию = 143656960) или {+-}размер{KMGTP}:
Последний сектор (143656960-209715166, по умолчанию = 209715166) или {+-}размер{KMGTP}:
Текущий тип - 8300 (файловая система Linux)
Шестнадцатеричный код или GUID (L для показа кодов, Ввод = 8300): L
Строка поиска типа, или <Ввод> чтобы показать все коды: swap
8200 Linux swap a502 FreeBSD swap
a582 Midnight BSD swap a901 NetBSD swap
bf02 Solaris swap
Шестнадцатеричный код или GUID (L для показа кодов, Ввод = 8300): 8200
Изменен тип раздела на 'Linux swap'
Команда (? для помощи): w
Финальная проверка завершена. Скоро будет записана GPT-данные. ЭТО УДАЛИТ СУЩЕСТВУЮЩИЕ РАЗДЕЛЫ!!
Продолжить? (Y/N): y
- прочитать таблицу разделов с
partprobe
- создать файловую систему для раздела /home:
SRV01:~ # mkfs.xfs /dev/sda3
meta-data=/dev/sda3 isize=512 agcount=4, agsize=524288 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=0 bigtime=0 inobtcount=0
data = bsize=4096 blocks=2097152, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
Отсекаются блоки...Готово.
- изменить размер файловой системы /
SRV01:~ # btrfs filesystem resize max /
Увеличение размера устройства id 1 (/dev/sda2) с 40.00GiB до максимума
- добавить новые UUID устройств в fstab (UUID устройства для корневого раздела остаётся тем же, иначе потребуется обновить его и в загрузочном разделе в конфигурации grub)
- монтировать файловые системы с
mount -a
На данный момент все работает без каких-либо проблем.
Но если я перезагружаю систему, загрузчик открывается, и потом я получаю сообщение blacklist: Проблема с ключом отзыва (-74)
Как это можно решить?
Ответ или решение
Вы столкнулись с проблемой загрузки сервера SLES 15 после перепартиционирования диска с использованием утилиты gdisk
. Сообщение об ошибке "Problem with revocation key (-74)" указывает на проблему с черным списком ключей безопасной загрузки (Secure Boot), то есть произошло нарушение цепочки доверия из-за изменения сигнатур или политики файла ядра или других важных бинарных файлов, которые защищаются механизмом Secure Boot.
Теория
Secure Boot — это функция безопасности, которая предназначена для предотвращения выполнения неавторизованных прошивок или системных программ во время начального процесса загрузки. Она опирается на криптографические ключи и политические ограничения, чтобы утвердить доверенные компоненты системы.
Ошибки такого рода могут возникать при значительных изменениях в конфигурации системы, таких как обновление ядра, изменение загрузчика или после манипуляций с разделами, как в вашем случае.
Пример
При выполнении таких операций, как изменение размеров или удаление и воссоздание разделов, может измениться расположение файлов и их хэш-сигнатуры, что может привести к нарушению доверия Secure Boot. В результате загрузочные компоненты могут быть неправильно считаны системой при новой загрузке.
Применение
Для решения проблемы выполните следующие шаги:
-
Деактивация Secure Boot (временно):
- Войдите в BIOS/UEFI вашего сервера и временно отключите Secure Boot. Это позволит вам проверить, сможет ли система нормально загрузиться без вмешательства безопасности.
-
Переподдержание ключей:
- В некоторых случаях выполнение обновления ключей может помочь. Вы можете попробовать обновить или повторно установить фабричные ключи в вашем UEFI.
-
Проверка загрузчика GRUB:
- Убедитесь, что все изменения в конфигурации загрузчика были выполнены правильно и что никакие дополнительные изменения не привели к ошибке. Если есть необходимость, попробуйте восстановить или переписать конфигурацию GRUB.
-
Обновление ядра и модулей:
- Если вы недавно изменяли или обновляли ядро, убедитесь, что все связанные модули конфигурированы корректно. Загрузите последние обновления системы и ядра, чтобы устранить возможные несовместимости.
-
Проверка подписи всех загрузочных бинарных файлов:
- Проверьте подписи всех бинарных файлов, получая уверенность, что все они авторизованы и соответствуют зарегистрированным ключам в UEFI.
-
Обращение в техническую поддержку:
- Если самостоятельно устранить проблему не удается, следует обратиться в техническую поддержку SUSE или к вашему поставщику оборудования для получения специализированной помощи.
Используя вышеописанные методы, вы сможете выявить и устранить проблему, связанную с ошибкой при черном списке ключей в Secure Boot, обеспечив корректную загрузку и работу вашего сервера.