mini2440 最小根文件系统制作和nfs启动
mini2440 内核启动后,可以用busybox制作一个简单的根文件系统并用nfs来启动该文件系统
启动mini2440, 按任意键进入uboot,按q键进入uboot命令行:
执行以下命令:
- set bootargs "noinitrd root=/dev/nfs rw nfsroot=192.168.211.2:/home/host/nfs/mini2440/rootfs ip=192.168.211.211 console=ttySAC0 init=/linuxrc"
saveenv
从http://busybox.net/downloads/busybox-1.22.1.tar.bz2 下载busybox,然后解压缩并进入解压文件夹:
- tar xf busybox-1.22..tar.bz2
- cd busybox-1.22./
然后执行下面命令进行配置:
- make menuconfig
选择下面的选项:
- Busybox Settings--->
- Build Options---->
- [*]Build BusyBox as a static binary (no shared fibs)
- (arm-linux-) Cross Compiler prefix
- Busybox Settings --->
Installation Options --->- Applets links (as soft-links) -->
- (/home/host/nfs/mini2440/rootfs)BusyBox installation prefix
其他选项选择默认即可。
然后进行编译和安装(安装到/home/host/nfs/mini2440/rootfs文件夹下):
- make
- make install
然后进入rootfs文件夹,执行下面命令:
- mkdir dev etc home lib mnt proc sys tmp var
- mkdir etc/init.d
- touch etc/inittab
- chmod +x etc/inittab
- touch etc/init.d/rcS
- chmod +x etc/init.d/rcS
- touch etc/fstab
- cd dev
- mknod ttySAC0 c
- ln -s ttySAC0 console
- mknod null c
- mknod mtdblock0 b
- mknod mtdblock1 b
- mknod mtdblock2 b 2
mknod mtdblock3 b 31 3- cd ../lib/
在etc/inittab文件中添加如下内容:
- # System initialization.
::sysinit:/etc/init.d/rcS
::sysinit:/bin/sh- ::ctrlaltdel:/sbin/reboot
- ::shutdown:/bin/umount -a -r
在etc/init.d/rcS文件中添加如下内容:
- #!/bin/sh
- mount -a
在etc/fstab文件中添加如下内容:
- none /proc proc defaults
- tmpfs /tmp tmpfs defaults
这样根文件系统就基本完成了,然后重启nfs服务器:
- /etc/init.d/nfs-kernel-server restart
再重启mini2440就可以从nfs启动根文件系统了。
也可以制作yaffs镜像并烧写到nand flash:
从mini2440光盘中找到工具mkyaffs2image-128M(光盘中以压缩包方式存放于linux/mkyaffs2image.tgz),然后执行下面命令:
- mkyaffs2image-128M /home/host/nfs/mini2440/rootfs/ rootfs.img
将rootfs.img拷贝到tftp文件夹,然后重启nfs服务器:
- /etc/init.d/tftp-hpa restart
接着重启mini2440,进入uboot命令行,执行下面命令 :
- tftp 0x30008000 rootfs.img
- nand erase 0x560000 $filesize
nand write.yaffs 0x30008000 0x560000 $filesize
但是最后一步烧写yaffs失败,提示“ 2621440 bytes written: ERROR"。
我之后修改成下面的命令就可以了(filesize 大小为2adc80):
- nand erase 0x560000 2d0000
- nand write.yaffs 0x30008000 0x560000 $filesize
但是之后我又试了一次,但再次烧写失败,不知道原因何在。
mini2440 最小根文件系统制作和nfs启动的更多相关文章
- 根文件系统制作、NFS配置与安装及利用NFS挂载根文件系统
最近打算从头开始制作根文件系统,下面是开发过程. 一.根文件系统的制作 0.FHS(Filesystem Hierarchy Standard)标准介绍 该标准规定了根目录下各个子目录的名称及其存放的 ...
- linux根文件系统制作,busybox启动流程分析
分析 busybox-1.1.6 启动流程,并 制作一个小的根文件系统 源码百度云链接:https://pan.baidu.com/s/1tJhwctqj4VB4IpuKCA9m1g 提取码 :l10 ...
- NFS文件系统制作
内核: linux-3.0 u-boot: 2010.09 开发板: fl2440(s3c2440主芯片) 交叉编译器: 2011.11 ...
- Exynos4412从SD卡启动的简单网络文件系统制作
Exynos4412从SD卡启动的简单网络文件系统制作 1. 简介 嵌入式系统能够在开发板上正常运行,需要先进行系统配置,一个完整的嵌入式系统应该包含的几个部分::uboot,kernel,rootf ...
- 使用NFS启动Tiny4412开发板根文件系统
1.Ubuntu14.04上搭建NFS服务 1.1.安装NFS服务 $ sudo apt-get install nfs-kernel-server //安装NFS服务 1.2 创建Tiny ...
- EASYARM-IMX283 nfs启动内核和根文件系统
EASYARM-IMX283(以下简称IMX283)默认采用从nand flash启动,但是在开发过程中因为要频繁的替换内核,我们更倾向于从nfs启动. 先看看IMX283中uboot中默认采用的启动 ...
- NFS启动文件系统
NFS启动文件系统 一.软硬件平台 1.开发板:创龙AM3359核心板,网口采用RMII形式. 2.UBOOT版本:U-Boot-2016.05,采用FDT和DM. 3.交换芯片MARVELL的88E ...
- am335xSD卡启动--文件系统制作
1.网上下载busybox工具https://busybox.net/downloads/ 2.根据此文章提示制作自己的跟文件系统 链接: https://pan.baidu.com/s/1bp6GK ...
- rootfs -根文件系统制作
目录 目录 目录 概述 概念 根文件系统是什么 根文件系统中有什么 根文件系统的形式 Busybox 简介 什么是 linuxrc VFS 简介 Busybox 工具 Busybox 目录结构 Men ...
随机推荐
- Swift 函数的定义与调用(Defining and Calling Functions)
当你定义一个函数时,你能够定义一个或多个有名字和类型的值.作为函数的输入(称为參数.parameters).也能够定义某种类型的值作为函数运行结束的输出(称为返回类型). 每一个函数有个函数名,用来描 ...
- node在Fedora 22系统下开发环境搭建
事实上,环境搭建在linux系统还是比較简单的,下载已经编译好的包,配置一下环境变量. 或者下载源代码,自己编译. 这里记录一下,主要是node版本号变化节奏很块的情况下.怎样配置一次环境变量就不要再 ...
- 高仿阴阳师官网轮播图效果的jQuery插件
代码地址如下:http://www.demodashi.com/demo/12302.html 插件介绍 这是一个根据阴阳师官网的轮播效果所扒下来的轮播插件,主要应用于定制个性化场景,目前源码完全公开 ...
- iOS陆哥开发笔记(七) (AVFoundation简单介绍)
在AVFoundation框架中AVAudioRecorder类专门处理录音操作,支持多种音频格式. 以下是经常使用的属性和方法: 属性 说明 @property(readonly, getter=i ...
- DNA分子结构3D模型
生物信息资源更新越来越快,使用可视化的方法来分析DNA序列已成为生物信息学的一个研究热点,用图形表示DNA序列的方法也越来越成熟.2011年,著名杂志<Science>发表一篇引起轰动的文 ...
- Allegro Desgin Compare的用法与网表比较
转:Allegro Desgin Compare的用法与网表比较 Allegro中自带有Design Compare工具,利用它可以比较明了的看到线路的差异.当然也可以通过SKILL进行比较,不过我们 ...
- Splash动画启动app时空白屏
相信大多数人一开始都会对启动app的时候出现先白瓶或者黑屏然后才进入第一个界面,例如:SplashActivity.那这是什么原因造成的呢? <style name="Splash_T ...
- msgsnd的一个小问题
今天写了一个System V消息队列的小样例.定义了一个例如以下的结构体: #define MSG_SIZE 8192 struct request { long mtype; int client_ ...
- Spring配置错误记录
很多其它Spring问题因为发生时未记录而遗忘了~~~~~~~ 如今动动手 解决方式因为不是源头分析因而仅供參考.! ! 严重: Exception sending context destroyed ...
- 【WPF学习笔记】之如何点登录按钮时判断用户名密码进行登录:动画系列之(二)
...... 承接动画系列之(一)的代码: 再添加登录按钮代码进行登录,验证用户名和密码在数据库是否正确. 直接上代码: using System; using System.Collections. ...