首页 > 其他分享 > 创建文件系统1

创建文件系统1

时间:2023-09-24 17:31:49浏览次数:43  
标签:ext3 ext2 创建 文件系统 xfs 节点

一:概述

Linux系统把每个硬件都当做是一个文件,这样用户就可以用读写文件的方式实现对硬件的访问了。文件系统基于操作系统,它可以管理和组织保存在磁盘驱动器上的数据。通过文件系统,实现数据的完整性,保证读写数据的一致性,同时也实现了读写数据简单化。

二:Linux中的主要文件系统以及创建方法

使用disk之类的命令创建分区之后,要想使分区可用,还需要在该分区中创建一个文件系统。Linux中有各种文件系统,CentOS中默认的文件系统是xfs,Ubuntu的默认文件系统是xe4。

Linux系统支持多种文件系统如DOS文件类型msdos、Windows中的FAT系列和NTFS、光盘文件系统ISO-9660、单一文件系统ex2和日志文件系统ext3等。Linux系统中可以同时存下不同德文件系统,不同文件系统有不同的特点,根据存储设备的硬件特性、系统需求等有不同的应用场合。下面是常见的几种文件系统:

  • FAT:早期的文件系统。随着存储技术的发张,FAT已将不能满足用户的需要,后续还出现了FAT6、FAT32等。尽管FAT已经不是Windows的默认文件系统了,但是在U盘和嵌入式设备还是比较常见的。
  • NTFS:由微软开发的专用系统文件系统,相当于FAT,NTFS增加了许多的高级功能,例如增强的安全控制、日志功能等。
  • ext2/ext3/ext4:ext是Linux的标准文件系统,支持无限数量的子目录,改进了日志校验,支持更多的扩展属性。

Linux系统中可用的主要文件系统以及它们的最大文件系统值和最大文件值如下表所示:

文件系统

最大文件系统值

最大文件值

xfs

8EiB

8EiB

ext3

16TiB

2TiB

ext4

1EiB

16TiB

brtfs

16EiB

16EiB

下面先来说一下CentOS中默认的文件系统xfs,xfs是一种高级文件系统,可以处理大容量文件,并且可以与文件系统并行处理。xfs通过分布处理磁盘请求、定位数据和保存缓存的一致性来提供对文件系统数据的低延迟、高宽带访问。xfs文件系统的主要特征如下:

  • 日志记录功能:xfs使用一种高效的磁盘格式记录元数据的变动,它允许将日志文件存储在另一块设备上。xfs优秀的结构算法,极大的缩小了日志记录对文件操作系统的影响,同时保证了性能和安全。
  • 可扩展性:xfs支持强大的超大容量的存储空间,支持特大数量的目录,可以快速搜索和分配空间,文件系统的性能不受目录文件中数目的限制。
  • 快速写入性能:能以接近裸设备I/O的性能存储数据,具有高吞吐量。xfs中主要元素有分配组、超级快、i节点等,这些元素的含义如下:
  • 分配组:可以将分配组看做是独立的独立的文件系统,每个文件系统都有自己的空间和管理文件的信息。xfs文件系统通过将它们分成多个大小相等的分配组来创建,最小的分配组为16MB,最大的分配组为1TB.
  • 超级块:管理与整个文件系统有关的信息,例如可用空间和索引节点的总数。第一个分配组的超级快是主要的,第二个以及后续分配的超级块是备用的。
  • 块:块是存储元数据的单元,元数据是文件管理信息,也可以作为文件实体的数据。一个块的默认大小为4096字节,空闲块由B+tree管理。
  • i节点(索引节点):i节点存储属性信息,例如文件的所有者、权限、创建日期和时间以及存储文件数据的编号。i节点的默认大小为256字节,i节点有B+tree管理,每64个i节点的第一个i节点数是关键,后续创建文件系统是根据需要以64为增量进行添加。
  • 扩展:扩展盘区是一个或多个连续文件系统快,可以根据头块的数量和与其相邻的块数连续访问它们,从而提高文件系统的性能。对于使用扩展的文件,信息将写入到i节点。

这些元素的主要关系如下图所示:

                                         创建文件系统1_x系统

使用mkfs.xfs命令可以创建xfs文件系统。

格式:mkfs.xfs [选项] 设备名称

它的常用选项如下表所示:

选项

说明

-b

指定块大小,默认值为4096字节,最小值为512字节,最大值为65536字节

-d

