系统移植环境搭建

【目标机】:开发板
【开发主机】:虚拟机
【宿主机】:pc机

网络的建立:
1) 设置【开发主机】的IP地址:也就是虚拟机的ip地址;
2) 设置【目标机】的ip地址:
启动开发板,
printenv(pri): 输出当前环境信息;
setenv(set):设置环境变量;
saveenv(save):保存环境变量;

set ipaddr 192.168.1.191 //设置【目标机】的ip地址;
set serverip 192.168.1.190 //设置【开发主机】的ip地址;
set gatewayip 192.168.1.1 //设置网关
set netmask 255.255.255.0 //设置子网掩码
save //保存环境变量到emmc中;
注意:
保证开发主机和目标机在同一个网段;
设置的serverip要与开发主机的ip地址保持一致;
设置完成需要对数据进行保存,否则断电数据丢失;
3) 确认是否建立好网络通信:
在目标机上通过ping命令检测
ping 192.168.1.190

出现的结果:
ping failed; host 192.168.1.190 is not alive
说明网络未连通;
分析错误原因:
a. 检测网线是否连通; 
b. 检测参数是否都正确;
c. 检测serverip是否和开发主机的ip一致;
d. 检测开发主机和宿主机是否桥接的是有线网卡;
……
host 192.168.1.190 is alive
说明网络连通;

文件的传输:
tftp服务来传输文件;
【开发主机】建立tftp服务器:
1. 安装tftp服务器:
sudo apt-get install tftpd-hpa tftp-hpa
注意:虚拟机需要连外网,也就是能够ping www.baidu.com 
2. 配置tftp服务器:
sudo vim /etc/default/tftp-hpa
TFTP_USERNAME="tftp" //用户的使用命令;
TFTP_DIRECTORY="/var/lib/tftpboot" //共享文件的路径;
TFTP_ADDRESS="0.0.0.0:69" //服务器的ip地址和端口号;
修改共享文件的权限
sudo chmod 0777 /var/lib/tftpboot
3. 启动tftp服务器
sudo service tftpd-hpa restart //重启
4. 将需要传输的文件存储在共享目录中(/var/lib/tftpboot)

【目标机】下载文件
tftp 41000000 uImage //下载内核
tftp 42000000 exynos4412-fs4412.dtb //下载设备树
tftp 43000000 ramdisk.img //下载根文件系统
bootm 41000000 43000000 42000000
 内核地址 根文件系统地址 设备树地址
注意:地址顺序不能出错;  
 
验证:当板子重启时,不能重新运行系统;
解决:设置启动参数
set bootcmd tftp 41000000 uImage\; tftp 42000000 exynos4412-fs4412.dtb\; tftp 43000000 ramdisk.img\; bootm 41000000 43000000 42000000
交叉编译器安装:(充当翻译官的作用)
1. 将gcc-4.6.4.tar.xz 拷贝到虚拟机的某一个目录中
2. 进入到所对应的目录中,解压gcc-4.6.4.tar.xz
3. 进入到gcc-4.6.4目录中,通过pwd查看绝对路径;
4. 修改PATH的值;
进入到(编辑文件)sudo vim /etc/bash.bashrc,在文件的最前面添加
export PATH=$PATH:/home/farsight/gcc-4.6.4/bin
5. 重启;
source /etc/bash.bashrc 


nfs挂载文件
【开发主机】
1. 安装nfs服务器
sudo apt-get install nfs-kernel-server
2. 配置nfs服务器
1) 拷贝根文件系统到开发主机中的一个目录(例如/source/nfs)
cp rootfs.tar.xz /source/nfs
2) 进入到rootfs.tar.xz所对应的目录中
cd /source/nfs
3) 解压根文件系统
tar xf rootfs.tar.xz
4) 进入到rootfs目录,使用pwd确定所对应的绝对路径
cd rootfs
pwd  ----> /source/nfs/rootfs   就是用来挂载的共享路径;

5) 修改nfs配置文件 /etc/exports 
在文件的尾部添加代码:
/source/nfs/rootfs  *(rw,sync,no_root_squash,no_subtree_check)
注意:路径需要和根文件系统的实际路径一致;
3. 启动nfs服务器:
sudo service nfs-kernel-server restart

【目标机】
1. 设置启动参数:
set bootcmd tftp 41000000 uImage\; tftp 42000000 exynos4412-fs4412.dtb\; bootm 41000000 - 42000000
set bootargs root=/dev/nfs nfsroot=192.168.1.190:/source/nfs/rootfs rw console=ttySAC2,115200 init=/linuxrc ip=192.168.1.191
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值