[i=s] 本帖最后由 xiadao_81 于 2010-1-12 14:53 编辑 [/i]
前几日,我写了一个贴子http://www.linuxdiyf.com/bbs/thread-171802-1-1.html,其中谈到了权限等问题。一个好心的网友给了我短信,给我讲解了不足之处,主要是一个文件是修改还是覆盖的问题,我认为很有道理,非常感谢他,这样对于我们学习是很有帮助的。
消息中他提到i节点,于是我也找了相关资料,比如http://www.linuxdiyf.com/bbs/viewthread.php?tid=56673&highlight=i%BD%DA%B5%E3,看了看,由于是新手,有些不是很懂,望高手来说一下:linux下关于i节点,然后用递归的思路去理解权限的相关问题,谢谢!
因为之前的短信不知为什么没了,只留下了最后的记录,如下:
3.再看看可不可以编辑:
[us1@localhost contrib]$ vi exmple.txt
当我切换到插入状态时,提示:
-- 插入 -- W10: 警告: 正在修改一个只读文件
我没理它,继续写操作,增加了两行文件,而且最后:wq!保存退出,OK。
再看一下文件:
[us1@localhost contrib]$ ll
总计 16
-rw-rw-r-- 1 music music 11 01-08 10:43 exmple.bak
-rw-rw-r-- 1 us1 us1 29 01-08 10:52 exmple.txt
注意到了没有,文件exmple.txt的所有者变了,变成了us1。
因为在Linux下chown是超级用户命令,所以很明显,原来的exmple.txt不是被修改了,而是被覆盖了。Linux下的目录可以看作是特殊的文件,包含自身权限、文件名列表及具体指向等信息。可以看一下有关i节点的资料。然后用递归的思路去理解权限问题。
i节点
UNIX系统中应用一个被称之为i节点(inode)的结构来存储文件系统中的各个级成部分的管理信息。i节点驻留在硬盘上,没有自己的名字,但具有索引数,用以指向它们在i节点数组中的位置。
每个i节点通常包括:
该数据条目的内容在磁盘上的位置
该数据条目的类型(文件、目录、符号连接等)
该数据条目的字节数目
该节点最后一次被修改的时间(ctime)
该文件最后一次被修改的时间(mtime)
该文件最后一次被访问的时间(atime)
该文件对应的文件名数目(连接数)
UID
GID
MODE bit
学习中遇到的错误,有人指点,改正,就是好的。如果等到以后将错就错就不好了!共同学习!不耻下问!同时给和我一样学习linux的人一点儿经验之谈!
vtitle 于 2010-01-12 16:22:11发表:
收经