iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >ext2与ext3的区别
  • 790
分享到

ext2与ext3的区别

区别 2023-01-31 00:01:00 790人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

inux ext2/ext3文件系统使用索引节点来记录文件信息,作用像windows的文件分配表。索引节点是一个结构,它包含了一个文件的长度、创建及修改时间、权限、所属关系、磁盘中的位置等信息。一个文件系统维护了一个索引节点的数组,每个文件

inux ext2/ext3文件系统使用索引节点来记录文件信息,作用像windows的文件分配表。索引节点是一个结构,它包含了一个文件的长度、创建及修改时间、权限、所属关系、磁盘中的位置等信息。一个文件系统维护了一个索引节点的数组,每个文件或目录都与索引节点数组中的唯一一个元素对应。系统给每个索引节点分配了一个号码,也就是该节点在数组中的索引号,称为索引节点号。 linux文件系统将文件索引节点号和文件名同时保存在目录中。所以,目录只是将文件的名称和它的索引节点号结合在一起的一张表,目录中每一对文件名称和索引节点号称为一个连接。 对于一个文件来说有唯一的索引节点号与之对应,对于一个索引节点号,却可以有多个文件名与之对应。因此,在磁盘上的同一个文件可以通过不同的路径去访问它。
Linux缺省情况下使用的文件系统为Ext2,ext2文件系统的确高效稳定。但是,随着Linux系统在关键业务中的应用,Linux文件系统的弱点也渐渐显露出来了:其中系统缺省使用的ext2文件系统是非日志文件系统。这在关键行业的应用是一个致命的弱点。本文向各位介绍Linux下使用ext3日志文件系统应用。
Ext3文件系统是直接从Ext2文件系统发展而来,目前ext3文件系统已经非常稳定可靠。它完全兼容ext2文件系统。用户可以平滑地过渡到一个日志功能健全的文件系统中来。这实际上了也是ext3日志文件系统初始设计的初衷。
Ext3日志文件系统的特点
1、高可用性
系统使用了ext3文件系统后,即使在非正常关机后,系统也不需要检查文件系统。宕机发生后,恢复ext3文件系统的时间只要数十秒钟。
2、数据的完整性:
ext3文件系统能够极大地提高文件系统的完整性,避免了意外宕机对文件系统的破坏。在保证数据完整性方面,ext3文件系统有2种模式可供选择。其中之一就是“同时保持文件系统及数据的一致性”模式。采用这种方式,你永远不再会看到由于非正常关机而存储在磁盘上的垃圾文件。
3、文件系统的速度:
尽管使用ext3文件系统时,有时在存储数据时可能要多次写数据,但是,从总体上看来,ext3比ext2的性能还要好一些。这是因为ext3的日志功能对磁盘的驱动器读写头进行了优化。所以,文件系统的读写性能较之Ext2文件系统并来说,性能并没有降低。
4、数据转换
  由ext2文件系统转换成ext3文件系统非常容易,只要简单地键入两条命令即可完成整个转换过程,用户不用花时间备份、恢复、格式化分区等。用一个ext3文件系统提供的小工具tune2fs,它可以将ext2文件系统轻松转换为ext3日志文件系统。另外,ext3文件系统可以不经任何更改,而直接加载成为ext2文件系统。
5、多种日志模式
  Ext3有多种日志模式,一种工作模式是对所有的文件数据及metadata(定义文件系统中数据的数据,即数据的数据)进行日志记录(data=journal模式);另一种工作模式则是只对metadata记录日志,而不对数据进行日志记录,也即所谓data=ordered或者data=writeback模式。系统管理人员可以根据系统的实际工作要求,在系统的工作速度与文件数据的一致性之间作出选择。
