Linux C ————19、Linux文件系统

文件是Linux环境中一个相当重要的概念,文件提供了简单并一致的接口来处理系统服务与设备。在Linux中,一切都是文件。也就是说,在Linux中,所有的内容都被看出文件,所有的操作都可以归结为对文件的操作,操作系统可以像处理普通文件一样用来使用磁盘文件、串口、键盘、显示器、打印机以及其他设备。

Linux文件系统结构

Linux文件系统是目录和文件的一种层次安排,目录的起点称为根“root”,其名字是一个字符“/”。目录(directory)是一个保护目录项的文件,在逻辑上,可以认为每个目录项都包含一个文件名,同时还包含说明该文件属性的信息。文件属性是文件类型、文件长度、文件所有者、文件的许可权(例如,其他用户能否访问该文件)、文件最后的修改时间等。

内核、Shell和文件系统一起形成了Linux的基本操作系统结构。他们使得用户可以运行程序,管理文件、使用系统。此外,Linux操作系统还有血多被称为使用的工具的程序,辅助用户完成一些特定的任务。

在使用Linux的文件以及目录时,可以遵循以下技巧:

  • 用户文件存放在/home/user_login_name目录下
  • 本地管理员在大多数情况下将额外的软件安装在/usr/local目录下,并将符号链接在/usr/local/bin下的主执行程序
  • 系统的所有设置均在/etc目录下
  • 不要修改根目录或/usr目录下的任何内容,除非真的清楚要做什么。这些目录最后和Linux发布时一样。
  • 大多数系统工具和应用程序安装在/bin   /usr/sbin   /sbin   /usr/x11/bin以及/usr/local/bin下
  • 系统中所有的文件均在单一的目录树下
  • Linux没有所谓的“驱动符”,所有的外围设备度当做文件来处理,即设备文件。

Linux C ————19、Linux文件系统

文件类型

在终端输入“ls  -l”命令,系统会打印出当前目录下所有文件的信息:

Linux C ————19、Linux文件系统

这个例子是Linux用户再熟悉不过的了,它打印出了当前目录下所有文件的信息,包括文件类型、文件属性、用户名、用户所在的组、文件大小、修改时间、文件名等信息。其中第一栏也是本小节主要讲解的内容:

第一栏的信息包含了10位鞋子福,分为4组。如下图所示

     1               2               3                  4                5               6                7                8                    9                10

  r w x r x x r w x

                                                    文件属性位含义

  • 第一组即第一位,表示文件的类型
  • 第二组即2-4位 ,表示文件所有者的权限,分别为读、写、执行
  • 第三组即5-7位,表示文件所有者同组用户的权限,分别为读、写、执行
  • 第四组即8-10位,表示其他组用户的权限,同样分别为读、写、执行。

Linux文件类型符号
符号 文件类型 符号 文件类型
-

普通文件

d 目录文件
l 链接文件 b 块设备文件
c 字符设备文件 p 管道文件
s 套接口文件    

第一个字符表示文件的类型哦!

文件访问权限

所谓权限,值得是文件系统为了进行安全管理需要对文件操作时进行的用户身份认证。合法的用户可以进行文件的操作,而没有权限的用户就不能对文件进行操作。

三种权限:

r—————————读

w————————  写

x_————————执行

用户排序为:用户      用户所在的组    其他用户