免费注册 查看新帖 |

Chinaunix

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

img文件被挂载的以后,对它的读写操作是在内存,还是在在硬盘上呢? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-05-13 10:29 |只看该作者 |倒序浏览
我们知道initrd.img这样的文件,在操作系统启动过程中,是被加载到内存执行的。

假如现在我做这样的操作:
mount -o loop initrd.img /mnt/initrd
然后mnt目录下对initrd里面的文件进行操作,主要是写操作,如修改,创建文件或者文件夹等等。这个时候对文件的读写,是在内存进行还是在存储initr.img文件的磁盘上呢?

进而引出我真正的问题,通常情况下(将系统安装到硬盘以后), 比如Fedora在vmlinuz , initrd.gz(临时的文件系统)启动后,会将真正的文件系统(硬盘某个分区的 / 目录)挂载起来, 如果我要做到像puppy linux一样,将真正的文件系统(上面提到的硬盘某个分区 / 目录)加载到内存,怎么实现。
我看到puppy  linux好像是这么干的,但不知道具体怎么实现的、


注:感谢大家纠正我的提问中含混不清的地方。

[ 本帖最后由 zhenjiazhenjial 于 2009-5-14 16:20 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2009-05-13 16:10 |只看该作者
mount -o loop initrd.img /mnt
然后mnt目录下对initrd.img进行操作,这个时候对文件的读写,实在内存进行还是在硬盘上呢?

问题描述不清
1、mnt 目录下对 ../initrd.img 进行操作码?怎么操作?
2、这个时候对文件读写,对什么文件的读写?../initrd.img 还是 mnt 出来的文件?
3、如果对 initrd.img 映射出的文件进行读写,要看文件系统是不是立刻同步,未同步前是内存,sync 一下就是与 initrd.img 同步了

进而引出我真正的问题,怎么样在 vmlinuz ,initrd.gz启动后,将真正的文件系统加载到内存里面,而不是挂载硬盘上的文件系统。

文件系统加载到内存里面是什么意思?
是文件系统驱动程序还是什么?
不知道你在问什么,感觉你的思路很混乱……

论坛徽章:
5
3 [报告]
发表于 2009-05-13 16:47 |只看该作者
1、mnt 目录下对 ../initrd.img 进行操作码?怎么操作?
LZ应该是指读写操作,尤其指写操作。对吧?

2、这个时候对文件读写,对什么文件的读写?../initrd.img 还是 mnt 出来的文件?
应该是mount之后的mnt目录。对吧?

如果上述我的猜测成立,那操作是针对文件,不是对内存。在你写操作并umount之后,你将得到新的img

论坛徽章:
2
申猴
日期:2013-12-26 22:11:31天秤座
日期:2014-12-23 10:23:19
4 [报告]
发表于 2009-05-13 19:10 |只看该作者
应该是对initrd.img这个文件进行读写
你的这句话看不懂
将真正的文件系统加载到内存里面,而不是挂载硬盘上的文件系统。

论坛徽章:
0
5 [报告]
发表于 2009-05-13 19:24 |只看该作者
原帖由 zhenjiazhenjial 于 2009-5-13 10:29 发表
我们知道initrd.img这样的文件,在操作系统启动过程中,是被加载到内存,然后执行的。

加入现在我做这样的操作:
mount -o loop initrd.img /mnt
然后mnt目录下对initrd.img进行操作,这个时候对文件的读写 ...


initrd,初始化RamDisk是也。它只在系统启动的时候使用。刚启动时,系统以此生成一个临时的RamDisk,并mount到/上。这样,一个最小化但基本功能完整的Linux已经加载到内存中。此时系统进行包括硬盘识别在内的初始化工作。初始化工作结束后,真正的硬盘分区才mount到/上,而刚才的RamDisk就废弃了,消失在内存中。

initrd.img就是一个相当于硬盘分区的文件系统,它的容量比它的个头略小。mount上这个东西,和mount上一个分区没有本质区别。

论坛徽章:
0
6 [报告]
发表于 2009-05-14 16:25 |只看该作者
原帖由 yidou 于 2009-5-13 16:47 发表
1、mnt 目录下对 ../initrd.img 进行操作码?怎么操作?
LZ应该是指读写操作,尤其指写操作。对吧?

2、这个时候对文件读写,对什么文件的读写?../initrd.img 还是 mnt 出来的文件?
应该是mount之后的mn ...


非常感谢,你的回答非常接近我所想问的。


另外,你的意思进写操作以后,如果不进行 umount, 那么img里面的内容就不会被保存了,是吧?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP