RHEL7学习笔记_Linux文件系统

扩展参考 :Ext4文件系统分析专栏http://blog.csdn.net/column/details/ext4-filesystem.html

Linux文件系统,包含但不限于ext4、XFS、BTRFS、GFS2和GlusterFS,都是区分大小写的。虽然Linux中支持许多非Linux文件系统,每一种系统都具有独特的文件命名规则。例如VFAT以及Microsoft的NTFS和Apple的HFS+具有大小写保留行为。虽然这些文件系统不区分大小写(主要是为了向后兼容),但它们使用文件创建时的大小写形式来显示文件名。

文件系统层次结构

Linux系统中的所有文件存储在文件系统中,它们被组织到一个颠倒的目录树中,称为文件系统层次结构。这棵树的树根在该层次结构的顶部,树根的下方延伸出目录(可以理解为文件夹)和子目录的分支。

/目录是根目录,位于文件系统层次结构的顶部。/字符还用作文件名中的目录分隔符。例如,etc是/目录的子目录,用/etc来表示它。类似地,如果/etc目录包含一个名为issue的文件,用/etc/issue来表示它。

(当前)工作目录指当前在文件系统中处于什么位置

/目录的子目录用于标准化的用途,以便根据文件和用途组织文件。

位置          用途

/usr           安装的软件、共享的库,包括文件和静态只读程序数据。重要的子目录有:

                  /usr/bin:用户命令。

                  /usr/sbin:系统管理命令。

                  /usr/local:本地自定义软件。

/etc            特定于此系统的配置文件。

/var            特定于此系统的可变数据,在系统启动之间保持永久性。动态变化的文件(如数据库、缓存目录、日志文件、打印机后台处理文档和网站内容)可以在/var下找到。

/run           自上一次系统启动以来启动的进程的运行时数据。这包括进程ID文件和锁定文件,等等。此目录中的内容在重启时重新创建。(此目录整合了旧版RHEL中的/var/run                         和/var/lock)

/home      普通用户存储其个人数据和配置文件的主目录。

/root          管理超级用户root的主目录。

/tmp          供临时文件使用的全局可写空间。10天(默认)内未访问、未更改或未修改的文件将自动从该目录中删除。还有一个临时目录/var/tmp,该目录中的文件如果在30天                   (默认)内未曾访问、更改或修改过,将被自动删除。

/boot         开始启动过程中所需的文件。

/dev           包含特殊的设备文件,供系统用于访问硬件。

绝对路径和相对路径

文件或目录的路径指定其在文件系统中唯一的位置。跟随文件路径会遍历一个或多个指定的子目录,用/分隔,直到到达目标位置。与其他文件类型相同,标准的文件行为定义也适用于目录(根据Linux系统“一切皆文件”的原则,目录在必要时称之为目录文件)。

绝对路径是完全限定名称,自根目录开始,指定到达且唯一代表单个文件所遍历的每个子目录。文件系统中的每个文件都有一个唯一绝对路径名,可通过一个简单的规则识别:第一个字符是/的路径名是绝对路径名。

相对路径同样标识唯一文件,仅指定从工作目录到达该文件所需的路径。识别相对路径名遵循一个简单规则:第一个字符不是/的路径名就是相对路径名。位于/var目录用户可将消息日志文件相对指代为log/messages。

对于标准Linux系统,路径名长度(含/)不可超过4095字节。路径名中通过/隔开的每一部分的长度不可超过255字节。文件名可以使用任何UTF-8编码的Unicode字符,但/和NUL字符除外。(ASCII字符需要一个字节;其他拉丁语、希腊语、希伯来语或斯拉夫语字符占用两个字节;Unicode中有些字符占用三个字节;不存在占用字节超过四个的字符。)

存储管理概念

文件系统是包含保存数据的文件和目录的有序结构,驻留在物理磁盘或分区等存储设备上。之前讨论的文件系统层次结构将所有文件系统汇集为一个具有单个根的目录树。此处的优点在于,现有层次结构可以随时扩展:只需添加包含支持的文件系统的新磁盘或分区,即可在文件系统树的任何位置增加磁盘空间。将新文件系统添加到现有目录树的过程称为挂载。挂载了新文件系统的目录称为挂载点。这与Windows上使用的概念全然不同,后者中新的文件系统通过单独的驱动器盘符表示。

硬盘和存储设备通常划分为更小的块,称为分区。分区是划分硬盘的一种方法。不同的部分可以通过不同的文件系统进行格式化或用于不同的目的。例如一个分区可以包含用户主目录,另一个分区则可包含系统数据和日志。如果用户在主目录分区中填满了数据,系统分区可能依然有可用的空间。将数据放在两个独立分区上的两个独立文件系统中有助于规划数据存储。

