利用tftp和nfs下载文件到开发板

来源:互联网 发布:mysql explain用法 编辑:程序博客网 时间:2024/05/16 19:50

一、Linux下安装nfs服务器:

1. 安装nfs服务

$sudo apt-get install nfs-kernel-server portmap

2. 在配置文件/etc/exports中添加以下内容
/home/jxhui/nfs_root *(rw,sync,no_root_squash);以后就可以通过网络文件系统访问/home/jxhui/nfs_root目录

3. 修改完后,执行以下命令重启NFS服务:
    $sudo /etc/init.d/nfs-kernel-server restart

一、windowstftp服务器:

本地IP169.254.101.133

1. 上传:tftp -i 169.254.101.133 put d:/jiang/hello.c 

(将文件d:jiang/hello.c上传到服务器)

2. 下载:tftp -i 169.254.101.133 get hello.c d:/jiang/hello.c

(将文件hello.c文件下载到d:/jiang/目录下)

一、烧写与下载文件的方式

1. 利用Jtag烧写文件到Norflash
u-boot.bin0x1000 0000
uImage:  0x1010 0000
initrd.gz: 0x1030 0000
再把内核与文件系统复制到内存(SDRAM)中运行:
U-boot-> cp.b 10100000 20100000 200000  复制内核到内存
U-boot-> cp.b 10300000 20410000 200000  复制文件系统到内存
U-boot-> bootm 20100000   启动内核

2. 利用串口下载文件到内存(SDRAM)中(loadb命令)
前提条件:u-boot.bin通过Jtag烧写到0x1000 0000
U-boot->loadb 2010 0000 选择要下载的地址

## Ready for binary (kermit) download to 0x20100000 at 115200 bps...

这时候选择超级终端菜单上:传送>发送文件>文档名选择uImage>协议选择Kermit,点发送。能够看到发送进度。

同理下载文件系统到内存(SDRAM);

U-boot->bootm 20100000

3. 利用网络下载文件到内存(SDRAM)中

前提条件:u-boot.bin通过Jtag烧写到0x1000 0000
主机   IP:   169.254.101.133
虚拟机IP:    169.254.101.120

    开发板IP:    169.254.101.110
U-Boot> setenv ipaddr 169.254.101.110设置开发板的IP

U-Boot> setenv ethaddr 08:00:3e:26:0a:5b 设置开发板的MAC地址

U-Boot> setenv serverip 169.254.101.133  服务器的IP地址(windows)

U-Boot> saveenv  保存环境变量

3.1.  tftp命令

U-Boot> tftp 20100000 uImage  下载内核到内存

U-Boot> tftp 20410000 initrd.gz  下载文件系统到内存

U-Boot> bootm 20100000     启动内核

3.2.  nfs命令

U-Boot> nfs 20100000 169.254.101.120:/home/jxhui/nfs_root/uImage

从虚拟机中下载内核到内存

U-Boot> nfs 20410000 169.254.101.120:/home/jxhui/nfs_root/initrd.gz  

从虚拟机中下载文件系统到内存

U-Boot> bootm 20100000     启动内核



 

原创粉丝点击