NFS(网络文件系统)的制作

本文详细介绍如何在S3C2410开发板上配置NFS根文件系统,包括开发环境搭建、内核配置、主机NFS服务配置、网络连接配置及内核启动参数配置等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

一、开发环境:

1.主机:FC4,装在VMWare Workstation下。

2.硬件:S3C2410开发板,网络接口DM900AE。

3.文件系统:使用Busybox-1.10.1制作完成。

4.主机和开发板通过路由器相连。

二、配置过程:

1. 确保网卡驱动已经成功移植并编译到内核中,如果加载内核后路由器对应灯不亮则多半是网卡驱动移植不正确。

2. 编译内核的配置:在编译内核时,一定要选上网卡相关的驱动,选中网络支持,一定选上如下几项:

NetWorking下面:

√ NetWorking Support

NetWorking options

√TCP/IP networking

  √IP:kernel level autoconfiguration

√IP:DHCP support

√IP:BOOTP support

√IP:RARP support

Device Drivers

√NetWorking Device Support

√Ethernet(10 or 100Mbit)及其子项全勾上。

File Systems:

√NFS file system support

√Root file system on NFS

3. 主机nfs服务配置:

新建一个目录用于存放文件系统,如/home/Filter/netfs,以root身份登录主机,编译/etc目录下的共享目录配置文件exports,加入共享路径,如下

/home/Filter/netfs 192.168.1.* (rw,sync,no_root_squash)

保存并退出。注意中间要隔空格,也可以按:桌面->系统设置->服务器设置->NFS图形化设置。

以上配置的意义是:允许IP地址为192.168.1.*网段的计算机以读写的方式

访问共享目录:/home/Filter/netnfs,sync:数据同步写入内存和磁盘。no_root_squash:NFS服务器共享目录用户的属性,如果用户是root,那么这个共享目录就具有root权限。

 

运行如下命令关掉防火墙:service iptables stop

如果没有安装NFS服务则先安装NFS服务,安装好后启动端口映射和NFS服务:

启动端口映射:./portmap restart (/etc/rc.d/init.d/目录)

启动NFS服务:./nfs restart (/etc/rc.d/init.d/目录)

通过本机测试:mount -t nfs 192.168.1.101:/home/Filter/netfs /mnt

如果能挂载上则配置正确,注意要是同一网段的IP,否则不能访问。

至此主机配置完成。

4. 网络连接的配置:通过虚拟机连接网络时要将网络设置为:

Bridged connected directly to the physical network。设置为其它模式似乎不能连接.

5.内核启动参数的配置:

noinitrd root=/dev/nfs rw init=/linuxrc nfsroot=192.168.1.101:/home/Filter/netfs console=ttySAC0,115200 ip=192.168.1.99:192.168.1.101:192.168.1.1:255.255.255.0 rootfstype=nfs mem=64M

说明:nfsroot=192.168.1.101 为主机IP,:/home/Filter/netfs为上面配置的共享目录。 

ip=192.168.1.99:192.168.1.101:192.168.1.1:255.255.255.0

IP的配置按事下顺序:开发板IP:主机IP:路由器网关:子网掩码

以上配置中:

开发板IP: 192.168.1.99 这个IP在启动时会重新配置,随便写一个不影响配置。

主机IP: 192.168.1.101, 通过ifconfig查询即得。inet addr:192.168.1.101

网关IP:192.168.1.1 (路由器IP)

子网掩码: 255.255.255.0

6.将配置好的内核编译加载,将文件系统制作好放到共享目录,启动后如果配置正确,即可加载NFS文件系统。

7. 注意要关掉Windows的防火墙和其它防火墙。

以下为启动部分信息:

.....................

DM9000 ethernet driver V1.26 I/O: c4928300, VID: 90000a46

.....................................

enable_irq(19) unbalanced from c01afb7c

Sending DHCP and RARP requests .. OK

IP-Config: Got DHCP answer from 192.168.1.1, my address is 192.168.1.99

IP-Config: Complete:

device=eth0, addr=192.168.1.99, mask=255.255.255.0, gw=192.168.1.1,

host=192.168.1.99, domain=private, nis-domain=(none),

bootserver=192.168.1.1, rootserver=192.168.1.101, rootpath=

md: Autodetecting RAID arrays.

md: autorun ...

md: ... autorun DONE.

Looking up port of RPC 100003/2 on 192.168.1.101

Looking up port of RPC 100005/1 on 192.168.1.101

VFS: Mounted root (nfs filesystem).

Freeing init memory: 140K

 


init started: BusyBox v1.10.1 (2008-04-23 23:20:41 CST)

starting pid 251, tty '/dev/console': '/etc/init.d/rcS'

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值