Подготовка SD карты для загрузки
Данный способ создает две партиции на SD карте:
- партиция FAT32
- партиция EXT3
Партиция FAT32
на этом разделе SD карты должны находится:
- MLO файл - основной загрузчик именно с которого происходит старт процессора (после внутреннего Boot-ROM процессора, конечно)
- u-boot.bin или u-boot.img - загрузчик u-boot, который загружает ядро операционной системы Linux
- uEnv.txt - дополнительный файл, в котором могут быть переменные окружения для u-boot
- uImage - файл ядра Linux. Может быть на этой партиции, а может быть и в директории /boot в файловой системе. Это зависит от переменных окружения
- прочие файлы..
Партиция EXT3
На данном разделе хранится файловая система операционной системы Linux.
Создание разметки карты
Преимуществом данного метода является простота и скорость разметки карты.
Для создания разметки на карте выполните следующие шаги в среде Linux:
1) Скачайте скрипт:
wget http://mentorel.ru/downloads/mkcard.txt
2) Сделайте скрипт исполняемым:
$> chmod a+x mkcard.txt
3) вставьте карту в кард-ридер и определите какие файлы соответствуют вашей карте:
$> dmesg | tail [ 158.346741] USB Mass Storage support registered. [ 158.347353] usb-storage: device found at 2 [ 158.347354] usb-storage: waiting for device to settle before scanning [ 163.346516] usb-storage: device scan complete [ 163.349406] scsi 3:0:0:0: Direct-Access Generic Storage Device 0.00 PQ: 0 ANSI: 2 [ 163.350032] sd 3:0:0:0: Attached scsi generic sg1 type 0 [ 163.366028] sd 3:0:0:0: [sdb] 3842048 512-byte logical blocks: (1.96 GB/1.83 GiB) [ 163.371586] sd 3:0:0:0: [sdb] Write Protect is off [ 163.371588] sd 3:0:0:0: [sdb] Mode Sense: 03 00 00 00 [ 163.371590] sd 3:0:0:0: [sdb] Assuming drive cache: write through [ 163.401000] sd 3:0:0:0: [sdb] Assuming drive cache: write through [ 163.401003] sdb: sdb1 [ 163.426398] sd 3:0:0:0: [sdb] Assuming drive cache: write through [ 163.426402] sd 3:0:0:0: [sdb] Attached SCSI removable disk
Видно, что вставленная карта создана в системе как sdb
4) Отмонтируйте карту, если требуется
sudo umount /dev/sdb1 /dev/sdb2
5) Создайте разметку и отформатируйте карту
$> sudo LANG=c ./mkcard.txt /dev/sdb
Если вы ошибетесь и случайно укажите не тот раздел (например, карта sdc, а второй раздел HDD - sdb), то уничтожите все данные на разделе.
Работа скрипта может занять 1-2мин, после чего карта готова к использованию, но её нужно вытащить - вставить в карт-ридер.