配料:XP系统,虚拟机VM+ubuntu,开发板2410,串口线一根,网线一根,我的是双网卡RTL8139 & AR8132
注: /tftpboot TFTP共享文件夹
/opt/filesystem NFS共享文件夹
192.168.7.102 服务端IP
一、服务端设置(ubuntu)
1.IP设置:
a. 修改网络接口配置
sudo gedit /etc/network/interfaces 添加如下内容:
auto eth0
iface eth0 inet static
address 192.168.7.xxx //xxx代表Ubuntu的ip
gateway 192.168.7.1
netmask 255.255.255.0
保存退出
b. 配置DNS
sudo gedit /etc/resolv.conf(默认情况这个文件是不存在的),添加如下内容
nameserver 202.96.134.133
保存退出
c. 重新启动网络
sudo /etc/init.d/networking restart //重启网络
d. 测试网络
ping
2. TFTP设置
a. 添加TFTP的共享文件夹
sudo mkdir /tftpboot
b. 将内核文件复制到/tftpboot
c. 安装 tftp tftpd openbsd-inetd
d. 修改配置
sudo vi /etc/inetd.conf
添加:
tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /tftpboot
e. sudo /etc/init.d/openbsd-inetd reload
sudo /etc/init.d/openbsd-inetd restart 每次启动要执行(貌似不用)
要看到成功提示【OK】
f. 测试TFTP
tftp 192.168.7.102(ubuntu ip)
tftp>get uImage
看提示是否正确,如果不正确检查文件的权限
3. NFS设置
a. 把文件系统filesystem和交叉编译toolchains_for_s3c2410.tar.bz2文件拷到/opt,要解压。/opt作为NFS共享
b. 安装NFS: nfs-kernel-server nfs-common portmap
sudo dpkg-reconfigure portmap
弹出窗口提示时,“不将portmap 绑定在lookback地址”
要确认查看/etc/default/portmap #OPTIONS="-i 127.0.0.1"
c. 重启portmap
sudo /etc/init.d/portmap restart
c. 编辑/etc/exports
/opt/filesystem *(subtree_check,rw,no_root_squash,async)
d. sudo /etc/init.d/nfs-kernel-server restart
e. sudo exportfs -a
f. 测试NFS
sudo mkdir /mnt/nfs
mount 192.168.7.102:/opt/filesystem /mnt/nfs -t nfs
成功则NFS配置成功
4. 修改环境变量PATH的值
cd ~
vim .bashrc
在最后一行中添加:
export PATH=$PATH: /opt/crosstool/gcc-3.4.5-glibc-2.3.6/arm-linux-gnu/bin(crosstool为交叉编译环境文件解压后的主目录)
保存退出
执行命令:source ~/.bashrc
5. 使用交叉工具链编译c代码
比如有hello.c
arm-linux-gnu-gcc hello.c –o hello
二、客户端设置(2410)
1.uboot烧写
a. 把2410的JP1跳线帽取下,设置串口,打开2410开关
b. (如果有dnw.ini文件请清空)打开DNW程序,串口连接:serial port-->connect
c. 按下2410复位键,DNW出现菜单
d. 选择1,使用串口下载Uboot文件,DNW:serial port -->transmit ,选择uboot文件。
下载Uboot如果出现乱码则前面步骤有错。下载完成后询问是否运行,选择N。
e. 选择菜单4,刷除NAND, 选择1,从0地址开始。完成有提示成功
f. 选择菜单2,把下载的Uboot文件写入NAND, 选择1,从0地址开始。完成有提示成功
2. 网络启动--参数设置
注: 如下参数是在串口终端设置的(开发板)我现在知道可以用的软件有DNW, putty, secureCRT要设置串口参数
a. 把跳线帽接上重启2410,在倒计时完成时按下键盘任意键进入Uboot命令状态。
b. 设置tftp服务端的ip地址, 如:setenv serverip 192.168.7.102
c. 为开发板设置ip地址, 如:setenv ipaddr 192.168.7.162
d. 设置网关, 如:setenv gatewayip 192.168.7.1
e. 设置MAC地址 ,如:setenv ethaddr 08:00:3e:26:0a:02
f. 设置倒计时后的第一条命令 ,如:setenv bootcmd tftp 30800000 uImage /; bootm
g. 设置uboot传给内核的参数,如:setenv bootargs console=ttySAC0,115200 init=/linuxrc root=/dev/nfs nfsroot=192.168.7.x:/opt/filesystem ip=192.168.7.y:192.168.7.x:192.168.7.1:255.255.255.0:farsight_N:eth0:off
h.保存参数:saveenv
3.重启2410,不按任何键自动进入登陆界面
进入系统后可以看到NFS的共享目录