存储设备由一个特殊文件类型表示,其称为块设备。块设备存储在/dev目录中。在RHEL中,检测到的第一个SCSI、PATA/SATA或USB硬盘驱动器是/dev/sda,第二个是/dev/sdb,以此类推。该名称代表整个驱动器。/dev/sda上的第一个主分区是/dev/sda1,第二个分区是/dev/sda2,以此类推。(KVM虚机中的硬盘驱动器是例外情况,它们通常显示为/dev/vd/dev/xvd

整理磁盘和分区的另一种方式是通过逻辑卷管理(LVM)。通过LVM,一个或多个块设备可以汇集为一个存储池,称为卷组。磁盘空间以一个或多个逻辑卷提供。逻辑卷与驻留于物理磁盘上的分区相当。卷组和逻辑卷在创建时都分配有名称。对于卷组,/dev目录中有一个名称与该卷组相同的目录。在该目录下,已创建名称与逻辑卷相同的符号链接。例如,代表myvg卷组中mylv逻辑卷的设备文件是/dev/myvg/mylv。

应注意,LVM依赖于设备映射程序(DM)内核驱动程序。以上符号链接/dev/myvg/mylv指向/dev/dm-number名称在每次启动会有所不同。

文件间的链接

硬链接是新的目录条目,其引用文件系统中的现有文件。文件系统中的每一文件默认具有一个硬链接。为节省空间,可以不复制文件,而创建引用同一文件的新硬链接。新硬链接如果在与现有硬链接相同的目录中创建,则需要具有不同的文件名,否则需要驻留于不同的目录中。指向同一文件的所有硬链接具有相同的权限、链接数、用户/组所有权、时间戳以及文件内容。指向同一文件内容的硬链接需要在相同的文件系统中。即使原始文件被删除,只要至少存在一个硬链接,该文件的内容就依然可用。

软链接也叫符号链接。软链接是特殊的文件类型,它指向现有的文件和目录。与硬链接不同,软链接可以指向其他文件系统中的文件或目录。当原始文件被删除后,软链接依然会指向该文件,但目标已消失。这种软链接称为“悬挂的软链接”。软链接还可以指向目录,然后作为目录使用。

交换空间

交换空间是可与Linux内核内存管理子系统配合使用的磁盘区域。交换空间用于通过保存不活动的内存页来补充系统RAM。系统RAM与交换空间组合在一起称为虚拟内存

当系统上的内存使用量超过定义的限制时,内存将梳理RAM,寻找已分配给进程但空闲的内存页。内核将空闲的内存页写入到交换区,并且重新分配RAM页面以供其他进程使用。如果某个程序需要访问已写入到磁盘的页面,则内核会找到另一个空闲的内存页,将其写入到磁盘,然后从交换区重新调用所需的页面。

由于交换区位于磁盘上,所以与RAM相比交换非常慢。尽管交换空间用于扩充系统RAM,但应尽可能将交换空间的使用保持在最低限度。

逻辑卷管理概念

逻辑卷和逻辑卷管理有助于更加轻松地管理磁盘空间。如果LVM托管的文件系统需要更多空间,可以将其卷组中的可用空间分配给逻辑卷,并且可以调整文件系统的大小。如果磁盘开始出现错误,可以将替换磁盘注册为物理卷放入卷组中,并且逻辑卷的区块可迁移到新磁盘。

LVM定义

物理设备是用于保留逻辑卷中所存储数据的存储设备。它们是块设备,可以是磁盘分区、整个磁盘、RAID阵列或SAN磁盘。设备必须初始化为LVM物理卷,才能与LVM结合使用。整个“设备”将用作一个物理卷。

物理卷(PV)用于注册基础物理设备以便于在卷组中使用。LVM自动将PV划分为物理区块(PE);它们是充当PV上最小存储块的小块数据。

卷组(VG)是存储池,由一个或多个物理卷组成。一个PV只能分配给一个VG。VG可以包含未使用的空间和任意数目的逻辑卷。

逻辑卷(LV)根据卷组中的空闲物理范围创建,提供应用、用户和操作系统所使用的“存储”设备。LV是逻辑区块(LE)的集合,LE映射到物理区块(PV的最小存储块)。默认情况下,每个LE都将映射到一个PE。设置特定LV选项将会更改此映射;例如,镜像会导致每个LE映射到两个PE。

扩展逻辑卷

可以通过添加额外的物理卷来为卷组可以分配增加更多磁盘空间。这种做法称为扩展卷组。由额外的物理卷提供的新物理区段可以分配给逻辑卷。

可以将未使用的物理卷从卷组中删除。这种做法称为缩减卷组。可以使用名为pvmove的工具,将数据从一个物理卷上的区段移动到卷组中其他物理卷上的区段。通过这种方式,可以将新磁盘添加到现有卷组,将数据从较旧或较慢的磁盘移动到新磁盘,并将旧磁盘从卷组中删除。可在卷组中的逻辑卷正在使用时完成这些操作。

你可能感兴趣的:(linux)