7.1ext2文件系统特性
1.LINUX中的文件权限和文件属性放到inode中,实际数据则放在数据区块中,超级区块中则会保存inode和数据区块的总量、使用量、剩余量等信息。 2.LINUX的EXT2文件系统
1)ext2文件系统格式化时区分多个区块群组,每个区块群组都有独立的Inode,数据区块、超级区块系统,同时在文件系统最前面会分配一个启动扇区来安装启动引导程序。
2)ext2支持的数据区块大小1K\2K4K三种,同时ext2文件系统还有以下限制:
-区块大小与数量在格式化完成后就不能在修改(除非重新格式化)
-每个区块 内存最多能够放置一个文件的数据
-如果文件大于区块大小,则文件会占用多个区块
-如果文件小于区块大小,则该区块的剩余容量就不能在使用,造成磁盘空间浪费
3)inode表:记录文件的权限和属性、拥有者、用户组、大小、建立和改变状态的时间等,每个inode都占用128B(ext4/xfs以后为256B)磁盘空间,每个文件都会占用一个inode
4)超级区块:记录数据区块和inode的总数,未使用和使用的inode、数据区块的数目,数据区块和inode的大小,文件系统挂载的时间、最后写入的时间、最近一次磁盘检测的时间等,同时具有一个标志为,当文件系统被挂载时,则该位为0,未挂载为1,占用空间1024B
3.LINUX文件系统的运行机制:为了提高文件系统的运行和处理速度,LINUX常常会把常用的文件一直加载在内存中,并且对放在内存中的文件设置标志位,未被修改则为clear,被修改后则为dirty,当文件被设置为dirty后文件系统会主动的将文件同步到磁盘中,所以内存最后常常可能被用光,当然也可以手动的同步内存中的数据,使用sync的命令来手动同步,所以当LINUX正常关机时数据会被自动sync到磁盘中,而意外关机则会导致数据出错,文件系统损坏。
4.文件的挂载:因为每个文件系统有不同的inode\数据区块、超级区块等,所以文件系统需要链接到目录树才能使用,而这个过程则被称为挂载。
注意:挂载点一定是目录,该目录为文件系统的入口
5.查看已经加载的文件系统:cat /proc/fliesystems
7.2 xfs文件系统
1.文件系统配置:数据区+文件系统活动登录区+ 实时运行区
数据区:包括全部EXT2的内容,不同之处:可以设置inode 由256B-2MB,区块容量:512B-64KB,但是LINUX仍只支持4K
文件系统活动登录区:日志区
实时运行区:建立数个extent区块放置文件
2.查看xfs超级区块的命令 xfs_info 挂载点|设备文件名
7.3文件系统的操作
1.磁盘和目录的容量:df :列出文件系统的整体磁盘使用量 du:查看文件系统的磁盘使用量(可用于查看目录占用的磁盘空间)
2.硬链接和符号链接:ln 【-sf】 源文件 目标文件
硬链接:硬链接就是在某个目录下新增一条文件名链接到某个inode号码的关联记录,但是硬链接不可以跨文件系统和链接目录
符号链接:建立一个独立的文件,而这个文件互让数据的读取指向它链接的那个文件的文件名,类似于WINDOWS下的快捷方式。
3.观察磁盘分区的状态
1)lsblk:列出系统上所有磁盘的列表
2)blkid:列出设备的UUID等参数
3)parted:列出磁盘的分区表类型与分区信息
7.4文件系统的挂载
1.限制:P243
单一文件系统不应该重复挂载在不同的目录中
单一目录不应该重复挂载多个文件系统
要作为挂载点的目录,理论上应该是空目录
2.手动挂载命令:mount 【-t 文件系统】 设备文件名 挂载点
手动卸载命令:umount 【-fn】 设备名或挂载点(目录名)
3.自动挂载命令:自动挂载直接修改/etc/fstab及/etc/mtab两个文件 P249
1)文件系统挂载时,需要先挂载根目录,在挂载其他文件系统
2)所有挂载点同一时间只能挂载一次
3)所有硬盘分区在同一时间内只能挂载一次
4)若卸载,必须先退出,挂载点所在的目录
4.磁盘的使用必须经过:分区、格式化、挂载。如gdisk、mkfs、mount三个命令