专栏首页悠风的采坑日记解决 Linux 挂载 NTFS 分区只读不能写的问题

解决 Linux 挂载 NTFS 分区只读不能写的问题

最近一直在忙(忙着偷懒),好久没更新公众号推文了,今天登上公众号后台,乍一看,居然突然多了这么多粉丝~~

今天给大家分享一个刚刚踩到的坑!!

有没有小伙伴也是跟我一样电脑上同时装有 Windows 和 Linux 双系统的呢?对于用不起苹果电脑但是又无法抛弃 Windows 精彩生活的我们这些穷程序猿来说,能够同时解决生活和工作需要的办法,无非就是安装双系统或者使用虚拟机这两种方式。但是对于还不太熟悉 Linux 的小伙伴来说,起初总是会踩到各种各样的坑。今天我在 Linux 上挂载 Windows 的 NTFS 分区时就遇到了一个坑,刚开始踩到这个坑时可头疼了,因为度娘竟然找不到有类似经历的小伙伴们提供的解决方案(我已经习惯了这种折磨了,总是会遇到别人一辈子都遇不到的坑),而 Google 我就不提了,国庆刚过哈哈哈~

我经历了什么?

我原先电脑只有 Windows 系统,有 C 盘和 D 盘两个分区,我的程序代码都放在 D 盘中。后来从 C 盘中抽出来一部分空间,格成了 EXT4 分区,用来安装 Linux,所以现在是有两个系统三个分区,程序仍然是放在原先的 D 盘。

平时的时候看看剧打打机啥的就进去 Windows,敲代码做项目的时候就进去 Linux。在 Linux 的时候,就直接挂载 NTFS 格式的那个 D 盘,因为我的代码都在那个盘里。这样看起来似乎很完美,D 盘已经成为了 Windows 和 Linux 进行数据共享的一个渠道。

然而,今天在改一个代码时,却发生了意外。首先进入到项目目录后,然后通过 Laravel (一个 PHP 后端框架)的 artisan 命令启动了 web 服务器,这看起来好像一切正常。

但是,当我打开浏览器访问这个网站时,却出现了报错页面,一看提示,说是日志目录无权限,即网站没办法写入日志记录。

这就很奇怪了,之前一直都是正常的啊,也没改过权限啊。为了确认,我还特意看了那个目录的权限,确实是 777 (可读可写可执行),用户和组都没错,这可是最高权限啊。

这可困扰了我很久,问题到底出在哪里?难道是整个分区盘有问题?于是我马上查看了整个分区的权限,创建和删除文件,也就是说整个分区对于我这个用户来说都是可读可写的。

空气突然变得有趣起来了~

为了验证这可读可写的权限,我尝试着在里面创建了一个文件,呵呵~果然,失败了!再试试删除文件,哈哈~不出所料,也失败了!

不是可读可写吗,怎么现在只能读却不能写呢?

问题到底出在哪儿?

百思不得其姐,啊不,百思不得其解啊。于是乎,我决定试试手动挂载试试(之前是偷懒,设置了开机自动挂载这个分区的),哦豁,好像发现问题了哦!

这段报错信息的意思是说,我上次在使用 Windows 系统时,没有正常关机,而且直接休眠的,D 盘中还存有一些 Windows 的缓存信息,而 Linux 认为这样的分区是不安全的,所以限制了写入的权限,只有读权限。

那么问题来了,休眠到底是怎么回事?

首先得清楚,休眠≠睡眠。在电脑关机选项中,除了关机、重启和睡眠外,还有一个功能就是休眠,不过其实很多人并不知道有休眠这东西,因为一般情况下 Windows 是不会显示休眠按钮的,你需要手动在设置里打开休眠功能。睡眠相信大家都知道,就是关闭显示屏,并且让系统进入锁屏状态,实质上相当于省电模式,电脑还是在运行中的。而休眠呢,是把你当前的工作状态保存下来(即把内存的所以数据保存到硬盘中),然后帮您关机(注意是断电了的,不是省电模式哦),等你下一次开机时,系统会重新加载你上次的数据,并且将桌面恢复到你按下休眠按钮前的那一个状态。

