Linux/Win10双系统,在linux环境下修改windows分区中的文件是否会引起潜在问题
背景:单块SSD 分区装的win10, linux ubuntu16.04。在linux 文件系统下可以读取到win10的硬盘,以/media/path 的形式挂载。
问题:想问下在linux ubuntu下直接访问win10的文件/做出修改并保存/删除是否会对win10 运行时有影响?
产生这个问题的原因:
- 编码。 linux 的编码采用UTF-8,对于行终止符采用"\n",而windows下使用的编码方式是"\r\n"。之前在windows 下打开了一个linux 下生成的bin文件并自动转码,传回linux 下就无法使用了。所以对两边文件的修改互访的可行性有疑问。
- 日志系统。 在linux下,文件系统提供可靠性(一致性)是通过日志系统实现的,在每次文件进行修改前由日志系统写入操作后再进行。那么我通过跨文件系统写入的信息应该是无法通过log保存下来的,那如果在windows是如何处理这种文件在reboot前后的不一致性呢?是否会导致潜在的问题发生?
希望有对这个了解的朋友能从系统日志/文件编码的角度分析一下。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
非文本文件不存在编码的问题,你说的那个问题是你把它作为文本文件打开了吧。就算是文本文件,如果你选择的保存编码和原来的一致,也不会有任何问题。
至于
\n
和\r
的问题,在二进制文件中,这两个都不一定是字符,就是单纯地表示0x0A
和0x0D
这两个数据吧。你作为文本文件打开它还给转换了,不出问题才怪。而且像Win10自带的记事本现在都支持Linux格式的换行符了,你的文本编辑器如果不是你设置过就擅自给你转换了,那我建议你还是换一个文本编辑器吧。
至于文件系统的互操作,只要遵守规范(虽说NTFS微软没有完全开放),并不会存在你在一个系统下操作会导致另一个系统的不一致。不过由于NTFS没有完全开放,Linux下操作确实会有一些小坑,注意下就是了。