D-Chip i.MX6使用TFTP NFS方式挂载linux系统的方法
2016-11-18 11:38
716 查看
在调试i.mx6项目的时候,官方给出的默认调试方法为通过SD卡或者MFG tool工具来进行,并且通过MFG tool工具为主流推荐的方法。但是如果在系统rootfs比较大的时候,使用mfg tool工具进行烧写可能会比较慢,下面的方法就是使用传统的TFTP方法烧写内核和挂载文件系统的方法。(调试平台为珠海鼎芯的i.mx6开发板)
使用tftp前提条件为板子已经存在uboot,板子能够跑起来并且进入uboot命令行,然后通过串口操作命令行:
通过tftp烧写uImage:
1.进入uboot命令行下:
MX6Q SABRESD U-Boot > setenv bootargsconsole=ttymxc0,115200
MX6Q SABRESD U-Boot > setenv loadaddr0x10800000
MX6Q SABRESD U-Boot > setenv serverip 192.168.1.122 (根据自己的网络进行设置)
MX6Q SABRESD U-Boot > setenv bootfileuImage
### The user can set fake MAC address viethaddr environment if need设置mac地址
MX6Q SABRESD U-Boot > setenv ethaddr00:01:02:03:04:05
MX6Q SABRESD U-Boot > saveenv
2.把uImage文件放到tftp服务器目录下(如ubuntu系统中的/home/usr/tftp),然后uboot命令行下运行:
MX6Q SABRESD U-Boot > dhcp
此时会自动把uImage从tftp服务器下载到imx6的RAM中,等待下载完成
3.最后把uImage写到板子上的eMMC中,uboot命令行运行:
MX6Q SABRESD U-Boot > mmc dev 3
MX6Q SABRESD U-Boot > mmc write ${loadaddr} 0x800 0x2000
做完以上步骤,uImage就烧写完成了。
通过NFS方式启动linux系统:
1. uboot命令行中运行:
MX6Q SABRESDU-Boot > setenv ethaddr 00:01:02:03:04:05
MX6Q SABRESDU-Boot > saveenv
MX6Q SABRESD U-Boot > setenv serverip 192.168.1.122
MX6Q SABRESD U-Boot > setenv bootfile uImage
MX6Q SABRESD U-Boot > setenv nfsroot /data/rootfs_home/rootfs_mx6
MX6Q SABRESD U-Boot > setenv bootargs_base 'setenv bootargsconsole=ttymxc0,115200'
### For LVDS0 connection从LVDS0启动
MX6Q SABRESD U-Boot > setenv bootargs_nfs 'setenv bootargs${bootargs} root=/dev/nfs ip=dhcp
nfsroot=${serverip}:${nfsroot},v3,tcpvideo=mxcfb0:dev=ldb,LDB-XGA,if=RGB666'
MX6Q SABRESD U-Boot > setenv bootcmd_net 'run bootargs_basebootargs_nfs;bootm'
MX6Q SABRESD U-Boot > setenv bootcmd
做完以上步骤,板子启动的时候,就会通过nfs的方式把文件系统挂载到板子上。
使用tftp前提条件为板子已经存在uboot,板子能够跑起来并且进入uboot命令行,然后通过串口操作命令行:
通过tftp烧写uImage:
1.进入uboot命令行下:
MX6Q SABRESD U-Boot > setenv bootargsconsole=ttymxc0,115200
MX6Q SABRESD U-Boot > setenv loadaddr0x10800000
MX6Q SABRESD U-Boot > setenv serverip 192.168.1.122 (根据自己的网络进行设置)
MX6Q SABRESD U-Boot > setenv bootfileuImage
### The user can set fake MAC address viethaddr environment if need设置mac地址
MX6Q SABRESD U-Boot > setenv ethaddr00:01:02:03:04:05
MX6Q SABRESD U-Boot > saveenv
2.把uImage文件放到tftp服务器目录下(如ubuntu系统中的/home/usr/tftp),然后uboot命令行下运行:
MX6Q SABRESD U-Boot > dhcp
此时会自动把uImage从tftp服务器下载到imx6的RAM中,等待下载完成
3.最后把uImage写到板子上的eMMC中,uboot命令行运行:
MX6Q SABRESD U-Boot > mmc dev 3
MX6Q SABRESD U-Boot > mmc write ${loadaddr} 0x800 0x2000
做完以上步骤,uImage就烧写完成了。
通过NFS方式启动linux系统:
1. uboot命令行中运行:
MX6Q SABRESDU-Boot > setenv ethaddr 00:01:02:03:04:05
MX6Q SABRESDU-Boot > saveenv
MX6Q SABRESD U-Boot > setenv serverip 192.168.1.122
MX6Q SABRESD U-Boot > setenv bootfile uImage
MX6Q SABRESD U-Boot > setenv nfsroot /data/rootfs_home/rootfs_mx6
MX6Q SABRESD U-Boot > setenv bootargs_base 'setenv bootargsconsole=ttymxc0,115200'
### For LVDS0 connection从LVDS0启动
MX6Q SABRESD U-Boot > setenv bootargs_nfs 'setenv bootargs${bootargs} root=/dev/nfs ip=dhcp
nfsroot=${serverip}:${nfsroot},v3,tcpvideo=mxcfb0:dev=ldb,LDB-XGA,if=RGB666'
MX6Q SABRESD U-Boot > setenv bootcmd_net 'run bootargs_basebootargs_nfs;bootm'
MX6Q SABRESD U-Boot > setenv bootcmd
做完以上步骤,板子启动的时候,就会通过nfs的方式把文件系统挂载到板子上。
相关文章推荐
- Linux系统下如何使用autofs挂载NFS共享
- linux下使用NFS挂载文件系统
- linux如何使用NFS挂载文件系统
- linux系统之间通过nfs网络文件系统挂载设置方法
- 关于linux - Centos 7 系统下使用PXE网络的方式(pxe+dhcpd+tftp+httpd)安装操作系统
- tiny4412 使用uboot烧写 linux 挂载 nfs文件系统[总体步骤]
- Linux使用NFS(网络文件系统)挂载网络磁盘
- linux下使用NFS挂载文件系统
- 深度剖析 Linux0.11 系统中堆栈的使用方法
- 嵌入式Linux开发板上NFS文件系统的使用
- 双系统下Linux使用NTFS-3G挂载NTFS分区
- mini2440开发板Linux系统自动挂载U盘与SD卡失败的解决方法
- Linux系统里Makefile的automake使用方法
- 利用qemu模拟arm系统(root采用NFS方式挂载)
- linux系统登录方式的设置方法
- Linux中如何掌握NFS的使用方法
- 深度剖析 Linux0.11 系统中堆栈的使用方法
- Linux下NFS(网络文件系统)的建立与配置方法 [转]
- linux下使用sort命令升序、降序、随机及组合方式排序方法
- 两个Linux系统NFS服务器的配置方法