Недавно получили плату с AT91SAM9XE512.
После загрузки Linux-а попробовал открыть текстовый файл с помощью vi. В ответ получил сообщение vi: applet not found.
Я предположил, что vi не установлен и попытался добавить его в файловую систему. Запустил конфигуратор Busybox, добавил редактор vi. Затем запустил компиляцию файловой системы с помощью команды ./build_system. B директории /tftpboot появились новые файлы rootfs, rootfs.arm.cpio.gz, zImage, zlinux.
Размер файлов zImage и zlinux не изменился, у rootfs и rootfs.arm.cpio.gz - увеличился.
Из оболочки u-boot запустил команду run tftp_boot. После загрузки редактор vi по-прежнему не работал. Получается что он не был добавлен в файловую систему либо файловая система не загружается вместе с ядром.
Прошу помочь в решении данной задачи.
все сделали правильно и видимо упустили один пункт - новый образ rootfs надо положить (или проверить что он попал) в правильный каталог - по умолчанию /tftpboot под правильным именем. имя можно посмотреть в консоли Uboot - printenv содержимое скрипта tftp_boot
То что запускали конфиг и пересобирали базибокс совершенно не означает, что он в корневуху попадет ...
Я не знаю как это правильно делается (изменение содержимого базибокса на лету, тут скорее от окружения сборки зависит), либо тупо в ручную копирую, либо сношу папку с буилдом базибокса (указывая внешний конфиг).
[quote.]все сделали правильно и видимо упустили один пункт - новый образ rootfs надо положить (или проверить что он попал) в правильный каталог - по умолчанию /tftpboot под правильным именем. имя можно посмотреть в консоли Uboot - printenv содержимое скрипта tftp_boot[/quote]
То есть U-boot загружает файл zlinux и запускает в качестве ядра. Но ведь этот файл не изменяется при изменений файловой системы. В то же время после команды tftp_boot linux загружается и файловая система у него появляется. Следовательно файловая система интегрирована в файл zlinux.
Но она почему-то не обновляется во время сборки системы.
В настройках initramfs ядра указана ссылка на архив /tftpboot/rootfs.arm.cpio.gz. Если его удалить перед сборкой ядра, то появится предупреждение, но ядро все равно собирается с тем же размером файла и нормально запускается, естественно без vi.