Рейтинг:0

какую исходную версию ubuntu следует использовать для добавления некоторых отладочных отпечатков? (для отладки загрузки Ubuntu)

флаг za

Я пытаюсь установить Ubuntu 20.04 на свою виртуальную машину (используя qemu-5.1.0).
Эта виртуальная машина основана на машине arm/virt от qemu, и я добавил периферийное устройство и изменил карту адресов в соответствии с нашей разрабатываемой SoC. Установка останавливается на ранней стадии, поэтому я подумал, что, может быть, если я пересоберу ubuntu (ядро linux) с некоторыми отпечатками или режимом отладки и использую его для установки ubuntu, я смогу проанализировать, что не так.
Образ .iso, который я использовал для Ubuntu 20.04, взят из http://ports.ubuntu.com/ubuntu-ports/dists/focal-updates/main/installer-arm64/current/legacy-images/netboot/mini.iso
и процедура основана на этой веб-странице: https://futurewei-cloud.github.io/ARM-Datacenter/qemu/how-to-launch-aarch64-vm/
Образ успешно установлен на оригинальной виртуальной машине, и вот результат версии программного обеспечения:

ckim@virt-ubuntu-20:~$ uname -r
    5.4.0-74-общий
ckim@virt-ubuntu-20:~$ uname -a
    Linux virt-ubuntu-20 5.4.0-74-generic #83-Ubuntu SMP Сб, 8 мая, 02:34:05 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux
ckim@virt-ubuntu-20:~$ 
ckim@virt-ubuntu-20:~$ lsb_release -a
    Нет доступных модулей LSB.
    Идентификатор дистрибьютора: Ubuntu
    Описание: Ubuntu 20.04.2 LTS
    Релиз: 20.04
    Кодовое название: фокальный

Если я смонтирую файл mini.iso (с циклом -o) и загляну внутрь, конечно, нет исходного кода Linux или Ubuntu, который я мог бы использовать для его сборки заново.Поэтому я клонирую исходный код Ubuntu из http://kernel.ubuntu.com/git/ubuntu/ubuntu-focal.git и сделал git-клон git://kernel.ubuntu.com/ubuntu/ubuntu-focal.git. Когда я делаю git-тег Я вижу ниже теги.

