Могу ли я загрузить Ubuntu Server 19.10 на Raspberry Pi 4 с USB-накопителя?

И если да, то есть ли какие-нибудь учебники?

Полный нубик; Я ничего не знаю о сценариях, bash, foo.

Все, что я знаю, это «sudo» и то, как редактировать файл с помощью nano, не создавая полного хэша.

Будет ли работать этот отрывок из этого руководства Можно ли установить Ubuntu на Raspberry Pi 4 ?

Конфигурация твердотельного накопителя (SSD) (необязательно)

Загрузка с USB не добавлена ​​в прошивки Raspberry Pi 4 пока нет но над этим сейчас работают. А пока вы можете использовать свой карта micro SD в качестве загрузчика и по-прежнему загружает всю рабочую system (rootfs) с твердотельного накопителя, что дает вам полный USB 3.0 скорость увеличивается в масштабе всей системы.После официальной загрузки Pi USB выпущен, вы должны иметь возможность загружаться прямо с устройства без необходима любая временная SD-карта загрузчика.

Сначала создайте полностью загруженную карту micro SD с полным образом, следуя инструкциям предыдущие шаги в руководстве. После того, как вы создали микро SD установки вы должны теперь создать образ вашего SSD / USB-накопителя с тем же Образ Ubuntu, который вы использовали для создания SD-карты.

Теперь перейдите к «загрузочному» разделу на вновь созданном SSD / USB. диск и удалите все там, как мы это сделали с SD-картой ранее. Теперь скопируйте папку «boot» с карты micro SD на твердотельный накопитель. Это необходимо, потому что даже если файлы в «Загрузка» считываются с нашей карты памяти micro SD изначально, некоторые файлы прошивки находятся в более поздние стадии нагрузки считываются с смонтированного привода, и если отсутствуют необходимые файлы прошивки, система не загружается.

Теперь, когда вы создали разделы SSD / USB-накопителя и скопировали «Загрузочный» раздел с SD-карты на ваш новый диск, нам нужно обновить cmdline.txt вашей SD-карты, чтобы указать на SSD / USB-накопитель раздел.

 dwc_otg.fiq_fix_enable = 2 console = ttyAMA0,115200 kgdboc = ttyAMA0,115200 console = tty1 root = / dev / mmcblk0p2 rootfstype = ext4

rootwait rootflags = noload net.ifnames = 0

Ключевая часть, которую нам нужно изменить, это root = / dev / mmcblk0p2 раздел. mmcblk0p2 - это аппаратный идентификатор для хранилища micro SD. Мы необходимо изменить это на устройство, которое определяется как ваше хранилище.

Если вы используете переходник с USB на твердотельный накопитель, скорее всего, ваш диск будет называться / dev / sda2. Поэтому мы изменим от root = / dev / mmcblk0p2 до root = / dev / sda2

 root = / dev / sda2

Последняя строка будет такой:

 dwc_otg.fiq_fix_enable = 2 console = ttyAMA0,115200 kgdboc = ttyAMA0,115200 console = tty1 root = / dev / sda2 rootfstype = ext4

rootwait rootflags = noload net.ifnames = 0

Подключите и микро SD, и твердотельный накопитель к Pi и загрузитесь это вверх.

Помните: первая загрузка может занять 2-3 минуты для первого запуска, поэтому подождите некоторое время, прежде чем предположить, что это не сработало.

0
задан 31 October 2019 в 04:35

2 ответа

Я прошил образ Ubuntu Server 19.10 для Raspberry Pi на карту microSD и SSD и подключил их к моему Raspberry Pi 4B.

К моему удивлению, загрузка Ubuntu Server с SSD сработала немедленно и вообще без какой-либо реконфигурации. Первоначальный процесс загрузки зависит от карты microSD / загрузочного тома, но затем корневой том linux на SSD используется для загрузки Ubuntu Server. Я даже удалил корневой том linux с карты microSD, чтобы убедиться, что к нему никак нельзя получить доступ.

Я сам новичок в Linux / Raspberry Pi, но после просмотра содержимого загрузочного тома и проверки файла README я обнаружил, что по умолчанию это /boot/nobtcmd.txt файл вызывается во время загрузки для монтирования корневого тома и содержит следующую строку:

net.ifnames = 0 dwc_otg.lpm_enable = 0 console = ttyAMA0,115200 console = tty1 root = LABEL = доступный для записи rootfstype = ext4 elevator = крайний срок rootwait fixrtc

Часть root = LABEL = Writable определяет том для монтирования, и в этом случае монтирование тома основано на имени метки тома, а не на имени устройства, например sda1. MicroSD и SSD записаны из одного и того же образа, и каждый из них содержит два тома с метками «загрузка системы» и «возможность записи». Похоже, что контроллер SSD имеет более высокий приоритет, чем контроллер microSD, а «записываемый» том на SSD является первым, который обнаруживается при первоначальном монтировании корня по метке тома во время процесса загрузки.

1
ответ дан 17 January 2020 в 16:28

Что бы это ни стоило, я следовал общему совету отсюда: https://jamesachambers.com/raspberry-pi-4-usb-boot-config-guide- for-ssd-flash-drive / и который вы обрисовали в своем вопросе, и я обнаружил проблему с образом Ubuntu 19.10, поставляемым Ubuntu. После множества проб и ошибок и, в конечном итоге, подключения монитора, чтобы увидеть, что происходит, мне пришлось:

  • загрузиться с SD-карты
  • установить SSD-диск в / mnt ( включая установку загрузочного раздела SD-карты в / mnt / boot / firmware )
  • chroot на смонтированный диск
  • обновите его (как описано здесь: Как обновить и добавить новый пакеты в chroot? )
  • и, наконец, перезагрузка

Все сработало. Теперь он работает, как ожидалось. Мне кажется, что есть какая-то ошибка в ядре образа, который в настоящее время доступен из Ubuntu, который влияет на способность ОС монтировать загрузочный раздел SD-карты, но который исправлен в более поздней версии. Это не влияет на загрузку с SD-карты, а только на загрузку с SSD.

Я хотел бы добавить, что между 18.04 и 19.10 наблюдается небольшой прирост производительности, но это может быть разница между расширениями ядра и конфигурациями по умолчанию, это не существенно.

0
ответ дан 8 March 2020 в 19:27

Другие вопросы по тегам:

Похожие вопросы: