跨多个文件系统和操作系统的文件会发生什么

时间:2014-01-11 17:58:02

标签: filesystems

如何将Linux中的ext3分区上的文件(例如,具有不同的元数据)转移到Windows NTFS并且我们仍然可以正确打开和读取它?

你不是必须以某种方式转换它以使其兼容吗?

据我所知,两个FS的元数据不同,但这些不同的元数据会发生什么?

2 个答案:

答案 0 :(得分:2)

文件系统实际上是一个用于访问其背后数据的抽象用户界面。它的工作方式与您通过网页访问数据库的方式相同。

您可以使用文件实用程序访问此界面,该文件实用程序可创建,列出,复制,移动和删除文件以及更改元数据。你需要一些NTFS工具,ext3工具等等(这不是他们将出现的。)

执行转移的程序(例如,nautilus)有几个方面需要处理:

- 如何处理长名称和非标准字符,如空格,非ASCII(通常在这里复制失败,所以最好避免这种情况)

-endianess(存储字节的顺序)。从左到右读取0A0B0C0D与从右到左读取不一样。这两种方法都在使用,但问题很严重,因此工具通常可以处理它。

通过文件系统复制文件时(例如,在传输文件时,而不仅仅是通过像Samba这样的文件服务器访问它们),Linux权限会受到影响。收件人可以将其更改为他想要的任何内容,即root用户和所有用户。像FAT这样的文件系统根本不支持安全性,因此只要将文件复制到其中,安全信息就会丢失。 Linux操作系统可以应用一组标准权限(例如,使用umask,不允许任何文件可执行)。

答案 1 :(得分:-1)

如何复制文件:

  1. 打开旧文件阅读。
  2. 打开要写的新文件。
  3. 在文件之间读/写字节。
  4. 所涉及的文件系统并不重要。