假设:1,/dev/sda1-------------->/
2, /dev/sda2--------------->/home
现在要读取/home/acount/test文件
请问是按哪种方式读取的:1, "/"(inode)--->权限审核--->"/"(block)--->"/home"(inode)--->权限审核--->"/home"(block)--->……
2, "/home"(inode)--->权限审核--->"/home"(block)--->……
如果按第一种方式,由于/home与“/”不在同一个文件系统内,是如获取“/”的inode的?
如果按第二种方式,”/home“是“/”的了目录,没有经过“/”的权限审核又怎么能进入到它的子目录呢?
gh131461 于 2013-12-19 21:44:18发表:
学习了
nic疯锋 于 2013-09-24 15:43:43发表:
学习中、
xjboy 于 2013-09-03 13:29:07发表:
一个很细的问题
ytwolf007 于 2010-09-29 16:47:17发表:
8# 里宁科斯
学习了
里宁科斯 于 2010-09-25 15:43:14发表:
没看明白
ytwolf007 于 2010-09-25 11:34:20发表:
谢谢
zifeiyu-fish 于 2010-09-16 12:26:32发表:
努力学习中~
sleeyoyo 于 2010-09-14 10:24:44发表:
原来必须从根目录读取,谢谢各位的释疑
deepwhite 于 2010-09-14 07:46:58发表:
根目录的挂载比较特殊,我没看,但是只要挂载之后,系统就已经知道了根目录的信息了。
deepwhite 于 2010-09-14 07:45:47发表:
按照第一种。
文件的搜索过程中,对于绝对路径,必须从 "/" 开始;在搜索的过程中,对 fullpath 中的每一个以 "/" 分隔开的 component ,在处理的时候都要检查文件系统和父文件夹的文件系统格式是否相同,如果不同的话,需要更新一些内核的数据结构(nameidata, vfsmount) 。
这些是在内核的VFS中实现的,感兴趣的话可以看看内核。
相思爱文 于 2010-09-14 00:07:56发表:
/home,已经是/下的一个目录了。不管他是什么分区,都不用考虑。
其他的目录和文件也都一样。
ls -ld /
可查看/的权限。任何人都可以进和读取。
hcc@debian:~$ ls -ld /
drwxr-xr-x 23 root root 4096 08-05 06:21 /