您的位置:首页 > 运维架构 > Linux

手把手教你移植linux内核---------OK6410(五)

2012-08-29 09:20 579 查看

搭建NFS网络文件系统

         NFS (Network File System)是由Sun开发的一种在不同机器之间通过网络共享文件的技术。在嵌入式Linux系统的开发调试阶段,可以利用该技术在主机上建立基于NFS的根文件系统,挂载到嵌入式设备,可以很方便地修改根文件系统的内容。

        根文件系统是Linux启动时使用的第一个文件系统。没有根文件系统,Linux将无法正常启动。通过以上四讲我们已经把文件内核启动和一些简单的驱动做了实现,因为没有文件系统所以我们没法看到具体类似终端的操作。通过本讲就可以实现终端操作。

        1、创建根文件系统的目录
mkdir rootfs
cd rootfs
mkdir bin dev etc lib proc sbin sys usr mnt tmp var
mkdir usr/bin usr/lib usr/sbin lib/modules

        2、创建设备文件
cd dev/
mknod -m 666 console c 5 1
mknod -m 666 null c 1 3
cd ..

        3、安装/etc         可以将飞凌的etc目录直接拷贝过来
tar etc.tar.gz –C /xxx/rootfs       4、编译内核模块  进入Linux内核目录(linux 3.3.5)
make modules ARCH=arm
CROSS_COMPILE=arm-linux-
      5、安装内核模块
make modules_install ARCH=arm
INSTALL_MOD_PATH=/xxx/rootfs
      6、busybox的配置和安装
      下载最新的瑞士军刀busybox的官网http://www.busybox.net 的版本为busybox-1.20.0

      修改busybox的makefile:

CROSS_COMPILE ?= arm-linux-
ARCH ?= arm

      Make menuconfig配置busybox







       7、编译、安装busybox

make
make install
      到此整个基本的文件系统已经完成,下面将进行nfs的配置

######################################################################################################

        关于如何修改uboot的bootargs的内容请参考飞凌官方的文档里面讲的非常清楚了。

       下面进行内核配置

       [*] Networking support --->



File systems --->

    [*] Network File Systems --->


最后启动如下:

usbcore: registered new interface driver usbhid

usbhid: USB HID core driver

TCP cubic registered

NET: Registered protocol family 15

lib80211: common routines for IEEE802.11 drivers

Registering the dns_resolver key type

VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 5

gpio-keys gpio-keys: failed to request GPIO 149, error -16

gpio-keys: probe of gpio-keys failed with error -16

s3c-rtc s3c64xx-rtc: setting system clock to 2000-04-25 16:17:57 UTC (956679477)

dm9000 dm9000.0: eth0: link down

IP-Config: Complete:

     device=eth0, addr=192.168.0.232, mask=255.255.255.0, gw=255.255.255.255,

     host=192.168.0.232, domain=, nis-domain=(none),

     bootserver=255.255.255.255, rootserver=192.168.0.231, rootpath=

dm9000 dm9000.0: eth0: link up, 100Mbps, full-duplex, lpa 0xC1E1

VFS: Mounted root (nfs filesystem) on device 0:10.

Freeing init memory: 152K

hwclock: can't open '/dev/rtc': No such file or directory

/etc/init.d/rcS: line 45: /bin/hotplug: not found

Try to bring eth0 interface up......NFS root ...Done

Laoyl

[root@Laoyl ~]#

到此内核移植到文件系统的启动已经结束,对于qt的移植和触摸屏的移植将在以后讲到。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息