Linux中的/目录在哪

小弟由于最近做毕业设计,初学Linux内核,看到文件系统一节,其中目录和文件都被当作文件存放在数据块中,而查找的时候是用i_node号来进行查找,在打开一个文件时,可以在... 小弟由于最近做毕业设计,初学Linux内核,看到文件系统一节,其中目录和文件都被当作文件存放在数据块中,而查找的时候是用i_node号来进行查找,在打开一个文件时,可以在存放该文件的目录中找到该文件相应的i_node号,但是Linux中的根目录的i_node号存放在什么地方,不然岂不是没有出口了,麻烦各位大虾帮忙解答下,问题说清楚就行,不要粘过来的,谢谢!
再请问一下磨振玉网友,那个inode为1的inode用来存什么,我记得inode好像是从1开始编号的,回答完后立马给分,谢谢!
展开
 我来答
磨振玉
2009-05-09 · TA获得超过500个赞
知道答主
回答量:238
采纳率:50%
帮助的人:165万
展开全部
1 通常一个 filesystem 的最顶层 inode 号码会由 2 号开始
2 每个文件系统里面有一张inode表 记录当前文件系统中的所有目录和文件,包 括 2 号的 / 也在里面

系统查找文件时,首先去找
/ 挂载点所在分区的那个文件系统中的inode 表中的2号结点.
比如:你分区为:
分区 挂载点
/dev/hda1 /boot ---这个挂boot目录
/dev/hda2 / ---这个挂/ 目录
/dev/hda3 /u ---这个挂/u目录

以上每一个分区都是一个独立的文件系统.它就会跑去 /dev/hda2这个分区
发现这个文件系统里面有以下内容:
inode table (inode表)
Superblock (超级区块)
Filesystem Description (文件系统描述说明)
block bitmap (区块对照表,就是描述哪个块空闲,哪个正在被用)
inode bitmap (inode 对照表,描述哪个inode空,哪个被用)
data block (数据块资料,存真正的文件数据)

又发现inode table 内容如下:

1 文件存取权限 创建时间 修改时间 ....对应的block
2 文件存取权限 创建时间 修改时间 ....对应的block
3 文件存取权限 创建时间 修改时间 ....对应的block
4 文件存取权限 创建时间 修改时间 ....对应的block

它就会很聪明地读 inode号为2 的 inode 这个就是 /
然后读它的 block 里面的资料,发现block 是一张表,资料如下:
inode号 文件名
4 etc
5 service
... .....

假如要读 etc 它就会读etc 对应的 inode 号 4
再拿4去上面那张表找4的数据块block...如此找下去.
当找到一个真正的文件时,发现是要的东西了.

这样说明白没有.
百度网友c76fbff1c
2009-05-09 · TA获得超过403个赞
知道小有建树答主
回答量:1341
采纳率:0%
帮助的人:0
展开全部
linux文件系统的组成:
超级块,块位图,inode位图。inode区,数据块区
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式