嵌入式Linux交叉开发环境建立-NFS
来源:互联网 发布:移动网络有服务器吗 编辑:程序博客网 时间:2024/05/06 15:58
本文转载于
ChineseBOY的专栏(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)输入命令(红色部分不用改)
<Supervivi>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
- 嵌入式Linux交叉开发环境建立-NFS
- 嵌入式Linux交叉开发环境建立-NFS
- 嵌入式linux的NFS开发环境的建立
- 为嵌入式开发建立交叉编译环境
- 为嵌入式开发建立交叉编译环境
- 为嵌入式开发建立交叉编译环境
- 关于嵌入式linux交叉环境的建立
- 嵌入式linux开发——开发环境搭建(NFS共享, 交叉编译)
- 【嵌入式Linux学习七步曲之第二篇 交叉开发环境】SuSe11.1 上架设NFS服务器
- 【嵌入式Linux学习七步曲之第二篇 交叉开发环境】SuSe11.1 上架设NFS服务器
- 建立嵌入式 Linux 开发环境
- [嵌入式】如何为嵌入式开发建立交叉编译环境
- 嵌入式linux的NFS开发环境的建立及配置实例
- 嵌入式linux的NFS开发环境的建立及配置实例
- 嵌入式Linux开发环境的建立——Ubuntu上安装nfs服务器
- 嵌入式Linux NFS开发环境搭建
- linux嵌入式开发建立交叉编译环境(2.6内核)的制作
- 【1】基于TQ2440的MP3设计——【3、建立Linux 嵌入式交叉开发环境】
- 主题:【万花筒】外企生存的十大英语单词
- 指定当前的页面中的所有链接点击之后以新窗口的形式弹出,而不在当前页面显示链接的东西
- 偶然看到的一首小诗
- 看内核时候的一些自我建议
- C标准类型的长度bytes
- 嵌入式Linux交叉开发环境建立-NFS
- CString在非MFC中应用
- 管理时间(转载)
- SQL存储过程分页算法研究(支持千万级)
- json 相关
- A question of OpenCMS on Weblogic 8.1
- VC++动态链接库(DLL)编程(一)――理解库
- 为2440搭建NFS开发环境
- 是什么影响了MID的销售票房!