为什么linux系统有时可以恢复windows无法恢复的数据?

今天的问答环节是由SuperUser提供的,SuperUser是Stack Exchange的一个分支,是一个由社区驱动的问答网站分组。...

为什么linux系统有时可以恢复windows无法恢复的数据? Why is it that you can use a Linux-based computer or Linux Live CD to recover data Windows could not?

今天的问答环节是由SuperUser提供的,SuperUser是Stack Exchange的一个分支,是一个由社区驱动的问答网站分组。

问题

超级用户读者Philip Allgaier想知道为什么他能够用Linux Live CD恢复数据,而该CD在Windows中被报告为不可恢复:

Background: Earlier this year I had a problem with a SSD drive that Windows would recognize anymore. But eventually a bootable Parted Magic 2012-10-10 did the trick. See this solved thread. One question stuck with me from that moment…

Question: I am aware that Linux is generally a bit more technical and raw, but can someone roughly outline why a Linux system (or in fact only that particular one, since Ubuntu did not do the trick) is capable of still accessing/communicating with a half-corrupted device when Windows isn’t?

  • 他们是否忽略了任何可能出现问题的潜在指标?
  • 有什么具体的原因吗?
  • 这种特殊的环境能够让SSD在有限的时间内做出响应,这只是运气吗?

当然,这可能是运气使然,但可能有更多的因素在起作用。让我们调查一下。

答案

超级用户贡献者Eike为他保存数据的能力提供了一些可能的解释,不仅仅是运气:

Usually this comes down to what, exactly, is being accessed and how, exactly, the device is failing. For instance, if the SSD in question is unable to retrieve, say, sector 5 and will start stalling as soon as anything reads sector 5, the difference may simply be due to what different systems automatically access once they recognize a new disk.

