一、移植BusyBox
1、下载BusyBox的源代码
下载地址:http://www.busybox.net/downloads/,此处下载busybox-1.20.2.tar.bz2。
2、解压并进入目录
#tar -xvf busybox-1.20.2.tar.bz2
#cd busybox-1.20.2
3、修改Makefile中的体系结构ARCH和交叉编译器前缀CROSS_COMPILE
#VIM Makefile
CROSS_COMPILE = arm-linux-
ARCH = arm
4、配置BusyBox
#make menuconfig

其他选项都是一些Linux基本命令选项,自己需要哪些命令就编译进去,一般用默认的就可以了,配值好后退出并保存。

5、编译BusyBox
#make -j 2
6、安装
#make install
在BusyBox-1.20.2目录下可以找到_install子目录,这就是刚才的安装目录。
7、分析
#ls -l /bin
#ls -l _install/bin

二、加入必要的目录与文件
1、改_install为mini_rootfs
#mv _install mini_rootfs
#cd mini_rootfs
下面的操作都是在mini_rootfs目录里进行的。
2、创建必要的目录和文件
建立一个名为create_rootfs.sh的脚本文件
#vim create_rootfs.sh
内容见下载链接中的create_rootfs.sh文件;
执行该脚本以生成必要的目录与文件:
#source create_rootfs.sh
#rm create_rootfs.sh
3、拷贝交叉编译器的动态链接库到lib目录
#cp /usr/local/arm/arm-2009q3/arm-none/linux/gnueabi/libc/armv4t/lib/*so* lib -rdf
4、对lib目录下的动态链接库进行裁剪
#arm-none-linux-gnueabi-strip lib/*so*
5、修改脚本文件
内容详见下载链接中的S5PV210的根文件系统制作.PDF文件

三、构建根文件系统
1、获得mkyaffs2image工具的源码包
下载地址:http://fatplus.googlecode.com/files/yaffs2-source.tar
2、编译mkyaffs2image工具
#tar xvf yaffs2-source.tar
#cd yaffs2/utils
#make
#cd mkyaffs2image /usr/local/bin
3、制作根文件系统镜像
回到busybox那个目录:
#mkyaffs2image mini_rootfs rootfs.img

四、根文件系统镜像rootfs.img下载与烧写
下面的操作在u-boot上进行:
SMDKV210#nand erase 0xe00000 0xF200000
SMDKV210#tftp 0x40000000 rootfs.img
SMDKV210#nand write.yaffs 0x40000000 0xe00000 0x6aa340

五、用户管理

六、NFS配置
1、#cp /root/build_rootfs/busybox-1.20.2/mini_rootfs/ / -rdf
2、#vi /etc/exports
内容如下:
/mini_rootfs *(rw,sync,no_root_squash)
启动NFS服务器:
#service nfs restart
3、测试NFS服务器
#mount -t nfs 192.168.0.41:/mini_rootfs /mnt
其中192.168.0.41是你的虚拟机系统的IP地址
#ls /mnt
#umount /mnt
4、配置内核以支持NFS启动

详细文档及源码下载链接:http://download.csdn.net/detail/klcf0220/5759771

