Как настроить загрузочный раздел Archlinux ARM для Raspberry Pi 64-бит с uboot

Вопрос или проблема

У меня есть устройство Raspberry Pi 3b+ (Arch64). Как правило, я использую Raspbian 64-bit, применяя инструмент Rasbian Imager для настройки моей SD-карты.

Меня интересует возможность запускать Archlinux 64-bit на том же устройстве. Я следую официальному руководству для его настройки отсюда:

здесь

Мне удалось успешно настроить SD-карту, создав необходимые разделы и файловые системы. Я также обновил /etc/fstab с правильными PARTUUID для монтирования разделов / и /boot.

Теперь я заметил, что мне нужно обновить файл /boot/boot.txt и выполнить команду ./mkscr после установки uboot-tools на другой работающей системе arch64 linux. Для этого я использовал экземпляр Archlinux arch64 из UTM на машине с MacOS серии M.

Вопрос в том, что необходимо обновить в файле /boot/boot.txt. Ниже приведен весь файл /boot/boot.txt, уже включенный в загруженный tarball:

# После изменения, выполните ./mkscr

# Установите корневой раздел на второй раздел загрузочного устройства
part uuid ${devtype} ${devnum}:2 uuid

setenv bootargs console=ttyS1,115200 console=tty0 root=PARTUUID=${uuid} rw rootwait smsc95xx.macaddr="${usbethaddr}"

if load ${devtype} ${devnum}:${bootpart} ${kernel_addr_r} /Image; then
  if load ${devtype} ${devnum}:${bootpart} ${fdt_addr_r} /dtbs/${fdtfile}; then
    if load ${devtype} ${devnum}:${bootpart} ${ramdisk_addr_r} /initramfs-linux.img; then
      booti ${kernel_addr_r} ${ramdisk_addr_r}:${filesize} ${fdt_addr_r};
    else
      booti ${kernel_addr_r} - ${fdt_addr_r};
    fi;
  fi;
fi

Я думаю, мне нужно обновить строку:

part uuid ${devtype} ${devnum}:2 uuid

Может кто-нибудь подсказать, что здесь нужно изменить, и нужно ли менять какой-либо другой файл в /boot/ для того, чтобы система заработала?

Ответ или решение

Конфигурация загрузочного раздела Archlinux ARM для 64-битного Raspberry Pi с использованием uboot может показаться сложной задачей, но с правильными инструкциями и вниманием к деталям, она вполне осуществима. Рассмотрим необходимые шаги для этой задачи.

Установка и настройка

  1. Создание разделов на SD-карте: Известно, что вы уже успешно создали разделы и файловые системы на SD-карте, и обновили /etc/fstab с правильными PARTUUID для монтирования / и /boot. Это важный шаг, который необходимо выполнить для корректной работы системы.

  2. Редактирование файла boot.txt: Вам нужно внести корректировки в файл /boot/boot.txt, чтобы uboot правильно загружал вашу систему. Ваша задача — обновить строку:

    part uuid ${devtype} ${devnum}:2 uuid

    На самом деле, uboot требует указания правильно идентификатора для корневого раздела. Вам следует заменить это на строку, обеспечивающую корректное управление загрузкой, например:

    setenv uuid <PARTUUID вашего корневого раздела>

    Чтобы получить текущую PARTUUID, вы можете использовать команду:

    blkid

    Это позволит вам определить идентификатор раздела, который следует подставить вместо <PARTUUID вашего корневого раздела>.

  3. Создание файла boot.scr: После внесения изменений в boot.txt, вам необходимо запустить команду ./mkscr для создания boot.scr. Это скрипт, который uboot прочитает при загрузке Raspberry Pi. Убедитесь, что у вас установлен пакет uboot-tools, так как mkscr — это часть этого пакета.

  4. Проверка других файлов в /boot/: Внимательно проверьте, объем ли загрузочные файлы, такие как ядро (/Image), устройство дерева (/dtbs/${fdtfile}) и initramfs (/initramfs-linux.img). Они должны соответствовать вашему оборудованию.

  5. Дополнительные изменения: Убедитесь, что переменная bootargs включает все необходимые параметры для вашей конфигурации, особенно если ваше оборудование требует специальных драйверов или параметров ядра.

Заключение

Эти шаги должны помочь в настройке Archlinux ARM с использованием uboot. Обратите внимание на важность правильного определения PARTUUID и убедитесь, что все файлы в /boot/ актуальны и соответствуют вашему устройству. Если вы столкнетесь с проблемами, обязательно проверьте лог загрузки для диагностики.

Эти действия позволят вам успешно запустить Archlinux на вашем Raspberry Pi и расширять свои возможности для работы с этой гибкой и настраиваемой операционной системой.

Оцените материал
Добавить комментарий

Капча загружается...