在嵌入式产品开发过程中,为了调试的方便,通常使用 by luozhiyong131 - 移动操作系统 - 2011-12-23 03:35:27 阅读(602) 回复(0)
本帖最后由 vioder_wzb 于 2011-10-27 23:19 编辑
在.config里面修改启动参数:command line: root=/dev/nfs nfsroot=192.168.1.103:/nfsroot/rootfs ip=192.168.1.106 rw console=ttySAC0 mem=64M,下面是启动时打印的信息:
(出错信息在后面几行,为了完整,将全部的信息都贴上,也许可以先拉到底下直接看出错点,上面是不用看的)
TQ2440 # tftp 31000000 uImage
dm9000 i/o: 0x20000300, id: 0x90000a46
DM9000: running...
建立nfs根文件系统,主要是因为在开发的时候,很方便。在PC机上把需要的文件拷贝到共享目录下,在开发板的文件系统里就可以对应看到此文件。
本文旨在建立一个最小的根文件系统。大家熟知的根文件系统,都包含一/bin、/sbin、/usr、/etc、
/lib等目录。通过busybox工具来编译生成根文件系统下的可执行文件。
本编译器是arm-linux-gcc 3.4.5版本的。
1.下载busybox-1.7.0,从
http://www.busybox.net/downloads/...
最近在实验从nfs服务器上挂载根文件系统。我用的redhat-2.6.18的内核,重新编译内核后。在启动过程中出现以下错误信息:
。。。。。
looking up port of RPC 100003/2 on 192.168.1.2
portmap: RPC call retured error 101
Root-nfs: Unable to get nfsd port number from server, using default
looking up port of RPC 100005/1 on 192.168.1.2
portmap: RPC call retured error 101
Root-nfs: Unable to get mountd port numbe...
嵌入式linux的开发中,内核移植及根文件系统的建立过程中,为了验证内核移植是否成功,根文件系统的建立是否可行,需要将它们的映像文件烧写到Flash中反复试验。如此频繁地烧写Flash,既浪费时间,减低了开发效率,还会对Flash造成损伤。因此在内核移植及根文件系统的建立过程中一般采用网络引导。具体操作过程如下:
一 Boot Loader环境变量及内核参数设置
我的开发板的boot loader采用的是U-boot,其环境变量设置如下:
Uboot> p...
调试根文件系统最好的方法是用nfs方式加载,不然做一个烧一次费时费力且浪费板子生命。
用nfs方式加载根文件系统需要kernel的支持在2.4内核中,选Networking options->IP: kernel level autoconfiguration ,这个选项是为了使内核级别的动态ip配置,在File System->Network File System中选择Root file system on nfs
这样内核就支持nfs根文件系统挂载了
启动vivi进入vivi交互命令,建议先查看param 配置,基本按照默认的配置就...
准备工作:EUxLinux联盟
一台装有REDHAT9.0的PC机,一套LJD2410-I开发板,PC机上装有LJD2410的软件包,假如我EUxLinux联盟
们通过nfs要加载的文件系统为/LJD2410/root_dir/root_china,EUxLinux联盟
Ifconfig eth0 192.168.1.100 //设置PC机linux的IP:192.168.1.100,EUxLinux联盟
Ifconfig eth0 192.168.1.10 //开发板IP:192.168.1.10EUxLinux联盟
EUxLinux联盟
我们需要重新配置编译内核,开启开发板nfs文件系统功能,...
本帖最后由 nf_xx 于 2014-09-20 14:55 编辑
我自己移植的uboot和内核,tftp和nfs能够使用,
我想通过在nfs里 mout -t yaffs2 /dev/mtdblock2 /mnt 来挂载,然后烧写根文件系统,
现在遇到的问题是,我挂载后,我把数据copy进 /mnt后,容量确实有变化,
但是我umount后,再mount 发现容量还是烧写之前的,表明我烧进去后没保存,不知道什么问题,求指教呀
还有一个问题,就是我在PC端,copy一个文件在nfs文件夹下的 home目录,...
抓取nfs交互的网络包,发现nfs协议交互返回了一个错误状态
错误情况为:
Accept State: remote can't support version # (2)
Program Version (Minimum): 3
Program Version (Maximum): 4
字面上理解是
nfs服务器不支持v2版的nfs协议
请问有什么办法让linux内核选择v3版的协议挂载nfs吗?
本帖最后由 thzhr2009 于 2011-08-11 14:25 编辑
CPU:AT91RM9200
LINUX内核版本2.6.20
根文件系统路径:/home/zhr/rootfs
使用busybox制作根文件系统,使用tftp方式下载进flash板子启动正常,现在需要实现nfs挂载根文件系统和内核以方便调试,在uboot下设置bootargs可使用nfs指令加载zImage,使用go命令跑起板子出现错误,打印消息如下:
ICFU> nfs 21020000 172.18.4.13:/home/zhr/rootfs/zImage
File transfer via nfs from s...
nfs: server 192.168.0.114 not responding