S5PV210的根文件系统制作的更多相关文章

  1. linux根文件系统制作

    在嵌入式中移植的内核下载到开发板上,是没有办法真正的启动Linux操作系统的,会出现无法加载文件系统的错误. 那么根文件系统在系统启动中到底是什么时候挂载的呢?先将/dev/ram0挂载,而后执行/l ...

  2. 嵌入式linux内核制作、根文件系统制作

    嵌入式系统构成: 主要由bootloader.kernel.以及根文件系统三部分组成. 内核制作步骤: 制作嵌入式平台使用的linux内核制作方法与pc平台上的linux内核基本一致 1.清除原有配置 ...

  3. Yaffs2根文件系统制作

    Yaffs2根文件系统制作 环境: 交叉编译环境:4.4.6 开发平台:s3c2416 1,编译busybox 获取busybox源码busybox-1.17.2.tar (http://www.bu ...

  4. 内核移植和文件系统制作(4):UBIFS根文件系统制作总结

    UBIFS文件系统简介: 无排序区块图像文件系统(UnsortedBlock Image File System, UBIFS)是用于固态硬盘存储设备上,并与LogFS相互竞争,作为JFFS2的后继文 ...

  5. linux根文件系统制作,busybox启动流程分析

    分析 busybox-1.1.6 启动流程,并 制作一个小的根文件系统 源码百度云链接:https://pan.baidu.com/s/1tJhwctqj4VB4IpuKCA9m1g 提取码 :l10 ...

  6. 根文件系统制作、NFS配置与安装及利用NFS挂载根文件系统

    最近打算从头开始制作根文件系统,下面是开发过程. 一.根文件系统的制作 0.FHS(Filesystem Hierarchy Standard)标准介绍 该标准规定了根目录下各个子目录的名称及其存放的 ...

  7. linux根文件系统制作之busybox编译和系统构建【转】

    转自:http://blog.chinaunix.net/uid-29401328-id-5019660.html 介绍完相关文件后我们开始构建文件系统,涉及到的文件等到具体用到的时候再讲. 一.编译 ...

  8. tiny4412u-boot烧写及根文件系统制作(不进入终端问题)

    http://m.blog.csdn.net/article/details?id=51400196(转) VMware12 环境:ubuntu12.4 开发板:tiny4412 首先烧写bootlo ...

  9. 基于mini2440嵌入式Linux根文件系统制作(Initramfs和nfs两种跟文件系统)

    嵌入式系统由三部分构成: 1.bootoader---bootparameters---2.kernel 3.Root-filesysytem 一个内核可以挂载多个文件系统,但是有一个根文件系统所以叫 ...

随机推荐

  1. 斯坦福大学公开课机器学习:Neural Networks,representation: non-linear hypotheses(为什么需要做非线性分类器)

    如上图所示,如果用逻辑回归来解决这个问题,首先需要构造一个包含很多非线性项的逻辑回归函数g(x).这里g仍是s型函数(即 ).我们能让函数包含很多像这的多项式,当多项式足够多时,那么你也许能够得到可以 ...

  2. maven项目检出后报错(包括编译报错和运行报错)的常见检查处理方式

    maven项目检出后报错(包括编译报错和运行报错)的常见检查处理方式: 1.更改项目的jdk为我们安装的jdk2.更改build配置里的 output folder 目录为 xxx项目名/target ...

  3. 织梦DedeCMS信息发布员发布文章阅读权限不用审核自动开放亲测试通过!

    文章发布员在织梦dedecms后台添加文章时却要超级管理员审核,这无疑是增加了没必要的工作. 登录该账号发布文章你会发现该文章显示的是待审核稿件,且并没有生成静态文件,在前台是看不到这篇文章的,而多数 ...

  4. mysql自定义函数与过程中写法的注意事项

    BEGIN #Routine body goes here... /* update szzx_goods_common set gc_id=i where gc_name=(SELECT gc_na ...

  5. package.json版本号

    (1)^指定版本:比如"^3.1.4",表示安装3.1.4及以上的版本(3.x.x),但是不安装4.0.0 (2)~指定版本:比如 "~1.1.0", 表示安装 ...

  6. es6小记

    let, const, class, extends, super, arrow functions, template string, destructuring, default, rest ar ...

  7. CentOS Linux release 7.3破解密码详解

    CentOS Linux release 7.3破解密码详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 公司最近接了一个项目,拿到客户现有的源代码,但是服务器用户密码并不知情, ...

  8. GO语言的进阶之路-面向过程式编程

    GO语言的进阶之路-面向过程式编程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们在用Golang写一个小程序的时候,未免会在多个地方调用同一块代码,这个时候如何优化你的代码呢 ...

  9. Log4j Threshold属性指定输出等级

    有时候我们需要把一些报错ERROR日志单独存到指定文件 ,这时候,Threshold属性就派上用场了: Threshold属性可以指定日志level Log4j根据日志信息的重要程度,分OFF.FAT ...

  10. HDU - 5340 Three Palindromes(manacher算法)

    http://acm.hdu.edu.cn/showproblem.php?pid=5340 题意 判断是否能将字符串S分成三段非空回文串 分析 manacher预处理出前缀和后缀回文的位置, 枚举第 ...