Рейтинг:2

Изменение ядра в AWS, по-видимому, нарушает последовательность загрузки (проблема с конфигурацией grub?)

флаг in

Используя Ubuntu 20.04 на AWS (ec2), я хотел изменить свое ядро ​​​​с AWS на универсальное. Когда я пробую предложенный способ с изменением конфигурации Grub, он останавливает машину.

Это связано с тем, что Jibri (Jitsi Video Recorder) требует использования ALSA и modprobe snd-aloop , но все, что требует низкой задержки или другого ядра, будет иметь ту же потребность.

Что я пробовал:

Возьмите изображение:

sudo apt установить linux-image-extra-virtual

Вы увидите в установочных пакетах ссылку на что-то вроде Linux 5.4.0-84-generic, это поможет позже. Теперь перечислите свои загрузочные записи, которые у вас есть для этого нового универсального ядра.

grep -A200 submenu /boot/grub/grub.cfg |grep -P '^(?=.*menuentry)(?=.*generic)'

Я понимаю:

menuentry 'Ubuntu с Linux 5.4.0-84-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.0-84-generic-advanced-e8070c31-bfee -4314-a151-d1332dc23486' { menuentry 'Ubuntu, с Linux 5.4.0-84-generic (режим восстановления)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.0-84-generic-recovery -e8070c31-bfee-4314-a151-d1332dc23486 '{

В верхней строке, а не в той, в которой упоминается режим восстановления, скопируйте его пункт меню в начале строки. На моем похоже Ubuntu, с Linux 5.4.0-84-generic, но у всех будет по разному.

Сейчас буду редактировать /etc/по умолчанию/жратва ,

Закомментируйте GRUB_DEFAULT=0 (загружает первую запись в ваш загрузочный список grub) и измените его на строку, которую мы нашли ранее. Для меня этот раздел файла теперь выглядит так:

#GRUB_DEFAULT=0
GRUB_DEFAULT="Ubuntu с Linux 5.4.0-84-универсальный"

Это еще не правильная настройка - мы используем ее, чтобы позволить grub проверить и сказать нам, как лучше всего это сделать.

На этом этапе мы можем выполнить команду sudo update-grub, которая выдаст мне такое дружеское предупреждение (это хорошо!)

Предупреждение: не используйте старое название «Ubuntu, с Linux 5.4.0-84-generic» для GRUB_DEFAULT, используйте «Дополнительные параметры для Ubuntu>Ubuntu, с Linux 5.4.0-84-generic» (для версий до 2.00) или `gnulinux-advanced-e8070c31-bfee-4314-a151-d1332dc23486>gnulinux-5.4.0-84-generic-advanced-e8070c31-bfee-4314-a151-d1332dc23486' (для версии 2.00 или выше)

Опять же, это хорошо! Мы знаем, что указали что-то, что он распознает. В наши дни все используют grub новее 2.00, поэтому теперь мы снова редактируем /etc/default/grub и меняем его на окончательное значение:

(мои значения будут отличаться от ваших)

#GRUB_DEFAULT=0
#GRUB_DEFAULT="Ubuntu с Linux 5.4.0-84-универсальный"
GRUB_DEFAULT="gnulinux-advanced-e8070c31-bfee-4314-a151-d1332dc23486>gnulinux-5.4.0-84-generic-advanced-e8070c31-bfee-4314-a151-d1332dc23486"

sudo update-grub , и я вижу, что предупреждение исчезло.

Теперь я делаю sudo перезагрузить сейчас

На данный момент grub дал мне конфигурацию, которая должна попытаться загрузить общее ядро, возвращаясь к обычному.

Вместо этого он застревает в цикле загрузки.

В последовательной консоли я неоднократно вижу это во время цикла загрузки.

[0.000000] Версия Linux 5.4.0-84-generic (buildd@lgw01-amd64-050) (gcc версия 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04)) #94-Ubuntu SMP Чт, 26 августа, 20:27: 37 UTC 2021 г. 
(Убунту 5.4.0-84.94-универсальная 5.4.133)
[0.000000] Командная строка: BOOT_IMAGE=/boot/vmlinuz-5.4.0-84-generic root=PARTUUID=5198cbc0-01 ro console=tty1 console=ttyS0 nvme_core.io_timeout=4294967295 panic=-
1
[ 0.000000] Ядро поддерживает процессор:
[ 0.000000] Intel Подлинная Intel
[ 0.000000] AMD ПодлинныйAMD
[ 0.000000] Hygon HygonПодлинный
[ 0.000000] CentaurCentaurHauls
[ 0.000000] Чжаоксин Шанхай  
... много инициализации процессора, которую трудно скопировать ..
[ 10.366218] rtc_cmos 00:00: установка системных часов на 2021-09-21T11:25:30 UTC (1632223530)
[ 10.373185] md: ожидание доступности всех устройств перед автоопределением
[ 10.460173] md: если вы не используете рейд, используйте raid=noautodetect
[ 10.464642] md: Автоопределение RAID-массивов.
[10.468024] md: автозапуск...
[ 10.470867] md: ... автозапуск ВЫПОЛНЕН.
[10.473906] VFS: не удается открыть корневое устройство «PARTUUID = 5198cbc0-01» или неизвестный блок (0,0): ошибка -6
[ 10.562806] Пожалуйста, добавьте правильный вариант загрузки "root="; вот доступные разделы:
[10.569825] Паника ядра - не синхронизация: VFS: невозможно смонтировать root fs на неизвестном блоке (0,0)
[10.674637] CPU: 1 PID: 1 Comm: swapper/0 Не испорчен 5.4.0-84-универсальный #94-Ubuntu
[ 10.682527] Имя оборудования: Amazon EC2 t3.small/, BIOS 1.0 16.10.2017
[ 10.686735] Отслеживание вызовов:
[ 10.691100] dump_stack+0x6d/0x8b
[ 10.759061] паника+0x101/0x2e3
[10.761974] mount_block_root+0x23f/0x2e8
[10.765568] mount_root+0x38/0x3a
[ 10.768584] prepare_namespace+0x13f/0x194
[10.771873] ядро_init_freeable+0x23f/0x263
[ 10,775368] ? rest_init+0xb0/0xb0
[10.859141] ядро_инит+0xe/0x110
[ 10.862101] ret_from_fork+0x35/0x40
[10.865843] Смещение ядра: 0x36a00000 от 0xffffffff81000000 (диапазон перемещения: 0xffffffff80000000-0xffffffffbffffffff)

Он говорит мне, что не может найти загрузочное устройство или partuuid в соответствии с ним. В этот момент мне в значительной степени приходится завершать экземпляр и повторять попытку, так как я не могу легко восстановить его.

Есть ли лучший способ изменить мое ядро ​​на универсальное? Я был бы рад использовать общий образ любым возможным способом на данный момент, если он загрузится.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.