美文网首页
Linux目录及文件权限

Linux目录及文件权限

作者: 素年锦时2021 | 来源:发表于2018-08-12 02:22 被阅读0次

    drwxrwxr-x,从左到右第一个字母表示文件系统对象的类别,这里d表示为目录(文件夹)。其它文件系统对象:

    -(常规文件)、d(目录)、l(符号链接)、c(字符特殊设备)、b(模块特殊设备)、p(FIFO)、s(套接字)

    drwxrwxr-x 除出去第一个字母d后的rwxrwxr-x表示的是三种用户关系对文件或文件夹的操作权限。从左到右每三个一组,依次表示所有者权限、组权限、其他用户权限。每组的顺序均为rwx,如果用户有相应的操作权限就用相应的字母表示,如果不具有相应的操作权限就用-表示。比如: rwxrwxr-x表示文件或文件夹的所有者具有rwx(可读,可写,可执行)的操作权限,组用户也具有rwx(可读,可写,可执行)的权限,其他用户具有r-x(可读,可执行,没有可读)的操作权限。

    所以可以通过 sudo chmod 777 -R /var/www/ 修改其他用户操作权限或者sudo chown -R ubuntu:adm /var/www/ 修改文件夹的所有者和组。

    • 多用户对同一个目录享有不同权限的问题

    home下有两个用户分别是a和b用户
    他们共同享有同一个家目录/home/user
    目录下有两个文件夹:
    /home/user/dirA
    /home/user/dirB

    想要实现:
    a用户对dirA目录有增删改权限,对dirB目录有复制权限
    b用户对dirA目录有复制权限,对dirB目录有增删改权限

    为了实现这样的要求,首先需要将两个用户附属到同一个用户组下。
    root用户登录
    先新建用户组:groupadd usergroup
    检查创建是否成功
    cat/etc/group。文件最后一列应该是刚才创建的用户组名称
    创建用户A:useradd -d /home/userA -m -g usergroup userA
    设置权限:chmod -R 770 /home/userA
    设置密码:passwd userA
    userA登录:su - userA
    查看用户路径是否正确:pwd
    创建文件夹:mkdir userA
    设置目录访问权限:chmod -R 750 userA
    查看权限是否正确:ls -l
    
    切换到root目录:exit
    创建用户userB:useradd -d /home/userB -m -g usergroup userB
    设置权限:chmod -R 770 /home/userB
    设置密码:passwd userB
    切换到userB:su - userB
    查看用户路径是否正确:pwd
    创建文件夹:mkdir userB
    设置目录访问权限:chmod -R 750 userB
    查看权限是否正确:ls -l
    
    这样userA和userB都拥有了自己目录的访问权限,同时相同用户组下的用户也只能读取该用户下共享的文件,不能修改和删除。
    
    在用户userA中添加用户userB的连接:
    用户userA登录:ln -s /home/userB/userB userB
    查看连接是否正确:readlink userB
    
    在用户userB中添加用户userA的连接:
    用户userB登录:ln -s /home/userA/userA userA
    查看连接是否正确:readlink userA
    
    这样,用户userA登录后就能看到
    -userA
    -userB
    目录结构了,同时对userA有读写权限,对userB只有读权限
    
    用户userB登陆后也能看到:
    -userA
    -userB
    目录结构,同时对userB有读写权限,对userA只有读权限。
    

    参考:
    【1】https://segmentfault.com/a/1190000002595882
    【2】https://segmentfault.com/a/1190000002723259

    相关文章

      网友评论

          本文标题:Linux目录及文件权限

          本文链接:https://www.haomeiwen.com/subject/dpijbftx.html