你通常不会看见服务器文件系统出现许多问题,不过偶尔会出错并造成损害。在本文中,TechTarget中国的特约专家Sander van Vugt将教你如何访问受损害的ext3文件系统。 如果你收到一个文件系统错误,将会丢失文件系统访问权限。不过如果是ext2或ext3文件系统,有办法解决。
高级启动选项将帮助你允许访问你认为可能丢失的数据。 要获取访问,你需要超级快(superblock)。这是一个1KB的块,包含关于文件系统的所有元数据,这些数据是启动文件系统所需要的。通常作为第二个1KB块存储在ext3文件系统上。
要显示超级快的内容,能使用debugfs工具。图1显示超级快的样子: F……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
你通常不会看见服务器文件系统出现许多问题,不过偶尔会出错并造成损害。在本文中,TechTarget中国的特约专家Sander van Vugt将教你如何访问受损害的ext3文件系统。
如果你收到一个文件系统错误,将会丢失文件系统访问权限。不过如果是ext2或ext3文件系统,有办法解决。高级启动选项将帮助你允许访问你认为可能丢失的数据。
要获取访问,你需要超级快(superblock)。这是一个1KB的块,包含关于文件系统的所有元数据,这些数据是启动文件系统所需要的。通常作为第二个1KB块存储在ext3文件系统上。要显示超级快的内容,能使用debugfs工具。图1显示超级快的样子:
Filesystem volume name: <none>
Last mounted on: <not available>
Filesystem UUID: 09979101-96e0-4533-a7f3-0a2db9b07a03
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr
filetype needs_recovery sparse_super large_file
Default mount options: (none)
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 5248992
Block count: 10486428
Reserved block count: 524321
Free blocks: 3888202
Free inodes: 4825214
First block: 0
Block size: 4096
Fragment size: 4096
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 16352
Inode blocks per group: 511
由于某些错误,如果文件系统出现问题,超级快就不可访问。例如,如果一个机械错误发生在服务器的硬盘上,就不能访问超级快。幸好,默认下在ext3文件系统上有一些超级快的备份。使用这些备份,仍然能启动文件系统。
第一个超级快备份在磁盘上的位置取决于文件系统的大小。在现代大型文件系统上,能在块32768上找到备份。在小型文件系统,能在块8192上找到。要启动任何备份超级快,可以使用启动选项-o sb。
不过,这个命令的问题在于它期望你在1024字节块里指定超级快的位置,然而现在ext3卷或分区的默认块大小是4096字节。因此,要告诉启动命令在何处找到超级快,你必须把超级快的位置乘以四。这意味着如果第一个备份超级快存储在block 32768,你应该输入块值141072。例如,如果你的/dev/sda5文件系统出现问题,你应该使用命令mount -o sb=141072 /dev/sda5/somewhere启动。
由于你已经启动了有问题的文件系统,就该修复问题。有简单和不简单的方式。我们看看比较难的解决方案,使用dd工具复制备份超级快到旧有超级快的位置。使用代码d if=/dev/sda5 of=/dev/sda5 bs=1024 skip=141072 count=1 seek=1。完成后,你的文件系统就能像以前那样正常访问了。
如果你不喜欢复杂的恢复丢失超级快的方式,可以使用简单的方法。只需要输入代码fsck /dev/sda5,就可以恢复受损的超级快。
翻译
相关推荐
-
改良Chkdsk如何提升Windows Server 2012数据可用性?
chkdsk让人讨厌是它要花费大量时间执行,卷上文件越多花的时间越长。它会独占对磁盘的访问渠道,所以用户需要等待几小时甚至几天才能访问他们的数据。
-
新老大比拼 Ubuntu 12.10文件系统性能有多好?
Ubuntu 12.10文件系统性能有多好?本文介绍基于Linux 3.5 kernel下的EXT4、XFS和Btrfs文件系统性能测试对比。
-
全面掌握Ext4文件系统新特性
在Linux文件系统的历史中,Ext4可以说是一次革命。很多方面来看,Ext4相对于Ext3的进步要远超过Ext3相对于Ext2的进步。
-
如何决定何时启用Linux文件系统barrier功能?
大多数当前流行的Linux文件系统,包括EXT3和EXT4,都将文件系统barrier作为一个增强的安全特性。它保护数据不被写入日记。它们在怎样的情况下有用呢?