实际使用Ext3文件系统
创建新的ext3文件系统,例如要把磁盘上的hda8分区格式化ext3文件系统,并将日志记录在/dev/hda1分区,那么操作过程如下:
[root@stationxx root]# mke2fs -j /dev/hda8
mke2fs 1.24a (02-Sep-2001)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
.. .. ..
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting infORMation: done
This filesystem will be automatically checked every 30 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
在创建新的文件系统时,可以看到,ext3文件系统执行自动检测的时间为180天或每第31次被mount时,实际上这个参数可以根据需要随意调节。
以下将新的文件系统mount到主分区/data目录下:
[root@stionxx root]# mount -t ext3 /dev/hda8 /data
说明:以上将已格式化为ext3文件系统的/dev/hda8分区加载到/data目录下。
ext3 基于ext2 的代码,它的磁盘格式和 ext2 的相同;这意味着,一个干净卸装的 ext3 文件系统可以作为 ext2 文件系统重新挂装。Ext3文件系统仍然能被加载成ext2文件系统来使用,你可以把一个文件系统在ext3和ext2自由切换。这时在ext2文件系统上的ext3日志文件仍然存在,只是ext2不能认出日志而已。
将ext2文件系统转换为ext3文件系统
将linux系统的文件系统由ext2转至ext3,有以下几处优点:第一系统的可用性增强了,第二数据集成度提高,第三启动速度提高了,第四ext2与ext3文件系统之间相互转换容易。
以转换文件系统为例,将ext2文件系统转换为ext3文件系统,命令如下:
[root@stationxx root]# tune2fs -j /dev/hda9
tune2fs 1.24a (02-Sep-2001)
Creating journal inode: done
This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
这样,原来的ext2文件系统就转换成了ext3文件系统。注意将ext2文件系统转换为ext3文件系统时,不必要将分区缷载下来转换。
转换完成后,不要忘记将/etc/fstab文件中所对应分区的文件系统由原来的ext2更改为ext3。
ext3日志的存放位置
可以将日志放置在另外一个存储设备上,例如存放到分区/dev/hda8。例如要在/dev/hda8上创建一个ext3文件系统,并将日志存放在外部设备/dev/hda2上,则运行以下命令:
[root @stationxx root]#mke2fs -J device=/dev/hda8 /dev/hda2
ext3文件系统修复
新的e2fsprogs中的e2fsck支持ext3文件系统。当一个ext3文件系统被破坏时,先卸载该设备,在用e2fsck修复:
[root @stationxx root] # umount /dev/hda8
[root @stationxx root] #e2fsck -fy /dev/hda8
总而言之,ext3日志文件系统是目前linux系统由ext2文件系统过度到日志文件系统最为简单的一种选择,实现方式也最为简洁。由于是直接从ext2文件系统发展而来,系统由ext2文件系统过渡到ext3日志文件系统升级过程平滑,可以最大限度地保证系统数据的安全性。目前linux系统要使用日志文件系统,最保险的方式就是选择ext3文件系统。

--结束END--

本文标题: ext2与ext3的区别

