Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
lovedboy
V2EX  ›  Linux

请求一个 linux 权限问题

  •  
  •   lovedboy ·
    lovedboy · Nov 6, 2014 · 2841 views
    This topic created in 4211 days ago, the information mentioned may be changed or developed.
    每个文件都有一个inode,目录也是。目录下的所有文件的inode都存储在目录inode对应的block data里面。对一个目录只有x权限,为何能修改目录下面的文件信息呢?我的理解是:要修改文件,肯定要能找到文件的inode,要找到文件的inode,肯定要读取目录的block区域。但对目录只有x权限,没有r权限。难道目录的x权限有什么特殊的地方?
    5 replies    2014-11-07 10:43:34 +08:00
    ksc010
        1
    ksc010  
       Nov 7, 2014
    对一个目录只有x权限
    你不能ls 这个目录
    但是假如你知道这个目录中的文件且有权限读取文件的权限的话就没问题
    lu18887
        2
    lu18887  
       Nov 7, 2014 via iPhone
    目录要有x权限才能遍历和搜索,具体原因忘了
    lovedboy
        3
    lovedboy  
    OP
       Nov 7, 2014
    @ksc010 @lu18887 我只能这样理解了:抽象成数据库查询。目录的r权限表示可以 select * from 目录。x权限可以表示为:select * from 目录 where 文件名=xxx;
    lu18887
        4
    lu18887  
       Nov 7, 2014
    @lovedboy 建议你翻一下APUE figure 4.26 以及第四章 。
    402124773
        5
    402124773  
       Nov 7, 2014
    对一个目录只有x权限,为何能修改目录下面的文件信息呢?
    你这句话是什么意思?
    在《鸟哥的私房菜》中对于目录的X权限描述是这样的:

    咦!目彔的执行权限有啥用途啊?目彔只是记彔文件名而已,总丌能拿来执行吧?没错!目彔丌
    可以被执行,目彔的x代表的是用户能否迚入该目彔成为工作目彔的用途! 所谓的工作目彔
    (work directory)就是你目前所在的目彔啦!丼例来说,当你登入Linux时, 你所在的家目彔就
    是你当下的工作目彔。而变换目彔的挃令是『cd』(change directory)啰!
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5643 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 70ms · UTC 02:31 · PVG 10:31 · LAX 19:31 · JFK 22:31
    ♥ Do have faith in what you're doing.