文件系统
文件系统概念
文件系统是操作系统用于澄清存储设备或分区上的文件的方法和数据结构。 这意味着如何在存储设备上组织文件。 负责管理和存储操作系统中文件信息的软件结构称为文件管理系统,简称文件系统
从系统的角度看,文件系统是负责组织和分配文件存储设备空间、保存文件以及保护和检索保存文件的系统。 具体负责为用户创建文件、文件存储、读取、修改、转储、文件访问控制、安全控制、日志、压缩、加密等
支持的文件系统:
/lib/modules/uname -r/kernel/fs
帮助: man 5 fs
文件系统类型
Linux常规文件系统
()扩展文件系统适用于分区容量不大(如/boot分区)且更新不频繁的情况
(ext3 )是ext2的改良版,支持日志功能,通过异常关闭帮助系统从异常中恢复
ext4:ext文件系统的最新版本。 提供了许多新功能,包括纳秒级时间戳、创建和使用16TB大文件、最多1EB文件系统和加速
xfs:SGI,最多支持8EB文件系统
软件应用程序
iso9660磁盘
btrfs(Oracle )
自由意志主义
Windows常规文件系统
FAT32
NTFS
exFAT
Unix :
是快速(fs )
是ufs(UNIX )
JFS2
网络文件系统:
美国全国广播公司
国际足联
群集文件系统:
GFS2
OCFS2(oracle )
分布式文件系统:
快速DFs
ceph
moosefs
mogilefs
glusterfs
迷失
原始:
未处理或未格式化的文件系统
常见文件系统特性:
FAT32
最多只能支持16TB的文件系统和4GB的文件
NTFS
最多只能支持16EB文件系统和16EB文件
EXT3
最多只能支持32TB文件系统和2TB文件,实际上只能容纳2TB文件系统和16GB文件
Ext3目前只支持32000个子目录
Ext3文件系统使用32位空间记录块数和inode数
当数据写入Ext3文件系统时,Ext3的块分配器一次只能分配4KB的块
EXT4:
EXT4是Linux系统下的日志文件系统,是EXT3文件系统的后续版本
Ext4文件系统容量将达到1EB,支持单个文件的将达到16TB
理论上支持无限数量的子目录
Ext4文件系统在64位空间中记录块数和inode数
Ext4中的多块分配器支持在一次调用中分配多个数据块
修复速度快
XFS
根据记录的日志,快速恢复磁盘文件的内容
在优化算法中,日志记录对整个文件操作的影响非常小
在所有64位文件系统中,最多支持8EB文件系统,支持一个文件的达到8EB
可以以接近原始设备I/O的性能存储数据
以前支持的文件系统:
cat/proc /文件系统
文件系统的构成要素
内核中的模块: ext4、xfs、vfat
Linux虚拟文件系统: VFS
用户空间管理工具: mkfs.ext4、mkfs.xfs、mkfs.vfat
文件系统选择管理
创建文件系统
创建文件管理工具
MFS命令:
)1) mkfs.FS_TYPE /dev/DEVICE
ext4
xfs
BT射频识别系统
vfat
)2) mkfs -t FS_TYPE /dev/DEVICE
- l设置“标签”卷标
mke2fs:ext系列文件系统专用管理工具
常用选项
- t { ext2}指定文件系统类型
-b {1024|2048|4096}指定块的块大小
- l设置“标签”卷标
-j相当于-t ext3,mkfs.ext3=mkfs-text3=mke2fs-j=mke2fs-text 3
-i #在数据空间的每几个字节创建一个inode; 不小于块大小
-N #指定要在分区中创建的inod数
e-I 一个inode记录占用的磁盘空间大小,128—4096
-m # 默认5%,为管理人员预留空间占总空间的百分比
-O FEATURE[,…] 启用指定特性
-O ^FEATURE 关闭指定特性
查看和管理分区信息
blkid 可以查看块设备属性信息
格式:
blkid [OPTION]... [DEVICE]
常用选项:
-U UUID 根据指定的UUID来查找对应的设备
-L LABEL 根据指定的LABEL来查找对应的设备
e2label:管理ext系列文件系统的LABEL
e2label DEVICE [LABEL]
findfs :查找分区
findfs [options] LABEL=
findfs [options] UUID=
tune2fs:重新设定ext系列文件系统可调整参数的值
-l 查看指定文件系统超级块信息;super block
-L ‘LABEL’ 修改卷标
-m # 修预留给管理员的空间百分比
-j 将ext2升级为ext3
-O 文件系统属性启用或禁用, –O ^has_journal
-o 调整文件系统的默认挂载选项,–o ^acl
-U UUID 修改UUID号
dumpe2fs:显示ext文件系统信息,将磁盘块分组管理
-h:查看超级块信息,不显示分组信息
xfs_info:显示示挂载或已挂载的 xfs 文件系统信息
xfs_info mountpoint|devname
范例:
[root@centos8 ~]#xfs_info /dev/sda7
meta-data=/dev/sda7 isize=512 agcount=4, agsize=131072 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1
data = bsize=4096 blocks=524288, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
超级块和INODE TABLE
块组描述符表(GDT)
ext文件系统每一个块组信息使用32字节描述,这32个字节称为块组描述符,所有块组的块组描述符组成块组描述符表GDT(group descriptor table)。虽然每个块组都需要块组描述符来记录块组的信息和属性元数据,但是不是每个块组中都存放了块组描述符。将所有块组的块组信息组成一个GDT保存,并将该GDT存放于某些块组中,类似存放superblock和备份superblock的块
文件系统检测和修复
文件系统夹故障常发生于死机或者非正常关机之后,挂载为文件系统标记为“no clean”
注意:一定不要在挂载状态下执行下面命令修复
fsck: File System Check
fsck.FS_TYPE
fsck -t FS_TYPE
注意:FS_TYPE 一定要与分区上已经文件类型相同
常用选项:
-a 自动修复
-r 交互式修复错误
e2fsck:ext系列文件专用的检测修复工具
-y 自动回答为yes
-f 强制修复
-p 自动进行安全的修复文件系统问题
xfs_repair:xfs文件系统专用检测修复工具
常用选项:
-f 修复文件,而设备
-n 只检查
-d 允许修复只读的挂载设备,在单用户下修复 / 时使用,然后立即reboot
本文链接:http://www.yunweipai.com/33914.html