指定数据参数。agcount=值:指定要创建的分配组数量;agsize=值:指定要创建的分配组大小;分配组最小值为16MiB,最大值为1TiB

-f

允许覆盖。当检测到现有文件系统时,不允许覆盖

-i

指定索引节点参数,例如要创建的索引节点大小为size=value:指定索引节点的大小。默认值为256字节,最小值为256字节,最大值为2048字节

-L

创建后,可以使用xfs_admin命令进行设置文件系统规范,最多12个字符

使用mkfs.xfs命令创建xfs文件系统,指定-f之后,即使已经创建了文件系统,也会被覆盖。创建文件系统时,命令行的执行会在短时间内完成,然后在需要i节点的时候i,以64为增量追加i节点。

三:ext文件系统

ext也是Linux标准的文件系统,专门为Linux内核设计的第一个文件系统;接着是ext2,它是Linux系统中的标准文件系统;ext3是在ext2的基础上增加日志形成ext的文件系统;ext4是Linux中第四代扩展日志文件系系统,是ext3文件系统的后继版本。ext4有很多非常先进的功能,在ext4中,性能也得到了极大的提升,包括对大文件操作的优化、快速检查扫描功能等。ext、ext2、ext3、ext4文件系统的具体说明如下表所示:

文件系统

最大文件值

最大文件系统值

说明

ext

2GiB

2GiB

带有扩展Minix文件系统的早期Linux文件系统,2.1.21之后的内核不支持

ext2

2TiB

32TiB

从ext扩展的功能:可变块大小、3中时间戳(ctime、mtime、atime)、通过位图进行块和i节点管理、分组介绍

ext3

2TiB

32TiB

向ext2增加了日记功能等,向后兼容ext2

ext4

16TiB

1EiB

从ext2/ext3扩展功能:通过extent改进性能、纳秒级时间戳、碎片整理功能。向后兼容ext2/ext3

ext2/ext3文件系统最大支持2TiB的文件大小,有直接映射、间接映射、双重间接映射、三重间接映射作为数据块指针。由于数据结构与ext2相同,ext3与ext2向后兼容。

ext2文件系统一般由超级块、块组、块组描述符组成,ext2使用i节点来记录信息。ext3是一种日志文件系统,在ext2的基础上增加了一个特殊的i节点,即日志记录功能,用于记录文件系统元数据或各种操作变化。

在ext2和ext3中,使用大文件间接映射块会导致性能降低。ext4使用扩展解决了这一问题,并且扩区与第一个块相连。它允许访问有关块的数的信息,而无需引用每个块的间接映射。

完成磁盘分区之后,用户可以在分区中创建文件系统。Linux系统中提供了mkfs或mke2fs命令创建ext2、ext3、ext4文件系统。

格式:mkfs [选项] 设备名称

mkfs命令的常用选项是-t,用于指定文件系统的类型。如果在未指定-t选项的情况下,执行mkfs.ext2命令表示创建ext2文件系统。mkfs命令指定的文件系统的类型如下表所示:

命令行

命令执行

要创建的文件系统

mkfs

mkfs.ext2

ext2

mkfs -j

mkfs.ext2 -j

ext3

mkfs -t ext2

mkfs.ext2

ext2

mkfs -t ext3

mkfs.ext3

ext3

mkfs -t ext4

mkfs.ext4

ext3

mkfs.ext2、mkfs.ext3、mkfs.ext4被硬件连接到mke2fs命令,用户可以通过指定-v选项执行mkfs命令检查要执行的命令和选项,如下图所示。执行结果中显示要执行的命令未mkfs.ext2 -j /dev/sdb1。

                                         创建文件系统1_数据_02

使用mkefs2命令可以创建ext2、ext3、ext4文件系统,如果用户想要在分区中创建一个ext3文件系统,需要指定-t ext3或-j选项。

格式:mkfe2fs [选项] 设备名称

mke2fs命令的选项以及说明如下表所示:

选项

说明

-b

以字节为单位指定块大小,可以指定1024、2048、4096

-j

添加日志并创建ext3文件系统

-f

指定磁盘碎片大小

-i

指定每个索引节点的字节数,默认在/etc/mke2fs.conf中设置

-t

指定要创建的文件系统类型

-c

创建文件系统之前检查环的块

-o

指定其他的功能

-m

指定保留块的百分比,默认值为5%

-l

指定索引结点的大小

