LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1010|回复: 10

恐怖的 I 结点问题!!!

[复制链接]
发表于 2003-8-22 12:38:36 | 显示全部楼层 |阅读模式
我的系统是Red Hat 7.2,用的是服务器安装
分区为:
/ , /boot /dev ,/home , /usr ,/var
============================
运行 ls -ai /
部分输出为:
2 .    2 ..  2 boot   2 usr   2 home
2 var   2 dev
也就是说 / , /boot , /usr ,/home ,/var ,/dev 这些目录的 I 结点都是2 ,目录也有hard link 吗? 而且根据hard link 的定义,这些目录共享 I 结点 ,也就是说有同样的文件和数据,可是这些目录的数据怎么可能相同呢?

接着,我想用ln 建立目录的hard link :
$cd
$ln -d perl tmp
shell 提示只有 root 可以这样做 ,su 后
# ln -d perl tmp
shell 提示: 权限不允许
这是怎么回事?居然还有root 不能做的事?

请高手释疑,我没有中文,在网吧等啊。
谢谢!!!!!!!
发表于 2003-8-22 14:37:22 | 显示全部楼层
关于结点的问题,我的理解是,
不同的分区有不同的结点信息表,你说的 / /boot /dev ...在各自的表里都是第一个,所以有同样的结点号,表明它们在不同的表中的同样的位置。
所以不是共享。
证据, 如果你 umount /boot ,再 ls -ai / 就可以看到 /boot 是在不同的结点。

据我所知,目录是不可以建立 hard link 的!
发表于 2003-8-22 15:03:05 | 显示全部楼层
 楼主| 发表于 2003-8-22 15:25:53 | 显示全部楼层
我英文不是很行啊
 楼主| 发表于 2003-8-22 15:27:32 | 显示全部楼层
man ln
可以看到目录可用 hard link 的啊
 楼主| 发表于 2003-8-22 15:32:21 | 显示全部楼层
刚刚少问了一个问题:
$ ls -al /boot 可知道/boot 用了23个结点,可是
$ df -i 却显示/boot 用了31个结点,那么那八个I
结点到哪去了呢?
 楼主| 发表于 2003-8-22 15:37:24 | 显示全部楼层
/proc 的 I结点是1 ,那么/dev 等的为1 的I 结点在哪呢
发表于 2003-8-22 15:54:07 | 显示全部楼层
/proc 在内存中
发表于 2003-8-22 17:51:27 | 显示全部楼层


这篇好,很深入。我可没有想那么多。
 楼主| 发表于 2003-8-22 19:20:16 | 显示全部楼层
My Enlish is evil!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表