本文链接: https://www.lsjlt.com/news/182869.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • ext2与ext3的区别
    inux ext2/ext3文件系统使用索引节点来记录文件信息,作用像windows的文件分配表。索引节点是一个结构,它包含了一个文件的长度、创建及修改时间、权限、所属关系、磁盘中的位置等信息。一个文件系统维护了一个索引节点的数组,每个文件...
    99+
    2023-01-31
    区别
  • Windows下查看LINUX ext2/ext3格式的三种常用方法
    在Windows系统下查看Linux ext2/ext3格式的文件系统,有以下三种常用方法:1. 使用第三方软件:可以使用一些第三方...
    99+
    2023-08-30
    Windows
  • linux中ext4和ext3有哪些区别
    这篇文章主要讲解了“linux中ext4和ext3有哪些区别”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux中ext4和ext3有哪些区别”吧!区别:1、ext3有32000个子目录...
    99+
    2023-06-30
  • jdk与jre的区别
    对于java初学者来说,往往不懂区分jdk和jre的区别,实际上这两个东西差别很大的,有必要了解一下:简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit ...
    99+
    2023-06-03
  • vue与angular的区别
    vue与angular的区别有:angular的学习成本高、比较复杂,而vue本身提供的API相对简单、直观。在性能上,angular比vue要慢,因为angular依赖对数据做脏检查,所以Watcher越多越慢,而vue使用基于依赖追踪的...
    99+
    2024-04-02
  • python2与python3的区别
    说明:标注?????是暂时没遇到且看不懂的,做个标记。常见的区别有print,range,open,模块改名,input,整除/,异常 except A as B 为了不带入过多的累赘,Python 3.0在设计的时候没有考虑向下相容。过...
    99+
    2023-01-31
    区别
  • c++中=与==的区别
    c++ 中 = 与 == 的区别:= 为赋值运算符,用于变量赋值;== 为相等比较运算符,用于比较操作数是否相等。 C++ 中 = 与 == 的区别 在 C++ 中,= 和 == 是两...
    99+
    2024-04-26
    c++
  • shtml与html的区别
    SHTML(Server Side HTML)与HTML(Hypertext Markup Language)的区别主要在于它们的处...
    99+
    2023-09-09
    shtml
  • jsp与js与jquery的区别
    jsp与js与jquery的区别:1、js是javascript文件的文件后缀。2、jquery 是一个函数库,是基于javascript的。3、jsp是jsp网页文件的后缀。js是javascript文件的文件后缀,其实就像文本文档a.t...
    99+
    2024-04-02
  • py2与py3的区别
    Guido(Python之父,仁慈的独裁者)在设计 Python3 的过程中,受一篇文章 “Python warts” 的影响,决定不向后兼容,否则无法修复大多数缺陷。---摘录自《流畅的Python》 你可能从来没有听说过学 Java 的...
    99+
    2023-01-31
    区别
  • mvvm与jquery的区别
    随着前端开发技术的进步,MVVM框架和jQuery成为了开发者经常使用的工具。然而,这两种工具之间存在着很大的区别。本文将深入探讨MVVM框架和jQuery的区别和优缺点。MVVMMVVM是Model-View-ViewModel的缩写,是...
    99+
    2023-05-18
  • dns与dhcp的区别
    1、功能不同 DNS(域名系统):DNS的主要功能是进行域名解析,将用户输入的易于理解的域名转换为计算机能够识别的IP地址。 DHCP(动态主机配置协议):DHCP的主要功能是自动为网络中的设备分配IP地址。 2、工作方式...
    99+
    2023-10-29
    区别 dns dhcp
  • sort()与sorted()的区别
    1,sort(cmp = None ,key = None, reverse = False),没有返回值,函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。会修改list本身,不会返回新list。 cmp:可选参数,...
    99+
    2023-01-30
    区别 sort sorted
  • vue与react的区别
    vue与react的区别是:1.监听数据变化的实现原理不同;2.数据流的不同;3.组合不同功能的方式不同;4.框架本质不同;5.模板渲染方式的不同;6.渲染过程不同等。具体如下:监听数据变化的实现原理不同,vue是通过getter/sett...
    99+
    2024-04-02
  • extjs与nodejs的区别
    在前端开发和后端开发方面,ExtJS和Node.js各自有其重要的作用。前者是基于JavaScript的图形用户界面框架,用于构建富客户端Web应用程序,后者是一个基于事件驱动和非阻塞I/O模型的服务器端JS运行环境,适用于高效处理并发请求...
    99+
    2023-05-17
  • leaflet与vue2leaflet的区别
    一、作用不同 leaflet是一个开源的JavaScript库,用于在网页上创建交互式的地图。它提供了一系列的地图组件,如图层、标记、弹出窗口、控件等,可以让开发者轻松地定制和扩展地图功能。leaflet支持多种地图源,如OpenStree...
    99+
    2023-10-29
    区别 leaflet vue2leaflet
  • e.stopPropagation与e.cancelBubble的区别
    e.stopPropagation和e.cancelBubble都是阻止事件冒泡的方法,但是在不同的浏览器中使用的方式不同。1. e...
    99+
    2023-09-12
    区别
  • python中/与//的区别
    python中“/”表示为浮点数的除法,其返回结果为浮点数;而“//”表示的是整数除法,其返回结果为整数。实例:print("6 // 4 = " + str(6 // 4))print("6 / 4 =" + str(6 / 4))输出结...
    99+
    2024-04-02
  • masm32与masm的区别
    MASM32和MASM都是汇编语言开发工具,但是有一些区别。1. MASM32是一个完整的开发环境,包括了MASM汇编器、链接器、库...
    99+
    2023-09-17
    masm
  • Token与session的区别
    一、什么是token? 在计算机身份认证中是令牌(临时)的意思,在词法分析中是标记的意思。一般作为邀请、登录系 统使用。 Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成 一个Toke n便将此T...
    99+
    2023-09-22
    服务器 运维 spring mvc
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作