今天继续给大家介绍Linux基础知识,本文的主要内容是Linux文件类型和文件权限。

一、Linux文件类型

在Linux系统下,一切皆文件。文件又可以分为普通文件和特殊文件,普通文件包括可执行文件、txt文档、html网页等等。而特殊文件又可以进行以下细分:
1、目录文件。 即文件夹,目录。
2、链接文件。 在这里专门指软连接。
3、块设备文件。 指机械硬盘。
4、字符设备文件。 指虚拟终端。
5、管道文件。 常用于分管符。
6、安全套接字文件。 用于监听端口时使用。
在Linux系统中,执行ll命令可以查看指定目录下的文件详细信息,其中第一列就表示了该文件的文件类型,如下:

第一列含义如下:
d表示目录文件,l表示链接文件,b表示块设备文件,c表示字符设备文件,p表示管道文件,s表示安全套接字文件。

二、Linux权限概述

在Linux系统中,对于文件权限与操作用户决定了该用户对该文件的操作是允许还是禁止。在Linux系统中,正是通过权限,来限制用户的系统资源的访问,从而提升了系统的安全性。Linux对文件权限分为读、写执行三种,也可以简称为r、w、x。
Linux对权限的管理是与Linux用户息息相关的,因为Linux的每个文件都是按照文件的属主、文件属主的同组用户和其他用户来进行权限控制的,也可以简写为U、G、O。Linux并没有针对每个Linux用户都设置单独的权限,既是从方便性和安全性两种角度的中和,从而最终采用了这种U、G、O的管理粒度。Linux的每个文件都有访问控制列表,该表中详细列出了U、G、O身份的用户可以对文件进行的操作。
使用ll命令可以查看指定文件夹下文件的权限,如下:

第一列后面的9个字符,三个一组,就分别代表了文件属主、文件属主的同组用户和其他用户的读、写和执行权限。
例如,上图中第一个文件夹权限为:

rwxr-xr-x

即代表了该文件属主权限为读、写和执行,文件属主的同组用户的权限为读和执行,其他用户的权限为读和执行。

三、Linux默认文件权限与反掩码

在默认情况下,Linux文件的属主属于创建该文件的用户,或者说,当一个进程创建文件时,该进程的用户即是该文件的属主。Linux系统中,目录的默认权限是755,即属主对于该目录具有完全的控制权限,属主的同组用户和其他用户可以查看并进入该目录,但是不能增加、删除、修改目录中的文件;文件的默认权限是644,即属主对于该文件可以查看和修改,而属组的同组用户以及其他用户只能查看该文件内容,但是不能修改。
在Linux系统中,存在umask反掩码的设置,该设置决定了当我们创建文件和目录时,文件和目录的初始权限是什么。
执行命令,umask可以查看当前的反掩码设置,下图表示了在系统默认情苦下,umask的值。

上述umask设置为0022,其实,第一个数字表示Linux的特殊权限,在这里我们不进行详细介绍,后面的三位即是Linux权限的反掩码。
umask是如何规定了目录和文件的权限呢?即是通过类似计算机网络中反掩码的方式,对于目录,所有的权限为777,在默认情况下umask反掩码为022(排除上上面的第一位),因此得出在默认情况下Linux目录的权限为755,对于文件,所有的权限为666,在默认情况下umask反掩码为022,因此得出在默认情况下Linux文件的权限为644。
下图说明了umask影响文件权限:

原创不易,转载请说明出处:https://blog.csdn/weixin_40228200/article/details/120589677

更多推荐

Linux文件类型与文件权限详解(一)