免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2589 | 回复: 6
打印 上一主题 下一主题

[BootLoader] 研究过根文件系统的大侠进来看看 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-08-24 13:12 |只看该作者 |倒序浏览
小菜一名,第一次发帖。最近在做一个根文件系统,烧到nor flash中,只做启动用,但是跟着网上一些资料的步骤做一直没成功,感觉是etc中的几个脚本inittab、fstab、profile、rcS的修改不是很理解。现在手头有一个rootfs.ext2.gz.uboot,敢问大侠们有没有什么指令可以将rootfs.ext2.gz.uboot转换成rootfs.ext2.gz,去掉0x40字节的头信息,然后在此基础上来修改制作根文件系统。还有有什么好的ramdisk根文件系统制作方面的文章,大侠们推荐几个。

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:58:11
2 [报告]
发表于 2013-09-04 20:01 |只看该作者
inittab、fstab、profile、rcS

init进程会去读取inittab脚本
在inittab脚本中,通常启动的第一个程序就是rcS脚本(一般是放在sysinit这个等级的)
在rcS脚本中,调用mount -a,就会将fstab中的各种文件系统做mount

inittab脚本中启动的第二等级的(respawn)一般就是login程序,输入用户名和密码之后,login程序回去读取/etc/passwd进行匹配,如果匹配成功,就启用passwd中相应行中设置的shell解释器,一般是sh或bash,在sh或bash启动之前,profile会先被login调用
或者是不用login,直接执行/bin/sh,如ok2440_serial0::respawn:-/bin/sh,这里的短线“-”,就表示在执行sh之前要先执行profile


建议用ramfs,不要用ramdisk,不过现在的人在这个名称上并没有区分的好严格,都是乱叫的,比如android编译完之后有个ramdisk,其实是外挂的initramfs
http://linux.chinaunix.net/techdoc/net/2008/12/13/1052467.shtml

论坛徽章:
0
3 [报告]
发表于 2013-10-17 14:53 |只看该作者
能说说根文件系统是怎么样被挂载进内核的么?
我用的是romfs做根文件系统,一头雾水。成功挂载根文件系统,需要些什么东西。
我看了内核挂载根文件系统的代码,什么mount_root()等,也是一头雾水,为什么会有"/dev/root"这样直接写出来的参数呢

论坛徽章:
0
4 [报告]
发表于 2013-11-26 23:48 |只看该作者
谢谢赐教,我后来在官网下了文件系统裁剪了一下,现在解决了 回复 2# arm-linux-gcc


   

论坛徽章:
0
5 [报告]
发表于 2013-11-26 23:51 |只看该作者
我的linux内核和根文件系统是分开的,当linux内核启动到挂载根文件系统这一步是会自动引导的,只要设置好uboot的环境变量就行了,希望对你有帮助回复 3# jplzl10000


   

论坛徽章:
0
6 [报告]
发表于 2013-11-28 12:00 |只看该作者

论坛徽章:
0
7 [报告]
发表于 2014-01-08 14:25 |只看该作者
:wink::wink::wink::wink:
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP