解压缩来自Linux的NTFS卷上的文件

我最近在我的双启动笔记本电脑上做了一些愚蠢的事情,我压缩了整个卷,为Linux分区腾出空间。 出于某种原因,Windows让我压缩C:\ntldr 。 现在我需要将它解压缩,以便Windows启动。

以下是我的一些操作限制:

  • 我无法访问BIOS。
  • 我无法从CD / USB /软盘启动。 (我通过PXE安装了Linux)
  • 它没有networking访问。

是否有某种方法可以指定ntfs-3g驱动程序在安装卷时即使认为它应该(如果目录是压缩的)也不应该压缩文件?

或者,有没有办法使用ntfsprogs修改目录的属性?

好的,我想我已经解决了。 问题在于ntfs-3g驱动程序; 它试图太难预测用户想要什么。

我使用ntfs-3g驱动程序将音量挂载到/mnt/windows ,然后将ntldr文件复制出卷,从而解决了这个问题。

 # mount -t ntfs-3g /dev/sda1 /mnt/windows # cp -p /mnt/windows/ntldr ~/ntldr # mv /mnt/windows/ntldr{,.bak} # umount /mnt/windows 

然后,使用ntfsprogs的ntfscp ,我将文件重新复制回文件系统:

 # ntfscp -f /dev/sda1 ~/ntldr ntldr 

然后,当我做了一个ntfsinfo它不再有压缩属性存在。

你不能从外部驱动器启动,以便USB / CD修复…无法获得networking访问…嗯…我不知道任何可以彻底解决它从Linux的。 NTFS对读写以外的任何其他支持(甚至相对来说,直到最近才提供写支持都是狡猾的)很less,因为Linux社区的态度是NTFS适用于本地Windows。

我打算build议使用VMWare或VirtualBox在VM中启动Windows并授予其访问分区; 可以修复它,但是你说你没有networking访问权限来安装虚拟机pipe理程序。

如果你绝对需要这些数据,我唯一能build议的就是将驱动器物理地移除,并将其放入一个适配器,使其可以作为一个外部USB驱动器运行到运行Windows的机器上并解压缩,然后从那里运行修复。 否则,从备份恢复…

问题在于ntfs-3g驱动程序; 它试图太难预测用户想要什么。

据我所知,ntfs-3g做了用户想要的。 它压缩文件,因为用户设置压缩的目录。

问题实际上在于不遵循NTFS规范的ntfcp。

(我通过PXE安装了Linux)

它没有networking访问。

我很困惑,但确定..

在任何机器上安装linux的关键是

  1. 大多数机器都有某种forms的启动select
  2. 启动过程并不依赖于操作系统(这样你就可以启动Windows以外的东西)

考虑到所有的“正常”引导向量似乎并没有提供给你,我想说,在这一点上拉动驱动器,并将其附加到另一台机器上。


后续基于评论:

那么让我们回顾一下:

  1. 外部启动已经结束。 这可能会导致使用U盘,CD修复,实时启动CD等的任何机会。
  2. 移除硬盘是可能的,但是非常不可取
  3. 在某些情况下可以进行PXE引导

所以看起来像PXE(你用来启动和启动双启动的方法)将是你最简单的select。 你能找出你使用的PXE服务器的地址是什么吗? 如果是这样,你可能会安排一些黑客攻击……你需要一台可以作为PXE服务器的计算机和一个没有连接到任何其他networking的有线集线器。

  1. 设置您的PXE服务器环境
  2. configurationPXE服务器具有与BIOS预期的地址相同的地址
  3. 通过PXE启动笔记本电脑
  4. 提供您所select的环境的笔记本电脑

我不知道你是否可以用这种方式来生活启动Windows CD(我只做过旧式的DHCP / BOOTP / TFTP启动,而不是PXE),但是如果可以的话,你可以访问修复控制台,这将是你最好的select。 你的第二个select是将一个Linux Live-Boot CD放入笔记本电脑,然后尝试从那里修复它,尽pipe我怀疑你的成功有限。 作为最后的努力,您总是可以将数据迁移到另一台设备(现在笔记本电脑再次可用)。