Ubuntu-5.4-5.4.0-10.13
Убунту-5.4-5.4.0-11.14
Убунту-5.4-5.4.0-12.15
Ubuntu-5.4-5.4.0-13.16
Убунту-5.4-5.4.0-14.17
Убунту-5.4-5.4.0-15.18
Убунту-5.4.0-15.18
Ubuntu-5.4.0-16.19
Ubuntu-5.4.0-17.20
Убунту-5.4.0-17.21
Убунту-5.4.0-18.22
Убунту-5.4.0-19.23
Убунту-5.4.0-20.24
Ubuntu-5.4.0-21.25
Ubuntu-5.4.0-22.26
Ubuntu-5.4.0-23.27
Ubuntu-5.4.0-24.28
Убунту-5.4.0-25.29
Убунту-5.4.0-26.30
Убунту-5.4.0-28.32
Убунту-5.4.0-29.33
Убунту-5.4.0-30.34
Убунту-5.4.0-31.35
Убунту-5.4.0-32.36
Убунту-5.4.0-33.37
Убунту-5.4.0-34.38
Убунту-5.4.0-37.41
Убунту-5.4.0-38.42
Убунту-5.4.0-39.43
Убунту-5.4.0-40.44
Убунту-5.4.0-41.45
Убунту-5.4.0-42.46
Убунту-5.4.0-43.47
Убунту-5.4.0-44.48
Убунту-5.4.0-45.49
Убунту-5.4.0-46.50
Убунту-5.4.0-47.51
Убунту-5.4.0-48.52
Убунту-5.4.0-49.53
Ubuntu-5.4.0-51.56
Ubuntu-5.4.0-52.57
Убунту-5.4.0-53.59
Убунту-5.4.0-54.60
Убунту-5.4.0-55.61
Убунту-5.4.0-56.62
Убунту-5.4.0-57.63
Убунту-5.4.0-58.64
Убунту-5.4.0-59.65
Убунту-5.4.0-60.67
Убунту-5.4.0-61.69
Убунту-5.4.0-62.70
Убунту-5.4.0-63.71
Убунту-5.4.0-64.72
Убунту-5.4.0-65.73
Убунту-5.4.0-66.74
Убунту-5.4.0-67.75
Убунту-5.4.0-68.76
Убунту-5.4.0-70.78
Убунту-5.4.0-71.79
Убунту-5.4.0-72.80
Убунту-5.4.0-73.82
Убунту-5.4.0-74.83
Убунту-5.4.0-75.84
Убунту-5.4.0-76.85
Убунту-5.4.0-8.11
Убунту-5.4.0-9.12
Ubuntu-hwe-5.11-5.11.0-16.17_20.04.2
Ubuntu-hwe-5.11-5.11.0-16.17_20.04.4
Ubuntu-hwe-5.11-5.11.0-16.17_20.04.5
Ubuntu-hwe-5.11-5.11.0-20.21_20.04.1
Ubuntu-hwe-5.8-5.8.0-18.19_20.04.2
Ubuntu-hwe-5.8-5.8.0-18.19_20.04.3
Ubuntu-hwe-5.8-5.8.0-19.20_20.04.1
Ubuntu-hwe-5.8-5.8.0-19.20_20.04.2
Ubuntu-hwe-5.8-5.8.0-19.20_20.04.3
Ubuntu-hwe-5.8-5.8.0-19.20_20.04.4
Ubuntu-hwe-5.8-5.8.0-20.21_20.04.1
Ubuntu-hwe-5.8-5.8.0-21.22_20.04.1
Ubuntu-hwe-5.8-5.8.0-22.23_20.04.1
Ubuntu-hwe-5.8-5.8.0-23.24_20.04.1
Ubuntu-hwe-5.8-5.8.0-25.26_20.04.1
Ubuntu-hwe-5.8-5.8.0-28.30_20.04.1
Ubuntu-hwe-5.8-5.8.0-29.31_20.04.1
Ubuntu-hwe-5.8-5.8.0-30.32_20.04.1
Ubuntu-hwe-5.8-5.8.0-31.33_20.04.1
Ubuntu-hwe-5.8-5.8.0-32.34_20.04.1
Ubuntu-hwe-5.8-5.8.0-33.36_20.04.1
Ubuntu-hwe-5.8-5.8.0-34.37_20.04.1
Ubuntu-hwe-5.8-5.8.0-34.37_20.04.2
Ubuntu-hwe-5.8-5.8.0-36.40_20.04.1
Ubuntu-hwe-5.8-5.8.0-37.42_20.04.1
Ubuntu-hwe-5.8-5.8.0-38.43_20.04.1
Ubuntu-hwe-5.8-5.8.0-39.44_20.04.1
Ubuntu-hwe-5.8-5.8.0-40.45_20.04.1
Ubuntu-hwe-5.8-5.8.0-41.46_20.04.1
Ubuntu-hwe-5.8-5.8.0-42.47_20.04.1
Ubuntu-hwe-5.8-5.8.0-43.49_20.04.1
Ubuntu-hwe-5.8-5.8.0-44.50_20.04.1
Ubuntu-hwe-5.8-5.8.0-45.51_20.04.1
Ubuntu-hwe-5.8-5.8.0-48.54_20.04.1
Ubuntu-hwe-5.8-5.8.0-49.55_20.04.1
Ubuntu-hwe-5.8-5.8.0-50.56_20.04.1
Ubuntu-hwe-5.8-5.8.0-51.57_20.04.1
Ubuntu-hwe-5.8-5.8.0-52.59_20.04.1
Ubuntu-hwe-5.8-5.8.0-53.60_20.04.1
Ubuntu-hwe-5.8-5.8.0-54.61_20.04.1
Ubuntu-hwe-5.8-5.8.0-55.62_20.04.1
Ubuntu-hwe-5.8-5.8.0-56.63_20.04.1
Ubuntu-hwe-5.8-5.8.0-57.64_20.04.1
Ubuntu-распи-5.4.0-1007.7
Ubuntu-распи-5.4.0-1008.8
Ubuntu-распи-5.4.0-1009.9
Ubuntu-raspi2-5.4-5.4.0-1001.1
Ubuntu-raspi2-5.4-5.4.0-1002.2
Ubuntu-raspi2-5.4.0-1003.3
Ubuntu-raspi2-5.4.0-1004.4
Ubuntu-raspi2-5.4.0-1005.5
Ubuntu-raspi2-5.4.0-1006.6
v5.0
v5.11
v5.4
v5.8

Какую версию мне следует использовать, чтобы использовать версию, совпадающую с указанным выше mini.iso?
Можно просто использовать 5.4.0-74-83?

