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 rootfs/dev
#mknod -m 666 console c 5 1
#mknod -m 666 null c 1 3
3. 加入配置文件
#tar etc.tar.gz
#mv etc/* …/root/etc/ -rf
4. 添加内核模块
#cd …/linux
#make modules ARCH=arm CROSS_COMPILE=arm-linux-
#make modules_install ARCH=arm INSTALL_MOD_PATH=…/rootfs
5. 编译busybox
1.配置busybox
#make menuconfig
Busybox Settings àbuild Options->
*选中“Build busybox as a static binary”, 静态链接
*Cross Compiler prefix (arm-linux-)
Installation Options->
*选中“Don‘t use /usr”, 选中该项可以避免busybox 被安装到宿主系统的/usr目录下,破坏宿主系统
*Busybox Installation Prefix (/xxx/rootfs)
该选项表明编译后的busybox的安装位置
2. 编译、安装busybox
#make
#make install
二。挂载根文件系统到内核
1. 挂载方式简介
(1). 文件系统类型
根据存储设备的硬件特性、系统需求,不同的文件系统类型有不同的应用场合。
在嵌入式Linux应用中,主要的存储设备为RAM 和FLASH,
常用的基于存储设备的文件系统类型包括:jffs2, yaffs2, ubifs, ramdisk等
(2). 系统类型
#基于nandflash的文件系统 yaffs2 ,UbiFS(可读可写)
#基于norflash的文件系统 Jffs2
#基于内存的文件系统 rmdisk , Initramfs
#基于网络的文件系统 NFS
2. initranfs挂载
1. #cd …/rootfs/#ln –s ./bin/busybox init
2. 配置Linux内核,支持initramfs
3. 编译
4. 设置环境变量
setenv bootargsnoinitrd console=ttySAC0,115200
3. NFS挂载
setenv bootargs noinitrd
console=ttySAC0,115200 init=/init
root=/dev/nfs rw
nfsroot=192.168.1.3:/home/s5-ARM/Part4/rootfs,proto=tcp,nfsvers=
3ip=192.168.1.6:192.168.1.3:192.168.1.1:255.255.255.0::eth0:off
Linux 根文件系统的制作的更多相关文章
- Linux根文件系统的制作
转载:http://www.cnblogs.com/hnrainll/archive/2011/06/09/2076655.html 1. 根文件系统 文件系统是包括在一个磁盘(包括光盘.软盘.闪盘及 ...
- linux 内核移植和根文件系统的制作【转载】
原文地址:http://www.cnblogs.com/hnrainll/archive/2011/06/09/2076214.html 1.1 Linux内核基础知识 在动手进行Linux内核移植之 ...
- linux 内核移植和根文件系统的制作
1.1 Linux内核基础知识 在动手进行Linux内核移植之前,非常有必要对Linux内核进行一定的了解,下面从Linux内核的版本和分类说起. 1.1.1 Linux版本 Linux内核的版本号 ...
- linux根文件系统 /etc/resolv.conf 文件详解
Linux根文件系统/etc/resolv.conf文件,它是DNS客户机配置文件,用于设置DNS服务器的IP地址及DNS域名,还包含了主机的域名搜索顺序.该文件是由域名解析器(resolver,以恶 ...
- linux根文件系统制作
在嵌入式中移植的内核下载到开发板上,是没有办法真正的启动Linux操作系统的,会出现无法加载文件系统的错误. 那么根文件系统在系统启动中到底是什么时候挂载的呢?先将/dev/ram0挂载,而后执行/l ...
- 使用BusyBox制作linux根文件系统(CramFS+mdev)
转:http://www.360doc.com/content/10/0428/11/496343_25245348.shtml 操作系统:Ubuntu9.04 内核版本:linux-2.6.24.7 ...
- 基于mini2440嵌入式Linux根文件系统制作(Initramfs和nfs两种跟文件系统)
嵌入式系统由三部分构成: 1.bootoader---bootparameters---2.kernel 3.Root-filesysytem 一个内核可以挂载多个文件系统,但是有一个根文件系统所以叫 ...
- 制作linux根文件系统
转载地址:http://wenku.baidu.com/view/2cb1b4707fd5360cba1adb14.html 2011十一月 24 转 嵌入式根文件系统制作 (3985) (0) 转自 ...
- linux根文件系统制作,busybox启动流程分析
分析 busybox-1.1.6 启动流程,并 制作一个小的根文件系统 源码百度云链接:https://pan.baidu.com/s/1tJhwctqj4VB4IpuKCA9m1g 提取码 :l10 ...
随机推荐
- 最新的支持DELPHI XE6的开发框架
支持负载均衡集群的中间件 主界面 插件管理 角色与权限 用户与权限
- 详解Java解析XML的四种方法
XML现在已经成为一种通用的数据交换格式,它的平台无关性,语言无关性,系统无关性,给数据集成与交互带来了极大的方便.对于XML本身的语法知识与技术细节,需要阅读相关的技术文献,这里面包括的内容有DOM ...
- POJ 2828 Buy Tickets (线段树 or 树状数组+二分)
题目链接:http://poj.org/problem?id=2828 题意就是给你n个人,然后每个人按顺序插队,问你最终的顺序是怎么样的. 反过来做就很容易了,从最后一个人开始推,最后一个人位置很容 ...
- POJ1062昂贵的聘礼(dijkstra)
昂贵的聘礼 题目大意是说有N个物品,每个物品都有自己的价格,但同时某些物品也可以由其他的(可能不止一个)替代品,这些替代品的价格比较“优惠”,问怎么样选取可以让你的花费最少来购买到物品1 由于有N个物 ...
- C#学习笔记(八):扩展方法
还记得第一次使用DOTween时,发现缓动方法竟然是可以直接用Transform对象中调用到,当时就被震撼到了(那是还是C#小白一只).好了不多说了,今天来学习一下C#的这个特性——扩展方法. 扩展方 ...
- JS 命名空间 实现方式 收集
一. 对象注册式 // 声明一个全局对象Namespace,用来注册命名空间Namespace = new Object(); // 全局对象仅仅存在register函数,参数为名称空间全路径,如&q ...
- oracle备份恢复之rman恢复到异机
注意事项: 1 此处实验环境为同平台,同字节序,同版本,源机器和目标机器相同的目录结构. 2 目标机器只需要安装oracle数据库软件即可. 3 第一次利用备份恢复测试环境,之后从源机器拷贝备份到目标 ...
- sgu - 274 - Spam-filter
题意:判断一个字符串是不是有效的邮件地址. 题目链接:http://acm.sgu.ru/problem.php?contest=0&problem=274 ——>>照着题目做. ...
- Chrome插件开发 尝试2
在文章1中 尝试了开发chrome一个蛋疼的插件,而且必须要写 一坨令人费解的代码才能只能,今天来次清爽的开发:如图: 这是 "清爽模式" →_→ 我把popup.html与pop ...
- Codeforces Round #332 (Div. 2) D. Spongebob and Squares 数学题枚举
D. Spongebob and Squares Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/ ...