===== rootfs через nfs ===== Далее описан способ загрузки встраиваемой linux-системы через nfs (вообще без участия flash-памяти). Это очень удобно для мгновенной отладки, когда не нужно ничего перезаписывать во встроенную flash, а все файлы, в т.ч. и корневая файловая система, находятся на сервере. **Собираем ядро с опциями ROOT_NFS и CONFIG_IP_PNP** В buildroot они называются так: * Networking support -> Networking options -> IP: kernel level autoconfiguration * File systems -> Network File Systems -> Root file system on NFS (не видна без первой опции) Предварительно убеждаемся, что в "make menuconfig" "Target filesystem options" включена опция "tar the root filesystem" и правильно указан путь в "also copy the image to...". \\ **Добавляем /dev/nfs в файл device_table.txt и пересобираем корневую фс в buildroot (make).** /dev/nfs b 777 0 0 0 255 0 0 - **Настраиваем tftp для zImage:** FIXME **Настраиваем nfs для rootfs:** /data/work/em5root pandapc01(rw,sync,no_subtree_check,all_squash,anongid=1000,anonuid=1000,no_wdelay) pandapc01 -- ip удаленного хоста, на время настройки можно поставить *. \\ /data/work/em5root -- папка под коневую фс. **После изменения не забываем сделать** sudo exportfs -a **Распаковываем корневую систему из buildroot:** cp rootfs.arm.tar /data/work/em5root cd /data/work/em5root # Без sudo не создадутся файлы устройств! sudo tar -xvf rootfs.arm.tar # id пользователя и группы те же, что в /etc/exports sudo chown -R 1000.1000 . **Настраиваем u-boot на целевом устройстве:** Предварительно рекомендуется выполнить printenv и скопировать старые значения переменных. u-boot> setenv serverip 10.163.2.126 u-boot> setenv nfspath /data/work/em5root/ u-boot> setenv hostname pandapc01 u-boot> setenv bootargs root=/dev/nfs rw nfsroot=$(serverip):$(nfspath),rsize=1024,wsize=1024 ip=$(ipaddr):::$(netmask):$(hostname) debug console=ttyS0,38400 nfsrootdebug; u-boot> setenv bootcmd tftpboot zImage\; wtags\; go u-boot> printenv u-boot> saveenv u-boot> reset **Если всё было сделано правильно, система должна загрузиться по nfs.**