Кроссплатформенная файловая система

20394
Console

Я хотел бы, чтобы мои внешние диски были читаемыми и записываемыми из Linux, Mac OS X и Windows.

FAT32 работает, но ограничение размера файла 4 ГБ в наши дни является показательным. Есть ли альтернативы?

82

10 ответов на вопрос

46
alex

Как сказал Прорыв, используйте NTFS . Как в Mac OS, так и в Linux вы можете использовать NTFS-3G, чтобы включить чтение / запись в раздел NTFS.

На OS X, NTFS-3G также может быть установлен через Homebrew бесплатно для brew install ntfs-3g. Вам также нужен Fuse для OS X, но это все.

Эти проекты бесплатны, открыты и зрелы. Я использовал эту настройку на Mac, и у меня не было проблем с доступом к данным из раздела NTFS.

Предупреждение: не все операции поддерживаются драйвером ntfs-3g. http://en.wikipedia.org/wiki/NTFS#Linux "Из-за сложности внутренних структур NTFS как встроенный драйвер ядра 2.6.14, так и драйверы FUSE запрещают изменения тома, которые считаются небезопасными, для избежать коррупции ". Мне посчастливилось испытать это: мой NTFS-диск однажды завис в середине работы. Я наконец отключил его и снова подключил, и с тех пор ntfs-3g не трогал его. Наконец мне пришлось подключить диск NTFS к коробке с Windows и загрузить, а затем снова подключить его к коробке с Linux, чтобы он заработал. nagul 14 лет назад 23
Что ж, если вы считаете, что формат ntfs был полностью переработан, он все еще довольно стабилен. Конечно, у этого, вероятно, все еще будет несколько причуд. Вы потеряли какие-либо данные? alex 14 лет назад 3
Нет, к счастью, потери данных не было. Это просто раздражало меня, что я не мог заставить диск работать * без * сначала подключения его к хосту Windows. Я надеялся, что смогу хотя бы принудительно смонтировать диск. С тех пор я вернулся к использованию fat32, когда мне нужна кроссплатформенная совместимость, поскольку я считаю, что ограничение в 4 ГБ более приемлемо. Но это только я. Я согласен с частью стабильности, хотя; Я никогда не боялся повреждения данных при использовании ntfs-3g. nagul 14 лет назад 3
Кроме того, NTFS в значительной степени не поддерживается или едва стабильна за пределами большой 3. Например, OpenBSD имеет почти стабильную поддержку только для чтения, но только запись очень нестабильна. Я уверен, что есть другие ОС с такой же проблемой, потому что это проприетарная ФС Earlz 11 лет назад 4
@nagul, Откуда ты знаешь, что у тебя нет потери данных? Pacerier 9 лет назад 1
Также учтите, что ntfs-3g имеет ужасную производительность, учитывая, что он работает над `fuse`. Avio 8 лет назад 0
@ Авио мой ответ сейчас 6 лет. Я не уверен, насколько это актуально. alex 8 лет назад 0
Я бы, вероятно, обновил этот ответ, чтобы упомянуть exFAT, который теперь довольно хорошо поддерживается на всех основных ОС. slhck 6 лет назад 1
39
Marco

UDF является кандидатом. Он работает "из коробки" на linux> = 2.6.31, Windows> = Vista, MacOS> = 9 и на многих BSD.

Примечание: UDF выпускается в разных версиях, которые не одинаково поддерживаются на всех платформах, см. Википедия - Совместимость .

Смежный вопрос: Использование UDF на флешке

Кажется, это лучший метод для меня. Он работает на Windows, Linux и Mac просто отлично. Vortico 11 лет назад 3
Для лучшей совместимости убедитесь, что вы используете правильные параметры форматирования, прочитайте эту ветку: http://serverfault.com/questions/55089/with-what-tool-should-i-format-a-hard-drive-as-udf MarcH 10 лет назад 0
Кажется, что Linux поддерживает только запись UDF до версии 2.05: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/fs/udf/udf_sb.h?id=v3 .13 # n11 :( Gerry 8 лет назад 0
@ Джерри Работает здесь без проблем: `truncate -s 100M udf.img && mkudffs udf.img && mount udf.img / mnt && echo foo> / mnt / foo && umount / mnt && uname -r → 3.16.0-4 -amd64` Marco 8 лет назад 0
@ Марко Я думаю, он имел в виду UDF версии 2.05, а не Linux osvein 7 лет назад 0
Похоже, UDF для оптических носителей. Это работает для жестких дисков и SSD? Calmarius 7 лет назад 0
@ Калмариус Да, это так. Используйте ревизию 2.01, если вы хотите писать в Linux. Matt 7 лет назад 0
Согласно Google, UDF доступен только для чтения для Chromebook: https://support.google.com/chromebook/answer/183093?hl=ru. Jim Hunziker 6 лет назад 0
16
EmmEff

Простой ответ - нет. В этих ОС не существует наименьшего общего знаменателя, кроме FAT32.

Под наименьшим общим знаменателем я подразумеваю встроенные файловые системы. Для дополнений, вы по своему усмотрению.

