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

86

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

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

Приставка
источник

Ответы:

46

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

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

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

Алекс
источник
24
Предупреждение: не все операции поддерживаются драйвером ntfs-3g. en.wikipedia.org/wiki/NTFS#Linux "Из-за сложности внутренних структур NTFS как встроенный драйвер ядра 2.6.14, так и драйверы FUSE запрещают вносить изменения в том, которые считаются небезопасными, во избежание повреждения." Мне посчастливилось испытать это: мой диск NTFS однажды завис в середине работы. Я наконец отключил его и снова подключил, и с тех пор ntfs-3g не трогал его. Наконец мне пришлось подключить диск NTFS к коробке с Windows и загрузить, а затем снова подключить его к коробке с Linux, чтобы он заработал.
Нагуль
3
Что ж, если вы считаете, что формат ntfs был полностью переработан, он все еще довольно стабилен. Конечно, у него, вероятно, еще будет несколько причуд. Вы потеряли какие-либо данные?
Алекс
3
Нет, к счастью, потери данных не было. Меня просто раздражало, что я не могу заставить работать диск, не подключив его сначала к хосту Windows. Я надеялся, что смогу хотя бы принудительно смонтировать диск. С тех пор я вернулся к использованию fat32, когда мне нужна кроссплатформенная совместимость, поскольку я считаю, что ограничение в 4 ГБ более приемлемо. Но это только я. Я согласен с частью стабильности, хотя; Я никогда не боялся повреждения данных при использовании ntfs-3g.
Нагуль
4
Кроме того, NTFS в значительной степени не поддерживается или едва стабильна за пределами больших 3. Например, OpenBSD имеет почти стабильную поддержку только для чтения, но только запись очень нестабильна. Я уверен, что есть другие ОС с такой же проблемой, потому что это проприетарная FS
Earlz 28.12.12
1
@nagul, Откуда ты знаешь, что у тебя нет потери данных?
Pacerier
41

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

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

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

Marco
источник
3
Кажется, это лучший метод для меня. Он работает на Windows, Linux и Mac просто отлично.
Вортико
Для лучшей совместимости убедитесь, что вы используете правильные параметры форматирования, прочитайте эту ветку
MarcH
Кажется, что Linux поддерживает только запись UDF до версии 2.05: git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/fs/… :(
Джерри
@ Джерри Это работает здесь без проблем: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
Марко
@ Марко Я думаю, что он имел в виду UDF версии 2.05, а не Linux
osvein
16

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

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

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

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

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

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

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

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

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

lajuette
источник
7
exFAT на самом деле не доступен в системах Linux.
Полемон
4
На самом деле кажется, что exFAT имеет поддержку чтения / записи в Linux . Вы просто не можете создавать тома exFAT. Однако я не знаю, насколько хороша поддержка. По крайней мере, его разработчики говорят, что он все еще находится в бета-версии .
7

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

Будет
источник
4

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

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

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

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

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

Полемон
источник
1
UDF теперь работает (Windows 7). См. Serverfault.com/questions/55089/…
MarcH
1

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

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

jimmont
источник
0

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

Адарш Шривастава
источник
2
Об этом уже упоминалось в 2011 году по адресу superuser.com/questions/45130/cross-platform-file-system/… , с более подробной информацией.
Арджан,
-3

Если честно, такой файловой системы не существует. 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/

Махеш
источник