Linux 文件系统介绍
目录
[1.Linux 分区简介](#1)一、Linux 分区简介
与 windows 通过 盘符管理各个分区不同,Linux把所有设备和文件都当作文件来管理,这些文件都在根目录下,同时Linux中的文件名区分大小写。
在windows系统中经常会碰到C盘盘符(C:)标识,而Linux系统没有盘符的概念,可以认为Linux下所有文件和目录都存在于一个分区内。 Linux系统每一个硬件设备(硬盘、内存等)都映射到系统的一个文件。 IDE 接口设备在 Linux 系统中映射文件以 hd
为前缀; SCSI 设备映射的文件以 sd
为前缀。具体文件名规则是以英文字母排序的。 如系统中第一个IDE设备为 hda,第二个为 hdb。 如下所示:
[hk@localhost ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/cl-root 37G 1.4G 36G 4% /
devtmpfs 902M 0 902M 0% /dev
tmpfs 912M 0 912M 0% /dev/shm
tmpfs 912M 17M 896M 2% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 1014M 139M 876M 14% /boot
tmpfs 183M 0 183M 0% /run/user/1000
[hk@localhost ~]$
在对硬盘进行分区时,第一个分区为号码1(如 sda1),第二个分区为 sda2,以此类推。分区分为主分区和逻辑分区,每一块硬盘设备最多只能由 4 个主分区构成,任何一个扩展分区都要占用一个主分区号码,主分区和扩展分区数量最多为 4 个。在进行系统分区时,主分区一般设置为激活状态,用于在系统启动时引导系统。每个分区的大小可以由用户指定。
Linux分区格式与 windows不同,windows常见格式有 FAT32、FAT16、NTFS,而Linux常见分区格式为 swap、ext3、ext4 等。
二、文件的类型
Linux 系统是一种典型的多用户系统,不同的用户处在不同的地位,拥有不同的权限。为了保护系统的安全性,对于同一资源来说,不同的用户具有不同的权限,Linux对不同的用户访问同一文件(目录)的权限做了不同的规定。如下所示:
[hk@localhost ~]$ ls -l study/b.txt
-rw-rw-r--. 1 hk hk 78 Jan 8 06:09 study/b.txt
- 第一列表示文件类型。
- 第二列表示文件权限,如文件权限是
"rw-rw-r--"
,表示文件所有者可读,可写,文件所属的用户组可读,可写,其它用户可读此文件。 - 第三列为硬链接个数。
- 第四列表示文件所有者,就是文件属于哪个用户。
- 第五列表示文件所属的组。
- 第六列表示文件大小,通过不同的参数可显示为可读的格式,如 K/M/G 等。
- 第七列表示文件修改时间。
- 第八列表示文件名或目录名。
Linux 常见的文件类型如下所示:
- 表示普通文件,是Linux系统中最常见的文件,普通文件第一位的标识是 "-" ,比如常见的脚本等文本文件和常用软件的配置文件,可执行的二进制文件也属于普通文件。
d 表示目录文件,第一位标识为 d,和windows中文件夹概念类似。
l 表示符号链接文件,第一位标识为 l 软链接相当于windows中的快捷方式,而硬连接则可以认为是具有相同内容的不同文件,不同之处在于更改其中一个,另外一个文件内容会做同样改变。
d/c 表示设备文件,第一位标识是 d 或 c ,为 d 表示是块设备文件。块设备文件的方位每次以块为单位,比如 512字节或 1024字节等,类似windows中簇的概念。块设备可随机读取,如硬盘、光盘属于此类。而字符设备文件每次访问以字节为单位,不可随机读取,如键盘。
s 表示套接字文件,第一位标识为 s ,程序间可通过套接字进行网络数据通信。
p 表示管道文件,第一位标识为 p ,管道是Linux系统中一中进程通信的机制,生产者写数据到管道中,消费之可以通过进行读取数据。
三、文件的属性与权限
为了系统的安全性,Linux对于文件赋予了 3 属性:可读、可写、可执行。在Linux系统中,每个文件都有唯一的属主,同时Linux系统中的用户可以属于同一个组,通过权限位的控制定义了每个文件的属主,同组用户和其它用户对该文件具有不同的读、写和可执行权限。- 读权限,对应标志位为
r
,表示具有读取文件或目录的权限,对应的使用者可以查看文件内容。 - 写权限,对应标志位为
w
, 用户可以变更此文件,比如删除、移动等。写权限依赖于该文件父目录的权限设置,如果对应的用户对该文件父目录无写权限,但对该用户有写权限,任然不能操作此文件。 - 执行权限,对应标志位为
x
, 一些可执行文件必须有可执行权限才可以运行。对于目录而言,可执行权限表示可以进入此目录,如果目录没有可执行权限,则不能进入该目录。