Nate T avatar
флаг it
Возможно [это] (https://wiki.ubuntu.com/DebuggingUbiquity) даст вам некоторые идеи относительно более крупной проблемы. Конечно, это немного не соответствует цели (не уверен, используете ли вы вездесущность или даже можете ли вы использовать ее для установки виртуальной машины), но это может дать вам еще пару строк, за которые можно потянуть. Это честно выше моей головы. Ссылка является частью серии статей по отладке установки Ubuntu.
muru avatar
флаг us
Вы должны проверить версию пакета (`dpkg -l linux-generic`, `apt-cache policy linux-image-generic` и т. д.).Эта версия должна точно соответствовать тегу.
флаг za
@muru Используя `dpkg -l linux-generic`, я обнаружил, что установленная версия ядра — 5.4.0.74.77. Git исходного кода Ubuntu показывает, что ядро ​​Ubuntu-5.4.0.83 датировано 2021.5.7, совсем недавно. Я предполагаю, что ядро ​​​​было обновлено во время установки (я видел, что Ubuntu получает некоторые пакеты, используя apt во время установки). Хм. если у вас есть какие-либо предложения о том, как я могу узнать оригинальную версию mini.iso, пожалуйста, сообщите мне. Спасибо!
флаг za
@NateT спасибо, но моя проблема возникает намного раньше, чем запускается ядро, поэтому я не могу проверять файлы. Последний отпечаток был из drivers/firmware/efi/libstub/fdt.c. Я не уверен, могу ли я добавить печать или отладку этого.
muru avatar
флаг us
В [манифесте] (http://ports.ubuntu.com/ubuntu-ports/dists/focal-updates/main/installer-arm64/current/legacy-images/MANIFEST.udebs) указано `kernel-image-5.4.0 -42-generic-di 5.4.0-42.46 arm64`, который соответствует [этому тегу](https://kernel.ubuntu.com/git/ubuntu/ubuntu-focal.git/commit/?h=Ubuntu-5.4. 0-42.46&id=98c4545e2d65ed35c31056f72c4da20f6b5ea0d0)
Nate T avatar
флаг it
Есть 2 версии от 20.04. У тебя второй. 5.4 была выпущена вместе с первой. Хотя, я полагаю, что загрузил свой (2-й) с 5.4 через расширенную загрузку grub. Однако эта последняя часть может быть ошибочной. Atm, grub позволяет мне загружаться только с 5.8.0 - 54 или 55.
флаг za
@muru А, кажется, это исходный образ ядра, используемый в mini.iso. и я научился использовать файл манифеста. Большое спасибо!
флаг za
@NateT Я только что догадался по дате каждой версии (в исходном коде Ubuntu я проверяю и вижу дату). Я понимаю, что initrd установщика (.iso) имеет внутри образ ядра (от 5.4.0 до 42.46), и Ubuntu обновил его во время установки, я думаю.
Nate T avatar
флаг it
Как я уже говорил, над моей головой...Я, с другой стороны, узнал, что существует манифест Linux, который, я уверен, пригодится позже XD
флаг za
@NateT нет, это пришло с веб-сайта. Эта информация о манифесте была предоставлена ​​с файлом iso. Я понял это из комментария, который Муру написал мне.
флаг za
@muru Пожалуйста, напишите простой ответ с вашими комментариями выше, чтобы я мог выбрать его как «выбранный ответ», потому что это была информация, которую я хотел.
флаг za
@NateT извините, что не выбрал ваш ответ. Хотя это было полезно. просто я хотел запустить ту же установку с отладочной информацией на моей виртуальной машине, та же самая установка iso работает нормально для другой виртуальной машины. И люди получают полезную информацию из невыбранных ответов, поэтому, я думаю, вам не нужно было удалять свой ответ.
Рейтинг:1
флаг it

Вам нужен любой дистрибутив Linux 5.8.0, желательно самый новый

Ubuntu 20.04.1 выпущен с 5.4.0, а 20.04.2 выпущен с 5.8.0.

Ваше изображение 20.04.2, как следует из вашего вопроса.

Что касается числа после тире, оно относится к разным (или обновлениям) дистрибутивам одного и того же ядра, которые были связаны с одним и тем же выпуском, поэтому лучше всего использовать самую новую версию (только в отношении последнего числа), чтобы вы получить все обновления безопасности. Тем не менее, большинство новых версий должны, по крайней мере, «хорошо играть».

Например, я использую 20.04.2 LTS. В настоящее время у меня 5.8.0-55, хотя я установил его несколько месяцев назад и создал флэш-накопитель iso почти год назад.

флаг za
да, я понимаю, что вы имеете в виду, но моя цель - воспроизвести процедуру установки из mini.iso (с добавлением только отпечатков или отладочной информации). Это для отладки сбоя установки на мою виртуальную машину. Моя виртуальная машина должна иметь некоторые проблемы, связанные с конфигурацией (отсюда проблемы с созданием таблиц fdt или acpi).
Nate T avatar
флаг it
@ChanKim [это] меня смущало. Размещение здесь только для того, чтобы люди не видели комментарии, а не отвечали и не доверяли информации в будущем.
Рейтинг:0
флаг us

Образы Ubuntu обычно сопровождаются файлами манифеста, в которых перечисляется, что в них содержится. В этом случае есть объединенный файл манифеста за различные варианты установки в этом дереве который имеет:

[...]
сетевая загрузка/mini.iso
    [...]
    образ ядра-5.4.0-42-общий-ди 5.4.0-42.46 arm64
    изображение с подписью ядра-5.4.0-42-общий-ди 5.4.0-42.46 arm64
[...]

Итак мини.исо имеет версию пакета ядра 5.4.0-42.46 (чей тег присутствует в git).

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

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