Это не так сложно найти альтернативы :) alex 14 лет назад 1
Если кто-то хочет подключить диск к произвольному вычислению, ранее не настроенному, возможны ли альтернативы, это спорный вопрос. EmmEff 14 лет назад 11
UDF является наименьшим общим знаменателем. За исключением встроенных систем, все современные операционные системы ПК имеют встроенную поддержку UDF phuclv 10 лет назад 4
UDF не работает для Chromebook. Смотрите здесь: https://support.google.com/chromebook/answer/183093?hl=ru. Jim Hunziker 6 лет назад 0
9
Breakthrough

Ну, у вас есть два решения. Многие дистрибутивы Linux содержат инструменты для чтения и записи на диски NTFS ...

Альтернативой будет использование Ext2. Существует утилита Windows, которая интегрирует файловую систему с операционной системой Windows. Я думаю, что это было бы вашим идеальным решением:

Он устанавливает драйвер файловой системы в чистом режиме ядра Ext2fs.sys, который фактически расширяет операционную систему Windows, включая файловую систему Ext2. Поскольку он выполняется на том же программном уровне в ядре операционной системы Windows NT, что и все собственные драйверы файловой системы Windows (например, NTFS, FASTFAT или CDFS для компакт-дисков Joliet / ISO), все приложения могут иметь прямой доступ к Объемы Ext2. Тома Ext2 получают буквы дисков (например, O :). Файлы и каталоги тома Ext2 появляются в диалоговых окнах файлов всех приложений. Для работы с ними не нужно копировать файлы с томов Ext2 или на них.

Допустимые решения, если кто-то может и хочет установить эти сторонние инструменты на целевые машины. EmmEff 14 лет назад 4
Это было бы хорошим решением, если бы OSX изначально поддерживала Ext2. Но использование Ext2, AFAIK, будет означать, что вам нужно установить драйвер для Windows и Fuse на OSX. Rolf 6 лет назад 0
8
lajuette

попробуйте exFAT, который становится доступным для все большего количества ОС. Согласно связанной статье в википедии (см. Источники), в разработке находится модуль ядра с открытым исходным кодом для linux. OS X поддерживает его с 10.6.5, Windows поддерживает с Vista. Есть обновления для более старых операционных систем Microsoft.

exFAT поддерживает большие файлы.

exFAT на самом деле не доступен в системах Linux. polemon 12 лет назад 7
На самом деле кажется, что [exFAT имеет поддержку чтения / записи в Linux] (http://apcmag.com/how-to-enable-exfat-in-ubuntu.htm). Вы просто не можете создавать тома exFAT. Однако я не знаю, насколько хороша поддержка. По крайней мере [его разработчики говорят, что он все еще находится в бета-версии] (http://code.google.com/p/exfat). 11 лет назад 3
7
Will

Подключите ваши внешние диски к серверу с NFS и Samba.

4
polemon

FAT32 - это то, что вы можете быть уверены в работе практически в любом месте.

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

Когда-то UDF предназначался для кроссплатформенной и кросс-медиа файловой системы, но об этом вроде забыли. Существует опция форматирования UDF для жестких дисков, которая вполне подходит для съемных носителей, но, как я понял, поддержка в Windows минимальна, если вообще поддерживается. Я не знаю, поддерживает ли Windows 7 диски UDF, кроме дисков BluRay.

Я решил использовать NTFS для своих внешних дисков, которые необходимо подключить к компьютерам Windows, а также компьютерам Linux. Для моих съемных дисков, которые в основном, если не только используются на компьютерах Linux, я использую XFS.

Та же проблема относится и к шифрованию: я использую LUKS в Linux, который имеет некоторую поддержку в Windows. TrueCrypt не может быть интегрирован в системы Linux слишком хорошо, по сравнению с LUKS, поэтому я остановился на этом.

UDF теперь работает (Windows 7). См. Http://serverfault.com/questions/55089/with-what-tool-should-i-format-a-hard-drive-as-udf MarcH 12 лет назад 1
http://superuser.com/questions/39942/using-udf-on-a-usb-flash-drive MarcH 11 лет назад 1
1
jimmont

Если ваши кроссплатформенные требования не включают Windows, я понимаю, что ZFS - лучший вариант для популярных современных операционных систем, широко используемых на конец 2017 года. См. Реализацию OpenZFS, которая включает поддержку OSX / macOS, Linux, FreeBSD: https: //en.wikipedia.org/wiki/OpenZFS http://www.open-zfs.org/wiki/Main_Page

Должно быть возможно использовать Windows через виртуальную машину (или другой ресурс), но мои потребности удовлетворяются без Windows.

0
Adarsh Srivastava

Я бы предложил использовать exFatфайловую систему, потому что я отформатировал раздел жесткого диска объемом 120 ГБ, exFatи он отлично работает с macOS, Linux и Windows.

Это уже упоминалось в 2011 году, https://superuser.com/questions/45130/cross-platform-file-system/253677#253677, с более подробной информацией. Arjan 6 лет назад 2
-3
Mahesh

Если честно, такой файловой системы не существует. NTFS является режимом чтения / записи для Linux / Mac, но не рекомендуется для установки Linux. На самом деле я не видел, чтобы кто-нибудь устанавливал Linux на NTFS. Linux обычно устанавливается на файловые системы ext2 / ext3. FAT32 может работать прямо сейчас, но будущие выпуски Windows, как с Windows 7, не будут работать.

Вы можете читать / писать в разделах Linux, работая в Windows, используя некоторые из упомянутых здесь программ / драйверов.

http://www.helpfolder.com/2009/08/27/how-to-access-linux-partitions-from-windows/