我是特别喜欢休眠的这个功能的,一般没什么特殊情况我是不会点关机按钮的,我都是点休眠按钮的,因为有时候我们工作的时候打开了很多窗口很多软件,尤其是一些专业性的软件,打开一次都要花上几十秒时间甚至几分钟时间,然后还要重新打开文件,重新定位到上次停下来的那个地方,这不仅浪费时间,会容易让我们思路混乱。而休眠的话,不用电脑时就保存状态,下次用电脑时又恢复到之前的界面,思路也自然能跟上来,这很大程度上提高了工作效率。

既然休眠的功能这么强大,并且优势这么多,那么为什么 Windows 在开机选项中默认不显示休眠呢,还要我们手动打开这个选项。今天踩到的这个坑就给出了最好的解释。因为如果休眠的话,磁盘中的文件可能还没有保存,或者没有关闭,万一下次电脑崩了无法开机了,或者遇到像今天这样的在双系统的另一个系统中又打开这个文件进行编辑时,就会造成文件数据错乱和数据丢失。这个风险是非常大的。所以如果你像我一样喜欢使用休眠功能,请记住,随手养成按 Ctrl+S 的好习惯,这样即使下次无法开机或者在别的系统中打开文件,也不至于导致数据丢失。

问题完美解决

到这里,问题出现的原因已经很明确了,解决办法也是很简单,重启电脑并回到 Windows 系统,将正在工作中的文件保存,然后关闭所有软件,然后正常关机。这时候再回到 Linux 中重新挂载这个 D 盘时,就不会出现只读不能写的情况了。

说到这里,我得唠嗑几句。这次遇到的坑,其实算不上什么坑,并且我们得承认 Linux 的这个数据保护措施做的很到位,如果我在 Windows 中将电脑休眠了而在 Linux 中还能正常读写的话,那个后果是可想而知的。有时候你遇到的坑,并不是有过坑,而是你操作不当的后果,所以跳坑最好的办法就是努力提高自己的技术和见识。

本文分享自微信公众号 - 悠风的采坑日记(yowfung),作者:小悠风

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-10-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 笔记 | Linux 服务基本介绍

    悠风
  • 笔记 | Linux 归档和压缩命令

    悠风
  • 笔记 | Linux 用户与用户组

    悠风
  • 超过1万台Linux服务器感染了恶意程序

    杀毒软件公司Eset的研究人员披露了一个正在进行中的恶意程序攻击,被取名为Operation Windigo(PDF) 的恶意攻击感染了超过1万台L...

    安恒信息
  • 学不好Linux?我们分析看看正确的学习方法是什么-马哥教育

    2018年里,Linux运维的职位数量和平均薪资水平仍然持续了去年的强劲增幅,比很多开发岗位涨的都快。从研究机构的数据来看,Linux职位数量和工资水平涨幅均在...

    马哥教育
  • 初学者怎么快速掌握Linux运维?

    2018年里,Linux运维的职位数量和平均薪资水平仍然持续了去年的强劲增幅,比很多开发岗位涨的都快。从研究机构的数据来看,Linux职位数量和工资水平涨幅均...

    马哥教育
  • Linux服务简介-关闭不需要的Linux服务

    Linux服务(Linux services)对于每个应用Linux的用户来说都很重要。关闭不需要的服务,可以让Linux运行的更高效,但并不是所有的Linux...

    小小科
  • Linux SSH免登录配置 原

    ssh-copy-id -i ~/.ssh/id_rsa.pub dss@10.164.194.42

    用户2603479
  • 【Rust日报】 2019-09-07:Linux.Fe2O3: 一个Rust编写的“病毒”

    NLL指的是non-lexical lifetimes非词法生命周期,即新的借用检查规则和实现。NLL接受不安全代码,之前是使用警告和弃用通知的方式。现在这已经...

    MikeLoveRust
  • 微信小程序长按复制文本 selectable 属性

    德顺

扫码关注云+社区

领取腾讯云代金券