Linux 权限设置
在 Linux 系统中,权限是非常重要的一部分,尤其对于运维人员和系统管理员来说,了解和掌握 Linux 权限设置的相关知识是必不可少的。
基础概念
Linux 中,文件和目录都有相应的权限。这些权限分为三类:用户权限、用户组权限和其他用户权限。每个文件或目录都有一个所有者和一个用户组,所有者自然拥有最多的权限,而其他用户则不一定。权限分为读取权限、写入权限和执行权限,对应的符号分别为 r、w、x。
例如:一个文件权限为 -rwxrw-r--,其中符号‘-’代表文件类型为普通文件,后面的九个字符可以被分为三组,每组三个字符,其中第一组为‘rwx’,表示所有者对该文件有读写执行的权限;第二组为‘rw-’,表示用户组对该文件有读写的权限;最后一组为‘r--’,表示其他用户只有读取该文件的权限。
修改权限
在 Linux 中,修改文件或目录的权限通常使用 chmod 命令。该命令通过以下格式来使用:
chmod [选项]... 权限 文件名或目录名
例如:将文件 test.txt 修改为所有用户均有读写权限,可以使用以下命令:
chmod a+rw test.txt
其中,a 表示所有用户(包括所有者、用户组和其他用户),+ 表示增加新的权限,rw 表示增加读写权限。
除了使用符号表示权限外,chmod 命令还可以使用数字来表示权限。数字表示的权限是一串三个数字,每个数字分别代表所有者、用户组和其他用户的权限。数字值由读取权限为 4,写入权限为 2,执行权限为 1,所以,当某个用户的权限为 rwx 时,该用户的数字权限为 7。例如:
chmod 777 test.txt
意思是将文件 test.txt 的所有者、用户组和其他用户的权限均设为读、写、执行权限。
特殊权限
Linux 系统中,还有一些特殊权限设置。其中最常见的就是 SUID 和 SGID 权限。如果一个文件设置了 SUID 权限,则当其他用户执行该文件时,该文件将以所有者权限而不是执行用户的权限运行。例如,如果用户执行的文件可以查看唯一的系统日志文件,而只有管理员才能访问该文件。在这种情况下,管理员希望其他用户能够查看该文件,但不希望他们能够访问任何其他敏感系统日志。管理员可以通过设置 SUID 权限来实现该目的。
SGID 权限是类似的。对于一个文件夹,如果它设置了 SGID 权限,则在该文件夹中创建的新文件或目录将被指定为该文件夹的用户组而不是创建者的用户组。这对于需要多个人共享访问权限的文件夹非常有用。
扫码咨询 领取资料