原创系统笔记

Linux文件权限与归属

本文阅读 4 分钟
首页 系统笔记 正文

权限说明

在 Linux 系统中,每个文件都有归属的所有者和所属组,并且规定了文件的所有者、所属组以及其他人对文件所拥有的可读(r)、可写(w)、可执行(x)等权限。

可读、可写、可执行权限对应的命令在文件和目录上是有区别的,可参考下表。

文件目录
可读(r)catls
可写(w)vimtouch
可执行(x)./scriptcd

文件的可读、可写、可执行权限的英文全称分别是 read、write、execute,可以简写为 r、 w、x,亦可分别用数字 4、2、1 来表示,文件所有者、文件所属组及其他用户权限之间无关联,如表所示。

下图中,包含了文件的类型、访问权限、所有者(属主)、所属组(属组)、占用的磁盘大小、最后修改时间和文件名称等信息。

img

在 Linux 系统中一切都是文件,但是不同的文件由于作用不同,因此类型也不尽相同(有一点像 Windows 系统的后缀名)。常见的文件类型包括:

  • 普通文件(-)、
  • 目录文件(d)
  • 链接文件(l)
  • 管道文件(p)
  • 块设备文件(b)
  • 字符设备文件(c)

普通文件的范围特别广泛,比如纯文本信息、服务配置信息、日志信息以及 Shell 脚本等,都属于普通文件。几乎在每个目录下都能看到普通文件(-)和目录文件(d)的身影。块设备文件(b)和字符设备文件(c)一般是指硬件设备,比如鼠标、键盘、光驱、硬盘等,在/dev/目录中最为常见。

文件权限修改

chmod 命令用于设置文件的一般权限及特殊权限,英文全称为“change mode”,语法格式为“ chmod [参数] 文件名 ”。 chomd -R 表示对目录进行递归设置权限操作。

例如,要把一个文件的权限设置成其所有者可读可写可执行、所属组可读可写、其他人没有任何权限,则相应的字符法表示为rwxrw----,其对应的数字法表示为 760。

[root@servera ~]# ls -l initial-setup-ks.cfg 
    -rw-r--r--. 1 root root 0 Sep 19 15:11 initial-setup-ks.cfg
[root@servera ~]# chmod 760 initial-setup-ks.cfg    //给.cf这个文件设置权限
[root@servera ~]# ls -l initial-setup-ks.cfg 
    -rwxrw----. 1 root root 0 Sep 19 15:11 initial-setup-ks.cfg

chmod 和 chown 命令是用于修改文件属性和权限的最常用命令,它们还有一个特别的共性,针对目录进行操作时需要加上大写参数 -R 来表示递归操作,即对目录内所有的文件进行整体操作

文件归属修改

chown 命令用于设置文件的所有者和所有组,英文全称为 change own,语法格式为“ chown 所有者:所有组 文件名 ”。 chown -R 表示对目录进行递归设置归属操作。

下面把前文件的所属信息修改一下并查看变更后的效果:

[root@servera ~]# ls -l initial-setup-ks.cfg 
    -rwxrw----. 1 root root 0 Sep 19 15:11 initial-setup-ks.cfg

[root@servera ~]# chown zhangxu: initial-setup-ks.cfg    //修改属主为用户zhangxu
[root@servera ~]# ls -l initial-setup-ks.cfg 
    -rwxrw----. 1 zhangxu zhangxu 0 Sep 19 15:11 initial-setup-ks.cfg

[root@servera ~]# chown :zhangxu initial-setup-ks.cfg    //修改属组为zhangxu组
[root@servera ~]# ls -l initial-setup-ks.cfg 
    -rwxrw----. 1 root zhangxu 0 Sep 19 15:11 initial-setup-ks.cfg
原创文章,作者:張旭,如若转载,请注明出处:http://www.zxbke.cn/39.html/