У меня есть плата Freescale I.MX ARM, для которой я готовлю загрузчик, ядро и корневую файловую систему на SD-карте. Я немного смущен порядком, в котором я разбиваю и копирую файлы на SD-карту. Допустим, у меня пустая sdcard размером 4 ГБ. Я использовал gparted, чтобы сначала разбить его на:
Первый раздел размером 400 МБ в системе FAT32. это мой загрузочный раздел. Второй раздел - это оставшаяся часть карты как ext3. Это раздел моей корневой файловой системы.
Допустим, моя SD-карта находится в / dev / sdb.
Теперь я видел много документов, немного отличающихся способом копирования загрузочных файлов.
Какой правильный путь?
Способ 1:
(без монтирования разделов sdb: sudo dd if = u-boot.bin of = / dev / sdb bs = 512 seek = 2 sudo dd if = uImage of = / dev / sdb bs = 512 seek = 2
Смонтируйте sdb2 для копирования rootfs: mount / dev / sdb2 / mnt / rootfs copy rootfs: tar -xf tarfile / mnt / rootfs
Метод 2: смонтируйте загрузочный раздел sdb1: mount / dev / sdb1 / mnt / boot copy uboot и kernel: cp u-boot.bin / mnt / boot / cp uImage / mnt / boot /
Затем скопируйте rootfs, как указано выше!
Какой правильный. Я пробовал два, но SDD-карта даже не загружается. Когда я попробовал метод 1, карта загружалась до тех пор, пока не сообщалось, что rootfs не найден в разделе. Я вынул карту, вставил и обнаружил, что первый раздел fat 32 каким-то образом «разрушен», поскольку он говорит «нераспределенный» на gparted.
Пожалуйста помоги.