When Windows detects a new disk, it will read the partition table and automatically attempt to open any filesystems it knows how to read. If any of the structures/blocks being read during this “mounting”-process trigger your faulty SSD to go bye-bye, the difference with that specific linux distribution is simply that it may not automatically mount all the partiti*** in question, or may, when mounting, simply read a different subset of sectors (the implementation of NTFS in Linux is very different from the one in Windows — while the on-disk format is the same, it is up to the OS which structures it deems necessary to read. Windows may read secondary copies of the MFT, or it may start precaching some data and that could be the difference. Ubuntu is in a similar boat — it is not geared towards recovery out of the box, it will attempt to mount any filesystem it finds on newly discovered media, automatically. It is for this reason that specialized distributi*** geared towards recovery are a better bet, as they only do what you explicitly ask them to as opposed to doing things automatically.

Of course, you may simply have gotten lucky, too. I don’t know enough about the failure mode of the SSD to say.

Linux generally does not ignore indicators that something is wrong. It will receive the same SCSI errors from the SATA chipset as Windows will — if you look at the kernel log, on a faulty disk you will see lots of error messages. It depends on what programs are actuallly accessing the disk what will happen next. If it’s software geared towards recovery, it may try to reread the same sector a limited number of times, it may skip it, etc. Usually the best bet is to get an image of the drive with as many sectors read cleanly as possible, and then try to recover your data from that image (doing any ****ysis directly on the drive is a bad idea usually since its condition may worsen and just because you were able to read something once, that does not mean you will be able to read it again.)

另一位撰稿人Athonfere则提供了另一种观点:

A lot of it is the way the environment handles the file system, and the ACLs or the hard drive.

Windows is going to do everything it can on its own to obey its ACLs, and sectors marked as bad or empty. So NTFS or Fat partiti*** created and maintained in Windows as well as Windows MBRs will be handled by Windows as Windows marked it.

Also, if the drive is failing the more you use it the more likely it is to encounter a major problem and the environment will crash. Then how the OS handles that comes into play, Windows will BSOD or reboot, the windows boot process will throw MBR messages, missing file messages (NTDLR.dll is missing or corrupt) and stop, because these bad files are required.

When you use a live disk, you are not relying on any of this. A bad MBR is bypassed because you boot off of the disk. A bad sector that corrupted the NTDLR.dll is not needed. Everything is on the disk. You can then attempt a read. If it encounters a ‘blank’ sector or bad bit, that environment handles it however it was programmed to do. Ubuntu likely would rather maintain normal OS behaviors and continue on with what is most likely to be happening. The sector is blank, do something else. That sector is bad, stay away, do not read again do not write or it will cause problems.

A recovery platform however, is going to want to read all data. The file markers say the file should be on 0,5, 13…. if the filesystem reports 13 is missing, ignore the blank header and read the file anyway, or read the bad sector as best as it can and try to recover.

Also, Windows CAN do alot of this with third party applicati***, Recuva can find alot of these “missing” files, for one. But you don’t want to be in an environment that may write back to the disk and cause true permanent loss.

I did simplify this, and add some interpretation, but it should fill in some blanks for what you are asking.

 


有什么要补充的解释吗?在评论中发出声音。想从其他精通技术的Stack Exchange用户那里了解更多答案吗?在这里查看完整的讨论主题。

 

http://superuser.com/questi***/586666/why-can-linux-systems-time-recover-data-windows-cant-any-concrete-reas***

  • 发表于 2021-04-11 18:56
  • 阅读 ( 182 )
  • 分类:互联网

你可能感兴趣的文章

双引导操作系统的10个风险

考虑安装第二个操作系统,并想知道风险?在你的电脑上安装Windows和Linux可以让你两全其美。但这并不总是一帆风顺的。双重启动可能会导致问题,其中一些问题很难预见。 ...

  • 发布于 2021-03-11 01:07
  • 阅读 ( 391 )

SSD真的可以安全地删除您的数据吗?下面是方法

...数据的磁盘扇区被覆盖之前,文件数据仍然存在。这就是为什么文件恢复程序可以恢复文件。此外,这也是为什么一些文件恢复程序可以恢复部分文件的原因——包含旧数据的扇区没有被完全覆盖,留下一些完整的数据。 ...

  • 发布于 2021-03-11 19:03
  • 阅读 ( 375 )

如何在windows中恢复丢失的分区

...随着病毒的日益复杂,它们可以针对以前无法到达的操作系统的部分。其中一个例子是罗姆贝提克病毒在2015年。它攻击主引导记录(MBR),如果成功,则用空字节超保护分区数据。 ...

  • 发布于 2021-03-12 08:47
  • 阅读 ( 240 )

livecd的50个酷用法

...Ubuntu。如果您想试用这些程序,但又不想在硬盘上安装,为什么不从livecd上试用呢? ...

  • 发布于 2021-03-12 09:39
  • 阅读 ( 360 )

你的电脑有特殊用途吗?使用此linux操作系统

...起的。一条思路一旦走了,有时就再也回不来了。这就是为什么我更喜欢简约设计的桌面界面的很大一部分原因。更多的屏幕组件只会提供更多的思维方式。要调整的设置越多,就意味着需要更多的时间来修补句子结构和角色发...

  • 发布于 2021-03-12 12:25
  • 阅读 ( 169 )

分区表:错误的含义及避免方法

... 让我们看看分区表到底是什么,以及为什么在重新配置计算机驱动器时要小心。 ...

  • 发布于 2021-03-13 14:42
  • 阅读 ( 216 )

如何从无法启动的计算机备份数据

...indows时才有效,但是你的电脑仍然会启动。如果无法打开系统、在屏幕上看不到任何内容或驱动器已损坏,则无法使用此方法恢复任何数据。 ...

  • 发布于 2021-03-16 04:36
  • 阅读 ( 178 )

加密linux分区的4个理由

...,那么Linux磁盘加密怎么可能是个坏主意呢?让我们看看为什么要加密Linux硬盘,以及为什么您可能会寻找另一种方法。 ...

  • 发布于 2021-03-18 18:48
  • 阅读 ( 417 )

如何从windows双启动pc安全卸载ubuntu

... 还需要时不时地使用Linux吗?为什么不使用微软商店中的Windows subsystem for Linux软件在Windows内部安装Linux呢?或者,看看如何禁用UEFI安全引导来双引导任何系统。 ...

  • 发布于 2021-03-21 17:45
  • 阅读 ( 241 )

windows系统还原的5个最佳救援和恢复磁盘

...为你的家人和朋友玩的时候,它会派上用场。更好的是,为什么不把它们组合成一个方便的便携式ISO图像或USB闪存驱动器呢? ...

  • 发布于 2021-03-21 23:41
  • 阅读 ( 220 )