如何写入到Linux中的Windows分区?

【51CTO.com快译】如果你双引导Windows和Linux,可能已注意到从Linux挂载NTFS分区时,有时无法写入该分区。你可以读取其中的任何内容,却无法删除文件、对文件改名、修改文件或编写新的文件和目录。

为什么无法从Linux写入到Windows分区?

之所以出现这种情况,是由于分区以只读模式挂载。挂载Windows分区时,一些文件管理器会显示通知对话框,对此发出警告。另一些文件管理器只字未提,你根本无法在NTFS文件系统上执行任何写入操作。

你可能会问:“但为什么分区以只读模式挂载?”这是由于一项名为“快速启动”(Fast Startup)的功能。长话短说,关闭计算机时,Windows将一部分随机存取存储器(RAM)保存到磁盘。下次启动时,它将该部分内容重新加载到内存中。

这样快得多,因为它几乎是简单的复制操作,从磁盘复制到内存。相反,在正常引导时,必须从磁盘读取文件,然后CPU必须处理大量数据以完成初始化工作。如果听起来很抽象,不妨这么想:“正常引导”时,就像从头开始准备食物,然后将其放入烤箱。“快速引导”时,就像从冰箱取出已经准备好的食物、重新加热。

这是一项安全功能

回顾一下,Windows关闭时,它使核心操作系统数据休眠进入到磁盘。系统在休眠后引导时,它恢复、启动得更快。由于休眠冻结了一些内存数据和操作系统状态,并将其保存到磁盘,因此改动该磁盘上的任何数据都是有风险的。

设想一个程序正在执行某操作。它有几个打开的文件,部分内容写入到这些文件。系统关闭时,程序代码保存到磁盘,以便以后可以恢复。如果你修改程序的文件,应用程序恢复运行时,它找不到正在处理的数据,因此它会崩溃,或完全丧失所有进度,这种情况可能很难恢复。

如何使NTFS分区可以从Linux写入?

有两种解决方法,各有其缺点。如果你很少需要从Linux写入到Windows分区上,尝试下一节中提到的内容。

引导进入到Windows,并重启而不是关机

是的,这有点不方便,但这也是解决你问题的最快方法,不需要像其他解决方法那样长期更改任何内容。

1.如果你目前在使用Linux,请重启。

2.引导进入到Windows。

3.点击开始菜单,选择重启而不是关闭。

4.最后,重新引导进入到Linux,你应该能够以读取/写入模式挂载Windows NTFS分区。

Windows重启时,不会在下次启动时使用“快速启动”功能。这意味着它不会进入休眠状态、获取系统运行状态的快照或将任何内存数据保存到磁盘。分区上没有休眠数据,这意味着可以安全地写入到分区上,Linux会识别出这一点。

万一出现混淆,你不必每次都完成所有四个步骤。只要上次你引导进入的是重启而不是关闭的Windows,Linux就能写入到NTFS分区上。

禁用快速启动

如果你常常需要从Linux写入到Windows分区上,这很有用。缺点是微软的操作系统需要更长的引导时间。

要禁用快速启动,鼠标右击开始菜单,然后鼠标左击“电源选项”。

查找“额外的电源设置”,然后点击文本。如果窗口太小,你可以在窗口右侧找到它,或者向下滚动才能找到它。

接下来,点击“选择电源按钮的功能”。

然后点击“更改当前不可用的设置”。

不要选择“开启快速启动”,然后点击窗口右下方的“保存更改”按钮。

结论

这些是安全的方法。如果你愿意冒险,这个Linux命令在过去适用。(不过它在现代Windows版本中不适用。)将“/dev/sda4”换成你NTFS分区的正确的设备名称。如果你不知道设备名称,可以按照本教程(https://www.maketecheasier.com/lsblk-list-storage-information-linux/)来查找。

sudo mount -o remove_hiberfile /dev/sda4 /mnt

记住,你可能会搞砸Windows的下一次引导过程,因此只有在你搞得定可能要修复Windows问题这种风险的前提下尝试。如果这对你管用,你会在“/mnt”目录中找到Windows分区的内容。

原文标题:How to Write to Windows Partition In Linux,作者:Alexandru Andrei

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20191010A06ODF00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券