Какую файловую систему типа Unix можно легко и безопасно смонтировать как на Mac, так и на Linux?

Какую файловую систему типа Unix можно легко и безопасно смонтировать как на Mac, так и на Linux?

Для USB-накопителя я ищу файловую систему (и/или параметры создания файловой системы), которая

  • может быть смонтирован без сторонних драйверов как на текущей версии OS X (>= 10.7.x), так и на последнем ядре Linux (например, стандартная Ubuntu 12.10)
  • с поддержкой записи
  • поддерживает максимально возможный объем семантики и метаданных Unix (символические ссылки, жесткие ссылки, временные метки, разрешения Unix, права собственности)

Осуществимо ли это? Похоже, что FAT — самый безопасный вариант с точки зрения совместимости, но, конечно, он не поддерживает разрешения Unix. NTFS, похоже, доступна только для чтения в OS X и не поддерживает разрешения Unix (и я бы побоялся конфликтов в двух интерпретациях NTFS, полученных путем обратного проектирования). Файловые системы Linux ext* работают только с дополнительными драйверами в OS X. Поддержка HFS+ в Linux, похоже, не совсем стабильна (или она полностью стабильна после отключения журналирования?) Поскольку Mac основан на BSD, я бы предположил, что какой-то вариант UFS должен работать на обеих платформах?

Пояснение:Я не собираюсь монтировать USB-накопитель одновременно на двух компьютерах (в любом случае это будет довольно сложно осуществить через USB-интерфейс, не так ли?)

решение1

Вы рассматривалиУДФ, как совместимый с POSIX и поддерживаемый почти всеми устройствами вокруг? Также есть много помощи вокруг, напримерИспользование UDF на USB-флешке.

В качестве альтернативы вы можете взглянуть наЗФС, так как существуют модули ядра с поддержкой RW для обоихОС Xи Линукс?

решение2

Если вы не используете тип файловой системы, предназначенный для доступа нескольких систем, ваши усилия приведут к разрушенной невосстанавливаемой файловой системе. Локально смонтированные файловые системы, такие как NTFS, ext[234] и т. п., ТРЕБУЮТ и ПРЕДПОЛАГАЮТ, что только одна система использует их (чтение ИЛИ запись). Основная причина в том, что локальный хост кэширует некоторые необходимые элементы, а ваша другая система не будет синхронизирована для получения этих изменений. Например, изменения в таблице распределения, очень важно, чтобы две системы не выделяли одни и те же блоки.

Единственными типами файловых систем, которые допускают совместный доступ, являются NFS и, возможно, CIFS, которые относятся к типу операций клиент/сервер.

Я уверен, что существуют и другие файловые системы, которые могли бы сделать то, о чем вы просите, но это не то, что вы обычно видите, и для проверки их работы потребуется довольно обширная настройка и тестирование.

решение3

Если вы считаете,УДФ, обратите внимание, что его немного сложно форматировать на Linux, и что Windows может быть очень сложно распознать диск, отформатированный в UDF. Mac, по-видимому, хорошо распознает UDF.

Лучше использовать весь диск как UDF, а не разбивать его на разделы. На самом деле, UDF не использует разделы. Используйте следующие команды, чтобы обнулить MBR, создать файловую систему UDF и смонтировать ее:

 dd if=/dev/zero of=/dev/sdx bs=512 count=1
 mkudffs --media-type=hd --blocksize=512 /dev/sdx
 mount -t udf -o bs=512 /dev/sde /media/udf

Видетьэтот вопросдля более подробной информации.

Связанный контент