‘壹’ linux操作系统故障处理-ext4文件系统超级块“can't read superblock”损坏修复
前几天在广州参加植物病毒学会议,一边听会一边开着TeamViewer远程连接实验室装有linux系统的工作站跑程序干活。有一天下午发现TeamViewer显示服务器离线,原来是因为施工导致停电。Anyway, 不重要,发微信让小青儿给我重启服务器,结果发现重启不了,大概就是这个界面。
怎么着都进不去图形界面,简而言之,工作站重启不了了。索性不管了,好好听报告,心想回到福州再收拾工作站。回到福州第一件事就是坐下来重启工作站,发现无论怎么折腾都进不去系统。
虽然图形界面进不去,好在还能够在命令行下进行操作。当看到 /bioinfor ,这个存放目录的路径下啥都没有的时候,这可是我所有的数据啊!如果这个盘里的数据没了,各个合作者还不得把我手撕了。想到这里,冷汗差点下来了。
于是开始寻找解决方法。
首先得想办法进入系统,在反复地 sudo reboot 都无法进入系统之后,通过 df -h 也看不到/dev/sda(也就是挂载到/bioinfor路径的磁盘)信息。然后猜测是不是因为磁盘以及分区表之类出现了错误导致不能进入系统。通过 sudo vi /etc/fstab 将除了系统安装盘之外的所有硬盘的挂载信息全部注释掉,再 reboot , 这时候果然可以进入图形界面系统了。但依然看不到 /bioinfor 盘下的数据。能够开机就让我放心了很多。通过 gparted 工具,能够看到/dev/sda硬盘里used space大概是1.7T,还剩下1.9T左右,这就表示我的数据还在。试图通过 sudo umount /dev/sda 先取消挂载,再重新 sudo mount /dev/sda /bioinfor 挂载到/bioinfor路径,结果报错。
报错信息显示:
搜索网页发现,有一个哥们经历了跟我一样的遭遇, 意外断电造成mount挂载硬盘报错 。所以,这次事故是因为意外断电,基本实锤了。
但到底什么是superblock呢?
继续搜索,直到读到一篇技术文章 linux操作系统故障处理,ext4文件系统超级快损坏修复 。本文可以忽略,但这篇技术文章得认真读读。里面讲解了磁头,磁道,柱面,扇区,以及硬盘容量等等概念,以及最重要的inode和block,Superblock(超级块)概念。
既然报错提示Superblock出了问题,那我们就应该从这里入手。linux系统提供了一个磁盘命令 fsck 来尝试对设备进行修复。但可惜,用这个命令的时候,都会提醒你,应该安装最新的 fsck 工具包。
提示如下:
根据这篇文章 E2FSCK: how to handle the “metadata_csum” error by advancing the e2fsck version beyond default installed version 的提示,需要安装1.43X的 e2fsck , 安装方法小结如下。
检验一下是否更新成功:
能够看到已经更新到1.43.5版本。
安装完之后,开始对磁盘进行修复,命令如下:
一般都能修复完毕,然后可以再进行取消挂载或者重新挂载的操作。看到数据都还完好无缺地在电脑上,还处于后怕的我赶紧掏出移动硬盘进行原始数据的备份。
本次debug结束
这篇技术日志对读者可参考性并不高,是因为应用场合实在是少,(试想谁会天天断电呢),但还是有一些体会和感悟:
‘贰’ Linux文件系统的演变
说起文件系统的演变与发展,不得不从最早期的 Minix 操作系统开始说起。
Minix(MINI-UNIX) 是早期的一个迷你版本的 “类UNIX操作系统” ,由荷兰阿姆斯特丹自由大学计算机科学系的塔能鲍姆教授自行开发的可以与UNIX操作系统兼容的一个操作系统,因其小型,该操作系统被命名为 MINIX 。
MINIX 系统在设计之初,采用程序模块化的思想,将一众程序放在用户空间运行,而不是在操作系统的内核中运行。如 “文件系统” 和 “存储器管理” 等程序均是如此。
受 MINIX 操作系统的影响,早期的Linux操作系统也曾采用由塔能鲍姆教授开发的MINIX的文件系统。
然而,不只因为早期的 MINIX 操作系统并为真正意义上的开源软件(在保护着作的前提下进行收费),而且基于 MINIX 的内部使用16位的偏移量,使文件系统能够支持的最大空间只有64MB,支持的最大文件名为14字符,导致后来 Linux 操作系统转而开发出了 ext(Extended File System) 第一代可扩展文件系统。
ext(Extended File System) 为Linux系统最早的扩展文件系统,采用 “UNIX文件系统” 的元数据结构,克服了 “MINIX” 操作系统性能不佳的问题。
ext 文件系统采用 虚拟文件系统(VFS) ,最大可支持2GB的文件系统。与 MINIX 文件系统不同的是, ext 可以使用最高2GB的存储空间并同时处理255个字符的文件名。
但,在 ext 文件系统中,文件创建时生成的 inode 信息是不变的,这导致文件发生修改后 inode 中储存的文件时间戳并不会发生变化;而且 ext 并不会为文件妥善分配空间,磁盘上的多个文件四散分布,严重制约了文件系统的性能。
ext 文件系统推出后不久,其开发者便意识到 ext 文件系统中存在很大缺陷( inode不变性 和 文件空间碎片化 ),并在一年后推出了 ext2 (Second Extened File System) 第二代扩展文件系统,用来代替 ext 文件系统。
ext2 吸取了 “UNIX文件系统” 的众多优点,并且因其良好的可扩展性( 为系统在磁盘上存储的数据结构预留了很多空间提供给开发者使用 ),在20世纪90年代众多文件系统中脱颖而出。
众多新的特性, POSIX(可移植操作系统接口) 、 访问控制表 等都是在这一代扩展文件系统上实现的。直至今天, POSIX 仍被众多操作系统所沿用。
不仅如此, ext2 还在 ext 的基础上进行了完善,能够最大支持的单个文件达到 2TB。
ext2 文件系统与20世纪90年代的众多文件系统一样,将数据写入到磁盘的过程中如果发生系统奔溃或断电,极容易导致文件损坏或丢失。
正是因为类似 ext2 等同时期的一众文件系统,在遭遇系统奔溃或断电时会出现文件损坏或丢失。尽管 ext2 文件系统拥有开机后对文件系统中文件的一致性校验,但校验的过程极为耗时,且校验的过程中,操作系统上的任何卷组都是不可访问的。
然而 ext2 遗留的问题在 ext3(Third Extended File System) 中得到了解决。
ext3 文件系统采用日志记录的方式,记录下了操作系统运行中的所有事件,这意味着即便遇到操作系统非正常关机后也无须对文件系统进行校验,从而防止了文件系统中数据丢失的可能。
尽管 ext3 使用日志系统进行记录文件系统的变化,但这并没有影响 ext3 文件系统处理数据的速度。基于日志系统在磁盘上的优化,在 ext3 中数据的传输效率是高于 ext2 的,并且可以通过重新设置日志的级别来提升文件系统的性能。
其次, ext3 在设计之初就吸收了 ext2 的很多思想,这使得 ext2 文件系统迁移到 ext3 变得极为便利。事实上, ext3 可以在从 ext2 迁移 ext3 的过程中,无须进行文件系统资料的备份,且无须担心升级后的数据恢复问题。
也正是因为 ext3 设计之初沿用了众多 ext2 的功能,这使得 ext3 缺乏变通。例如, “inode的动态分配” 和 “可变块大小” 等问题并没有得到解决。不仅如此, ext3 文件系统在被挂载为写入时,无法对文件系统进行完整性校验。
第四代扩展文件系统( Fourth Extended File System, ext4 ) 是继 ext3 文件系统的后续版本,不仅支持 ext3 的日志文件体系 ,同样支持 大文件系统 ,不仅提高了文件系统对于存储碎片化的抵抗,而且改进了 inode固一化 的问题。
同时, ext4 文件系统在开发之初就考虑到很多问题,对众多问题的优化和改进也使得 ext4 拥有了众多新的特性。例如, 大文件系统 、 使用Extent文件存储的方式 、 预分配空间 、 延迟文件获取空间的时间 、 突破原有子目录限制 、 增加日志校验和 、 在线整理磁盘 、 文件系统快速检查 、 向下兼容其他ext文件系统`。
时至今天, ext4 文件系统已经成为Linux发行版默认使用的文件系统。
与 ext2 文件系统同一时期出现的,还有 xfs 文件系统。 xfs 文件系统是高性能的文件系统,最早在 IRIX 操作系统上开发,后期被移植到 Linux 操作系统上。现在所有的 Linux发行版 都支持 xfs 的使用。
相比 32位 Linux 的操作系统来说,64位 xfs 的文件系统能够支持的单个文件系统要远远超出 32位 操作系统。
xfs 对文件系统元数据提供了日志支持,当文件系统发生变化后,总是会保证源数据在数据块写入磁盘之前被写入日志中,磁盘中有一处缓冲区专门用来存放日志,从而不会影响正常的文件系统。
xfs 同样支持 “条带化分配” 。在条带化RAID阵列上创建 xfs 文件系统时,可以指定 条带化数据单元。通过配置条带化单元,使 数据分配、inode分配、日志等与RAID条带单元对齐,来提高文件系统的性能。
与 ext4 文件系统不同的是, xfs 文件系统还支持在线恢复。 xfs 文件系统提供了 xfsmp 和 xfsrestore 工具协助备份 xfs 文件系统中的数据。
以下为各文件系统的出现时间及特性:
参考自: https://zh.wikipedia.org/wiki/Ext4
‘叁’ linux使用的文件系统有
Linux下的文件系统主要有ext2、ext3、ext4等文件系统。Linux还支持UNIX文件系统,比如XFS、JFS、UFS等,也支持Windows的FAT文件系统和网络文件系统NFS等。主要讲一下Linux自带的ext2、ext3和ext4文件系统。
‘肆’ EXT4、EXT3、EXT2数据恢复图文教程 文件系统数据恢复方法
EXT4、EXT3、EXT2分区误格式化了或者误删除了重要文件该怎么办?本文教你如何使用DiskGenius软件在Windows下轻松实现EXT4、EXT3、EXT2数据恢复。想要恢复丢失的EXT4、EXT3、EXT2分区请参阅:搜索已丢失分区(重建分区表)
EXT4、EXT3、EXT2磁盘丢失了数据怎么办?
EXT4、EXT3、EXT2是Linux系统下使用的文件系统,EXT4文件系统在EXT3的基础之上做了很多改进,引入了大量新功能。目前大部分Linux发行版例如Ubuntu都默认采用EXT4文件系统。作为Linux用户,平时如果没有备份数据的习惯,同样会遇到数据丢失问题。和Windows用户一样,EXT4磁盘上的数据也会因各种原因丢失,例如,误删除、格式化、重装系统、分区损坏打不开、分区丢失、计算机病毒、磁盘坏道等。那么EXT4格式的磁盘丢失了数据还能恢复吗?
不论是什么格式的文件系统,文件丢失后只要没有被覆盖就有希望恢复。EXT4格式的磁盘丢失数据后,也可以在Windows平台下进行恢复,不过,所使用的数据恢复工具需支持EXT4文件系统。接下来,我就介绍一下如何在Windows电脑上恢复EXT4 EXT4、EXT3、EXT2磁盘丢失的数据。
EXT4、EXT3、EXT2误删除、误格式化及分区损坏后数据恢复步骤
DiskGenius专业版支持EXT4、EXT3和EXT2文件系统的读写操作以及数据恢复。当遇到EXT4、EXT3和EXT2分区被误格式化、分区损坏打不开、文件被误删除、分区丢失等问题的时候,可以尝试使用该软件在Windows平台进行数据恢复。现在就和我一起学习一下如何恢复EXT4磁盘丢失的文件。
警告 :当文件被误删除或是分区被误格式化后,不要再对该磁盘激进行写操作。数据恢复的首要原则是防止丢失的数据被覆盖,所以应该立刻停止所有可能的写入操作。一旦数据被覆盖,任何方法都无法恢复了。
第一步:打开DiskGenius软件,选择需要恢复数据的EXT4分区,然后点击“恢复文件”按钮。当程序弹出恢复文件对话框后,点击“开始”按钮。
DiskGenius软件正在对EXT4分区进行深度扫描,扫描期间,找到的文件会在软件中实时显示出来。耐心等待扫描结束。
第二步:预览丢失的文件,检查所需要的文件是否正确。
在软件右侧双击某个文件,就可以打开文件预览窗口并查看文件内容。软件支持图片、视频、音频、Office文档、PDF文档以及文本文件的预览,帮助用户预判恢复效果。
第三步:将需要恢复的文件复制保存到其他分区或硬盘。
如果对扫描结果满意,就可以注册软件为专业版,然后将想要恢复的文件复制保存到其他分区或是硬盘,完成数据恢复任务。
从EXT4分区恢复数据常见问题
1. 影响数据恢复成功率的因素有哪些?
为了成功恢复丢失的文件,首先要做的就是防止数据覆盖。因此,在数据完全恢复之前,不要对丢失数据的存储设备进行写入操作;其次,就是要使用专业性强的数据恢复软件并且正确操作软件。遇到复杂的数据丢失问题,例如,服务器数据恢复、RAID数据恢复、BitLocker恢复等,在实际恢复之前可以向DiskGenius专家团队免费咨询数据恢复方案。
2. EXT4格式化后数据如何恢复?
EXT4分区格式化后,可以使用DiskGenius软件在Windows系统下执行数据恢复。该软件的“恢复文件”功能支持EXT4文件系统的格式化以及删除恢复。使用该功能扫描后,就可以预览文件,然后将需要恢复的文件复制保存到其他分区。
3. 在Windows下如何将NTFS文件系统该为EXT4?
EXT4是Linux系统下使用的文件系统,Windows操作系统不支持EXT4,所以,在资源管理器或是磁盘管理器中无法直接将NTFS分区格式化为EXT4。想要把NTFS改为EXT4,可以使用DiskGenius免费版来格式化,格式化的时候将文件系统设置为EXT4即可。
4. 在Windows下如何读取EXT4硬盘?
Windows操作系统不支持EXT4文件系统,所以EXT4格式的硬盘在Windows系统下是无法打开的。这时候可以借助DiskGenius软件来读取EXT4分区里的数据。并且,DiskGenius软件还支持对EXT4进行写入操作。
5. EXT4分区丢失了数据如何恢复?
EXT4分区丢失了不要着急,使用DiskGenius软件来搜索分区即可。将需要恢复分区的硬盘连接到一台运行Windows系统的电脑上,然后打开DiskGenius软件。使用软件的“搜索分区”功能来查找丢失的分区。丢失的分区被找到后,可以点击“保存更改”按钮,将分区保存到分区表。
总结
以上就是关于EXT4、EXT3、EXT2数据恢复的全部内容了。除了上述功能,DiskGenius还支持恢复丢失的EXT4、EXT3、EXT2分区、读写EXT4、EXT3、EXT2分区、调整大小、备份分区为镜像文件、克隆磁盘等。
‘伍’ Linux里面xfs和ext4哪个性能高
XFS的性能更高。
XFS的优势:
1、xfs是一种非常百优秀的日志文件度系统版,它是SGI公司设计的。xfs被称为业界最先进的、最具可升级性的文件系统技术。
2、xfs是一个64位文件系统,最大支持8EB减1字节的单个文件系统,实际部署时取决于宿主操作系统的最大块限制。对于一个32位Linux系统,文件和专文件系统的大小会被限制在16TB。
3、xfs在很多方面确实做的比ext4好,ext4受限制于磁盘结构和兼容权问题,可扩展性和scalability确实不如xfs,另外xfs经过很多年发展,各种锁的细化做的也比较好。
EXT4是第四代扩展文件系统(英语:Fourth EXtended filesystem,缩写为ext4)是Linux系统下的日志文件系统,是ext3文件系统的后继版本。
Ext4的文件系统容量达到1EB,而文件容量则达到16TB,这是一个非常大的数字了。对一般的台式机和服务器而言,这可能并不重要,但对于大型磁盘阵列的用户而言,这就非常重要了。EXT4和XFS的表现类似,不过从EXT2升级到EXT4比升级到XFS容易。
‘陆’ linux支持哪些文件系统
Ext、Ext4、ReiserFS文件系统。
1、Ext
Ext是 GNU/Linux 系统中标准的文件系统,其特点为存取文件的性能极好,对于中小型的文件更显示出优势,这主要得利于其簇快取层的优良设计。
其单一文件大小与文件系统本身的容量上限与文件系统本身的簇大小有关,在一般常见的 x86电脑系统中,簇最大为 4KB,则单一文件大小上限为 2048GB,而文件系统的容量上限为 16384GB。
2、Ext4
Linux kernel 自 2.6.28 开始正式支持新的文件系统 Ext4。Ext4 是 Ext3 的改进版,修改了 Ext3 中部分重要的数据结构,而不仅仅像 Ext3 对 Ext2 那样,只是增加了一个日志功能而已。
3、ReiserFS
是一种文件系统格式,作者是Hans Reiser及其团队Namesys,1997年7月23日他将ReiserFS文件系统在互联网上公布。Linux内核从2.4.1版本开始支持ReiserFS。
(6)linuxext4文件系统扩展阅读
文件系统的安全:
在Linux系统中,如果黑客取得超级权限,那么他在操作系统里面就不会再有任何的限制地做任何事情。在这种情况下,一个加固的文件系统将会是保护系统安全的最后一道防线。管理员可通过chattr命令锁定系统一些重要文件或目录。
文件权限检查与修改。如果操作系统当中的重要文件的权限设置不合理,则会对操作系统的安全性,产生最为直接的影响。所以,系统的运行维护人员需要及时的察觉到权限配置不合理的文件和目录,并及时修正,以防安全事件发生。
安全设定/tmp、/var/tmp、/dev/shm。在该操作系统当中,其用于存放临时文件的目录,主要有两个,分别为/tmp与/var/tmp。它们有个共同特点,就是所有的用户可读可写和执行,这样就对系统产生了安全隐患。针对这两个目录进行设置,不允许这两个目录下执行应用程序。
‘柒’ Linux里面文件系统有哪些
Linux系统是现在非常受欢迎的操作系统,在Linux之中,一切都是文件,因为有很多操作都是依靠文件系统才可以完成的,而且文件系统可以满足用户正常的使用,那么Linux中常见的文件系统有哪些?为大家介绍一下。
总体来说,在Linux之中,系统能够支持的文件系统要比Windows系统多很多,达到数十种,所以说Linux系统也是非常出色的操作系统。Linux中常见的文件系统介绍:
1、Ext3:是一款日志文件系统,能够在系统异常的情况下避免文件系统资料丢失,并且能够修复数据的不一致以及错误,同时,当硬盘容量较大的时候,所需要的修复时间也会增长,无法保证百分之百资料不会丢失,将整体磁盘的每个写入动作细节预先记录,避免发生异常的时候可追踪到被中断的部分,尝试修补。
2、Ext4:是上一个的改进版本,是RHEL
6系统中的默认文件管理系统,支持存储容量达到了1EB,同时还能够无限多的子目录,另外文件系统能够批量分配block块,从而极大地提高了读写效率。
3、XFS:是一个高性能的日志文件系统,而且是RHEL
7中默认的文件管理系统,优势就是在于发生意外可以快速回复可能被破坏的文件,强大的日志功能只需要花费较低的计算和存储性能,最大支持存储容量18EB,几乎满足多种需求。