本文转载于
(CSDN)
一.系统配置
主机:ubuntu8.04LTS桌面版 开发板:友善之臂QQ2440V3
主机IP:192.168.1.10 子网掩码:255.255.255.0 广播地址:172.16.53.255
开发板IP:192.168.1.10 广播地址:172.16.53.255 子网掩码 255.255.255.0
二.串口配置minicom
2.1安装
UBUNTU默认未安装minicom
sudo apt-get install minicom
2.2配置
进入到minicom
Ctrl+A:进入配置界面
cOnfigure Minicom..O:配置串口
Serial port setup :
配置方法:
A - Serial Device : /dev/ttyS0
B - Lockfile Location : /var/lock
C - Callin Program :
D - Callout Program :
E - Bps/Par/Bits : 115200 8N1
F - Hardware Flow Control : No
G - Software Flow Control : No
(回车进入上一级菜单)保存设置:
Save setup as dfl
重启minicom
三.建立NFS
3.1配置主机和开发板IP
1.主机 (双网卡,下面是与开发板连接的网卡设置)
$sudo ifconfig eth1 192.168.1.10 netmask 255.255.255.0
设置主机IP地址:192.168.1.10,子网掩码:255.255.255.0
重启网卡eth1,使配置生效
$ sudo ifconfig eth1 down
$ sudo ifconfig eth1 up
2.开发板
开发板IP和主机IP必须在同一个网段才能建立起网络连接
进入到/etc/init.d/目录下会看到一个rcS文件,这个文件包含arm-linux系统启动时的初始化信息。
[root@FriendlyARM init.d]# cd /etc/init.d/
修改开发板IP地址的
[root@FriendlyARM init.d]# ls #显示文件夹内容。
rcS
[root@FriendlyARM init.d]#cp rcS rcS.bak #备份rcS文件
[root@FriendlyARM init.d]# vi rcS
修改以下字段,表示设置开机开发板IP是192.168.1.100与主机IP:192.168.1.10在一个网段内
/sbin/ifconfig eth0 192.168.1.100 up
改完后就重启一下开发板
[root@FriendlyARM /]# reboot
3.2配置NFS服务
1.准备工作
sudo chmod 777 /home/armnfs
mkdir ~/arm
在/home下建立armnfs目录,作为NFS的目录,为了开发的方便,把权限设为drwxrwxrwx。
把root_nfs.tgz (arm-linux的内核)解压到/home/armnfs目录下,开发板将从这里启动。
2.安装NFS
Ubuntu上默认是没有安装NFS服务器的,首先要安装NFS服务程序:
$ sudo apt-get install nfs-kernel-server
安装nfs-kernel-server时,apt会自动安装nfs-common和portmap
这样,宿主机就相当于NFS Server
3.配置NFS
(1)配置portmap (此断抄xhylyx兄弟的,我电脑里默认被注释掉了,xhylyx兄弟文章中说为防止其他非法用户登录nfs,还对 /etc/hosts.deny
和 /etc/hosts.allow 进行了设置,其实没必要,可在后面 /etc/exports 里设置。xhylyx的设置好像也有问题,/etc/host.deny优先级高些,全部deny了,allow也没有用了)
方法1: 编辑/etc/default/portmap, 将 -i 127.0.0.1 去掉.
方法2: $ sudo dpkg-reconfigure portmap , 对Should portmap be bound to the loopback address? 选N.
(2)配置/etc/exports
NFS挂载目录及权限由/etc/exports文件定义
/home/armnfs 192.168.1.*(rw,sync,no_root_squash)
让IP地址为192.168.1.*的nfs客户端都能访问/home/armnfs目录
(3)查看NFS server的export list.
$showmount -e
miao@miao-desktop:/usr/local/arm$ showmount -e
Export list for miao-desktop:
/home/armnfs 192.168.1.*
(4)更新 /etc/exports
sudo exportfs -r
(5)重启nfs服务
$ sudo /etc/init.d/nfs-kernel-server restart
(6)测试NFS
挂载本地磁盘
主机IP是192.168.1.10,把/home/armnfs目录挂载到/mnt目录下
$sudo mount -t nfs 192.168.1.10:/home/armnfs /mnt
成功的挂载上的话你会在/mnt目录下看到root_nfs这个文件夹下的内容
3.3.通过NFS启动开发板
当NFS 服务设置好并启动后,我们就可以把NFS 作为根文件系统来启动开发板了
(1)设置目标板启动模式跳线J1 为Nand Flash 启动。
(2)进入Supervivi菜单,按q进入shell命令模式。手动打开 vivi自动换行功能,先按ctrl+a键,再按W键,后面的命令很长不换行输不下。
(3)输入命令(红 {MOD}部分不用改)
param set linux_cmd_line "console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.10:/home/armnfs ip=192.168.1.100:192.168.1.10:192.168.1.10:255.255.255.0:sbc2440.arm9.net:eth0:off"
说明:
nfsroot=192.168.1.10, 是主机IP ,/home/armnfs是nfs共享文件夹目录
ip=192.168.1.100:192.168.1.10:192.168.1.10:255.255.255.0
第一个IP是开发板的IP(开发板的IP不要与局域网内其它IP冲突),第二个是主机的IP,第三个也是主机的IP,第四个是开发板的子网掩码
(4)启动linux
Supervivi>boot
linux将从宿主机/home/armnfs目录下的内核,开始启动。
参考资料:
xhylyx
http://forum.ubuntu.org.cn/viewtopic.php?t=109904
water2007
http://forum.ubuntu.org.cn/viewtopic.php?t=138051