云计算百科
云计算领域专业知识百科平台

Linux的权限

目录

1、用户分类

1.1 超级用户(root)和普通用户

1.2 普通<->超级

1.3 sudo

2、文件和目录的权限

2.1 chown&&chgrp

2.1.1 chown

2.1.2 chgrp

2.2 chmod

总结一下:

3、文件和目录的默认权限

4、共享文件

4.1 多用户隔离

4.2 /tmp/


1、用户分类

1.1 超级用户(root)和普通用户

超级用户:可以在 Linux 系统下执行任何操作,几乎不受权限限制。

普通用户:在linux下做有限的操作。一般只能在/home/用户名,自己家操作。

超级用户的命令提示符是#,普通用户的命令提示符是$

创建普通用户 → 设置密码 → 彻底删除普通用户。使用root用户创建用户,就不需要sudo。

sudo useradd -m 用户名 # 创建用户并自动建立家目录(/home/用户名)
sudo passwd 用户名 # 设置密码(交互式输入)
sudo userdel -r 用户名 # 彻底删除用户及其家目录、邮件

1.2 普通<->超级

普通->超级:需要root用户的密码,普通用户权限低

su root,root可省略,切换到root用户,路径不变。

su – root,root可省略,以root用户身份重新登录,路径改变。

超级->普通:不需要密码,root用户权限高

su 用户名,切换到该用户,路径不变。

su – 用户名,以该用户身份重新登录,路径改变。

1.3 sudo

sudo:指令的短暂提权,如:安装软件,需要root的权限。需要用户自己的密码。

注意:

只有在/etc/sudoers的这个“白名单”里面,才能使用sudo,进行指令的短暂提权

2、文件和目录的权限

访问身份判定条件权限标识
所有者(Owner) 当前用户是文件的创建者
组用户(Group) 当前用户是文件所属组的成员 g
其他用户(Others) 既不是所有者也不在组中 o

对于文件的权限:

  • r:读取文件内容

  • w:修改文件内容

  • x:可执行(如果是程序/脚本)。文件的可执行权限(机会)+文件可以执行(能力) = 可执行

对于目录的权限:

  • r:列出目录内容,如:ls

  • w:创建/删除/重命名 目录内文件/目录。文件/目录的删除与文件/目录本身无关,与所在目录的w权限有关。

  • x:cd目录

如:对于普通文件(对目录一样)

注意:

访问身份只确定一次,按照所有者,组用户,其他用户的顺序。 

如:Lzc用户有所有者和组用户的访问身份,

但Lzc用户访问时,确定为所有者,就只看所有者对文件的权限了。

2.1 chown&&chgrp

2.1.1 chown

功能:修改文件或目录的所有者 或 所有者和组。

chown [选项] 新所有者 文件/目录

chown [选项] 新所有者:新组 文件/目录

选项作用
-R 递归修改(用于目录,同时修改目录内所有子文件、子目录的所有者和组)
2.1.2 chgrp

功能:修改文件或目录的组。

chgrp [选项] 新组名 文件/目录

chgrp -R 新组名 目录名/

选项作用
-R 递归修改(用于目录,同时修改目录内所有子文件、子目录的组)

注意:

  • 允许操作的用户:

    • root 用户(可直接修改任何文件的所有者和组)。

    • 文件所有者(但仅限以下情况):

      • 修改文件/目录的组时,目标组必须是该用户所属的组(否则需 sudo)。

      • 普通用户不能直接修改文件/目录所有者(需 sudo,即使自己是当前所有者)。

2.2 chmod

功能:设置访问身份(所有者,组,其他用户)对应的文件或目录的访问权限(rwx)。以下以文件为例。

注意:

  • 允许操作的用户:

    • 文件/目录的所有者(Owner)。

    • root 用户(超级用户,无限制)。

chmod [选项] 权限模式 文件/目录

选项作用
-R 递归修改(用于目录,同时修改目录内所有子文件、子目录的访问权限)

权限模式:

(1)符号模式(u/g/o/a +//= r/w/x

符号含义
u 文件所有者(user)
g 所属组(group)
o 其他用户(others)
a 所有用户(all)
+ 添加权限
移除权限
= 直接设置权限

例:可以用,连续操作

a是all,一起操作

=,直接设置

(2)数字模式(3位8进制数)

数字权限
4 读(r)
2 写(w)
1 执行(x)

例:666就是,rw-rw-rw- 

总结一下:

root用户,随意。

普通用户权限能力 = 访问身份对应的 文件系统权限

身份决定你适用哪组权限规则(u/g/o)

文件/目录权限决定具体的操作许可(rwx)

3、文件和目录的默认权限

普通文件:起始权限 666,默认不带可执行x。如:gcc后,会自动加x。

普通目录:起始权限 777,一般都要r(如:ls),w(修改),x(如:cd)。

但是,还存在一个umask,权限掩码。想要临时修改umask,如:umask 002。

默认权限 = 起始权限 & (~umask)umask的后三位八进制参与位运算。

效果:umask中出现(为1)的权限,都不会在默认权限中出现(为0),可以灵活控制文件/目录的默认权限。

4、共享文件

4.1 多用户隔离

普通用户都在/home/下。

任何用户(root用户例外)不能进入其他用户的家目录。

4.2 /tmp/

需求:任何人都能新建文件/目录,但是非所有者不能删除该文件(只能删自己的文件/目录)。

当一个目录被设置粘滞位(用 chmod +t),则该目录下的文件删除权限受如下限制:

  • 超级用户(root)可以删除

  • 该目录的所有者可以删除

  • 文件的所有者可以删除

  • 其他用户即使有写权限(w)也无法删除这些文件。

    而/tmp/就是满足这个需求的目录,其他用户可以创建文件/目录,但是只能删自己的文件/目录。

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » Linux的权限
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!