mk22fs命令的配置文件为/etc/mke2fs.conf,mke2fs命令引用该配置文件设置默认值并添加函数创建文件系统。使用more命令查看/etc/mkesfs.conf配置文件如下图所示。该文件主要配置了mke2fs命令默认选项,在执行mke2fs命令时,如果没有指定某个选项,会从该文件中获取。

                                         创建文件系统1_数据_03

使用mke2fs命令在sdb1分区中创建ext3文件系统。可以看到一系列的效果。由于没有创建磁盘分区,所以这里就不演示这个了。


标签:ext3,ext2,创建,文件系统,xfs,节点
From: https://blog.51cto.com/u_15912723/7587001

相关文章

  • 05步:制作根文件系统
    原文:https://www.zhaixue.cc/qemu/qemu-build_busybox_rootfs.html5.1编译、安装根文件系统根文件系统的安装方法有很多,这里我们为了方便,安装最为简单和轻量的busybox#cd/home/tftpboot#mkdirfilesys#cdfilesys#wgethttps://busybox.net/downloads/busybox-1.35.0......
  • 解决k8s删除pod后又重新创建了新的pod
    1、问题现象2、原因在Kubernetes中,当你删除一个Pod时,如果该Pod是由Deployment、ReplicaSet或PodController创建的,那么这个Pod会被标记为“已删除”,但实际上并不会立即从系统中删除。具体而言,当一个Pod被删除时:如果这个Pod是由Deployment创建的,那么系统会创建一个新的Replic......
  • Hadoop是什么? Hadoop是一个由Apache开发的开源分布式计算框架,它能够处理大规模数据并
    Hadoop是什么?Hadoop是一个由Apache开发的开源分布式计算框架,它能够处理大规模数据并行处理任务,支持大规模数据存储和处理。Hadoop的核心组件包括分布式文件系统HDFS和分布式计算框架MapReduce,它们使得Hadoop可以在廉价的硬件上并行地处理大量数据。Hadoop还包括很多相关的项目和子......
  • TienChin-课程管理-创建工程
    创建方式与之前一样,如下奉上generateCourse代码。@TestvoidgenerateCourse(){Stringpath="E:\\Desktop\\TienChin\\tienchin-service\\tienchin-course\\src\\main";FastAutoGenerator.create("jdbc:mysql://localhost:......
  • visual studio2019创建管理系统的数据库
    1、打开服务资源管理器然后选择sqlserver数据库文件:自定义数据库名称:显示不存在之后,选择创建即可,然后就看到服务资源管理器这里出现:2、右键表-->添加新表然后新建一个名为UserTable的表,存放用户数据信息,字段名为:UId、UName、UPhone、UAddress、UPassword:然后点击左......
  • TienChin-课程管理-数据表创建
    CREATETABLE`tienchin_course`(`course_id`intNOTNULLAUTO_INCREMENTCOMMENT'课程ID',`type`intNULLCOMMENT&......
  • 创建进程的三种方式
    Java中创建线程主要有三种方式,分别为继承Thread类、实现Runnable接口、实现Callable接口。一、继承Thread类继承Thread类,重写run()方法,调用start()方法启动线程publicclassThreadTest{ publicstaticclassMyThreadextendsThread{@Overridepublicvoid......
  • Centos7.9+Oracle11g 单机文件系统安装注意事项
    数据库软件(上传至/root目录)p13390677_112040_Linux-x86-64_1of7p13390677_112040_Linux-x86-64_2of7其他软件包(上传至/root目录)compat-libstdc++-33-3.2.3-72.el7.x86_64.rpmpdksh-5.2.14-37.el5_8.1.x86_64.rpm安装软件包#安装compat包rpm-ivhcompat-libstdc++-33-3.2.3-72.el7......
  • LVM中对基于xfs的文件系统进行扩容
    Xfs是CentOS7的默认文件系统类型,而不同文件系统类型对应的创建、检查、调整命令不同。在xfs文件系统中,只能增大分区而不能减小。[root@localhost~]#ls/lib//modules/3.10.0-229.20.1.el7.x86_64/kernel/fs#查看内核所支持的所有文件系统类型binfmt_misc.kocephdlm......
  • 在Python中创建相关系数矩阵的6种方法
    相关系数矩阵(Correlationmatrix)是数据分析的基本工具。它们让我们了解不同的变量是如何相互关联的。在Python中,有很多个方法可以计算相关系数矩阵,今天我们来对这些方法进行一个总结PandasPandas的DataFrame对象可以使用corr方法直接创建相关矩阵。由于数据科学领域的大多数人都......