Если у вас есть существующая ОС, работающая на Pi, то сначала было бы полезно узнать, поддерживается ли устройство USB. Вы можете сделать это, установив его как обычно:
mount /dev/sda1 /mnt
Если это не удастся, вы не сможете использовать USB-устройство в качестве корневого раздела, не включив для него модули ядра. И для этого вам может понадобиться собрать собственное ядро.
Если это удастся, то он должен нормально работать с некоторыми изменениями параметров загрузки, которые использует Pi:
Откройте существующий образ, cmdline.txt
который находится в загрузочном разделе, и введите следующие строки:
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1
root=/dev/sda1 rootfstype=ext4 rootwait text
Все, что вам нужно сделать, это перенести это изображение на SD-карту и загрузить Pi. Если все в порядке, /dev/sda1
должно быть местоположение USB-накопителя при загрузке Pi, и поэтому он должен попытаться использовать это местоположение в качестве корневого. Этот rootwait
параметр важен, поскольку он заставит процесс загрузки зависать до тех пор, пока USB-накопитель не будет распознан. Без этого Пи может жаловаться на то, что местоположение не существует.
Я предлагаю вам скопировать корневой раздел из существующего образа Raspberry Pi на USB-накопитель и использовать его для загрузки.
Дайте мне знать, если вам нужна дополнительная информация.
console=...
Уже не должно быть там?/dev/sdx
- по крайней мере, в/etc/fstab/
- тогда это не имеет значения, еслиx
изменения.Самый простой способ настроить это - использовать BerryBoot . Он поддерживает установку или извлечение одного или нескольких изображений на USB-накопителе (или на самой SD-карте) из коробки через приятный графический интерфейс.
Чтобы настроить его, все, что вам нужно сделать, это скопировать ~ 70 МБ установочных файлов на SD-карту, отформатированную в FAT32, вставить ее в устройство и загрузить. У него даже есть список предварительно настроенных образов, которые он может автоматически загрузить и установить для вас через соединение Ethernet или Wi-Fi.
Затем вы выбираете операционную систему, которую вы хотите загрузить по умолчанию, из имеющихся у вас образов, и, если вы хотите добавить новые образы или изменить настройки по умолчанию позднее, вы просто нажимаете enter во время процесса загрузки, чтобы перенастроить!
источник
хорошо, чтобы уточнить -
далее к ответу @Jivings -
Существует несколько способов обращения к диску в fstab. Использование / dev / sdXX не всегда может быть безопасным, так как порядок появления scsi-дисков может быть не гарантирован.
Чего я не знаю, так это того, понимает ли конфигурация загрузки что-либо кроме основных меток устройства. Однако root = / dev / sda1 - это абстракция, поэтому теоретически root = LABEL = TEST может работать. Мне нужно расследовать.
Я прошу прощения, если я не очень ясно. Очевидно, у меня есть некоторый опыт в объяснении Linux новым людям.
источник