Файловая система совместима со всеми операционными системами?


48

Я использую Linux и Mac OS X на регулярной основе, а иногда мне приходится использовать Windows. Мне нужно использовать флэш-диск на всех трех, и мне нужна файловая система, которая будет хорошо работать на всех из них. Ни одна из ext не работает на Mac или Windows, HFS + не работает на Windows (или хорошо на Linux), NTFS доступна только для чтения на Mac, а FAT отстой во всех ОС. Существует ли файловая система, которая будет работать достаточно хорошо во всех операционных системах? Я бы хотел, чтобы он работал без драйверов или дополнительных установок, чтобы его можно было использовать на любом компьютере.



@MarcoI'd like it to work without drivers or additional installations, so it can be used on any computer.
— tkbx

1
Если вам нужны файлы размером более 4 ГБ, есть только один вариант - UDF.
— Марко

@ Marco Я не вижу этого в GParted, как я могу создать раздел UDF?
— tkbx

1
С mkudffsиз пакета udftools.
— Марко

Ответы:


31

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

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

UDF может быть создан в Linux с помощью инструмента mkudffsиз пакета udftools.


Подождите, Vista и более поздние версии распознают UDF на флэш-памяти или на обычных жестких дисках? В прошлый раз, когда я попробовал, я думаю, что это была XP, думала, что это только для оптических носителей Это хорошие новости.
— Псуси

У меня нет окон для тестирования, но я бы предположил, что это работает для обоих. Если в ОС есть драйвер для чтения UDF, что может быть причиной, по которой вы не будете использовать его для определенной технологии хранилища данных? А что будет, если на обычном диске будет флешка? Ну, я думаю, в таком случае это работает просто иногда .
— Марко

1
Я предполагал то же самое, но в прошлый раз, когда я попробовал это, Microsoft тупо отказалась распознать это на жестком диске / флешке, хотя они могли на компакт-диске.
— psusi 27.12.12

1
@Marco Боюсь, что для Windows значение "иметь драйвер fs" => "будет работать на любом носителе" не гарантируется. Почему это другой вопрос, но я бы не принял это как должное. Это ожидало бы, что это будет работать для DVD-RAM для все же.
— Петер

6
С сентября 2006 года из-за CVE-2006-4145 ядро ​​отключило запись экстентов размером более 1 ГБ. Для записи файлов размером более 1 ГБ необходимо обновить драйвер UDF, чтобы записать больше экстентов для файла. Такого не было до настоящего времени (2015), поэтому в Linux UDF годами был еще хуже, чем FAT32.
— Зарт

15

Без проблем используйте FAT32. Нет другой совместимой возможности. Linux начиная с версии 2.6.xy больше не имеет проблем с NTFS, но Mac OS имеет ... Возможно, вы могли бы сделать больше разделов на вашей флешке, но это на самом деле не очень хорошее решение.

Другое решение: попытайтесь представить, что у вас есть 4 ГБ флэш-памяти. Разделите его на 2 раздела. 1) FAT32 с бесплатными портативными приложениями для доступа ко всем другим типам FS. 2) Универсальный раздел, который может быть любым - NTFS, ReiserFS (если вам нужна реальная безопасность и шифрование) или что угодно. Благодаря первому разделу вашей флэш-памяти вы можете легко читать / записывать из любой ОС, поскольку программы хранятся в разделе FAT32 вашей флэш-памяти.

Лучшее решение: забудьте о флешке. Используйте Dropbox или что-то через сеть. Это один из самых простых способов обмена файлами между компьютерами.

редактирование: Спасибо за исправление: позвольте мне написать один из комментариев: «Максимальный размер зависит от выбранного размера кластера. Ограничения на самом деле составляют от 2 ТБ до 16 ТБ для кластеров размером от 512 Б до 4 КБ для FAT32 (также упоминается в википедии). " Это верно, извините за мою ошибку.

Спасибо петер


1
Нет, это не правда. FAT32 ограничивает только максимальный размер файла 4 ГБ, но я видел разделы FAT32 размером более 200 ГБ. Таким образом, максимальный размер FAT32 составляет 512 ГБ на раздел. смотрите здесь: en.wikipedia.org/wiki/File_Allocation_Table
— Мирра

1
@Mirra, но мой жесткий диск на 640 ГБ пришел как FAT32 ...
— tkbx

3
@Mirra максимальный размер зависит от выбранного размера кластера. Ограничения на самом деле составляют от 2 ТБ до 16 ТБ для кластеров размером от 512 Б до 4 КБ для FAT32 (также упоминается в вики-странице).
— Петер

1
Любой на этом уровне навыка никогда не должен касаться ни одного ненадежного стороннего хранилища, такого как Dropbox. Просто используйте sshfs на вашем сервере, который должен работать из коробки, и покончите с этим. Да, есть много SSHFS-клиентов для Windows , предлагающих обычные возможности монтирования.
— Evi1M4chine

1
Да ты прав. Dropbox больше не является безопасным решением, так как мы знаем, что лучшим решением может быть, например, установка owncloud на ваш собственный сервер или использование клиента sshfs, как сказал Evi1m4chine.
— Мирра

11

Поскольку вы сократили его до файловых систем, поддерживаемых OS X и Windows из коробки, я боюсь, что наименее распространенным знаменателем является FAT32. exFAT может быть вариантом, если вы можете ослабить требование и согласиться с использованием FUSE - он обременен патентом и, следовательно, не собирается делать это до ядра до 2029 года или до тех пор, пока Microsoft не выдаст патент на безвозмездной основе, в зависимости от того, что произойдет раньше.


5
Теперь мне просто интересно, почему Apple и Microsoft не могут сойти со своей проприетарной лошади и поддержать внешность.
— tkbx

@tkbx Это означало бы больше работы для них (чтобы получить такой код с нуля до их стандартов), и, я думаю, не многие пользователи жалуются (и под "многими" я подразумеваю "крупных корпоративных пользователей, которые могут вызвать плохую рекламу") , Те, кто жалуются, обычно решают использовать какое-то решение с открытым исходным кодом в качестве надстройки (то есть у них нет требования, чтобы оно работало без какого-либо дополнительного программного обеспечения).
— Петер

8
Кроме того, будем надеяться, что в 2029 году не будет Windows.
— tkbx

5

Я бы предложил exFAT. Вот почему:

  • Он работает в RW везде (в отличие от NTFS, который поддерживается только для чтения в Mac OSX), он включен в Windows начиная с Windows XP и в Mac OSX начиная с Mac OS X 10.6 (Snow Leopard), и на самом деле все дистрибутивы GNU / Linux там включают пакеты для него в репозиториях по умолчанию.
    Даже устройства Android, устройства iOS (iPhone и iPad) и некоторые умные телевизоры поддерживают его с 2017 года.
  • Он не поддерживает права доступа и владение файлами (в отличие от ext2 / 3/4, NTFS и HFS +), и это хорошо, поскольку они могут сильно раздражать флэш-накопитель, который вы часто подключаете к нескольким различным компьютерам.
  • Он поддерживает большие диски и большие файловые системы без потери места и поддерживает файлы размером более 4 ГБ (в отличие от FAT32). Он поддерживает практически любые символы Юникода в именах файлов и каталогов (в отличие от FAT32
  • Это достаточно просто, чтобы быть быстрым (в отличие от NTFS) и надежным (в отличие от FAT32).
  • С картами SDXC exFAT стал стандартом для карт SD и micro SD с объемом памяти более 32 ГБ, поэтому можно ожидать его поддержки в большинстве последних камер, видеокамер, смартфонов и игровых приставок. Так что, даже если вы не думаете, что это нужно, возможно, у вас уже есть одно или несколько устройств, использующих его или готовых к нему.

К сожалению, патенты на exFAT не позволяют включать его в основное ядро ​​Linux, поэтому вам нужно вручную установить реализацию exFAT, чтобы добавить поддержку этого в вашу систему. В любом случае, как только вы установите его, система сможет монтировать или размонтировать его, используя обычные механизмы.

Большинство дистрибутивов предоставляют пакеты для установки реализации FUSE, которая работает нормально и без нареканий. Я использовал его для флэш-накопителей, SD-карт и внешних USB-дисков, и я доволен этим.

Я ожидаю, что файловая система FUSE будет медленнее, чем собственная, но чаще всего узким местом является аппаратное обеспечение, а не файловая система (часто сами флешки работают медленнее, чем драйверы файловой системы), поэтому для «нормального» использовать это не будет проблемой вообще.

Чтобы использовать EXFAT на Ubuntu и Debian вам просто нужно установить exfat-fuseи exfat-utilsпакеты:

sudo apt-get install exfat-fuse exfat-utils

1
Драйвер exfat для macos не такой полнофункциональный, как в windows, а на mac для диска часто устанавливается флаг загрязнения, в результате чего вам может понадобиться часами (на накопителях с несколькими ТБ) при следующем подключении это потому, что fsck_exfatдолжен закончить проверку. Драйвер Linux для exfat является пользовательским и часто приводит к высокой загрузке процессора. Существует драйвер exfat linux режима ядра, но он не является официальным и может содержать ошибки.
— ccpizza

Это правда, exfat является проприетарным (но в последнее время Microsoft, похоже, хочет решить эту проблему), и текущие реализации Linux и MacOS имеют ограничения, но, тем не менее, это все еще лучшая современная файловая система для взаимодействия.
— Герлос

1
Согласитесь, учитывая отсутствие лучшей альтернативы, exfat в настоящее время является наименьшим общим знаменателем и работает даже с устройствами Android (с помощью кабеля OTG вы можете подключить флэш-накопители и жесткие диски в формате exfat). В нем отсутствуют символические ссылки и поддержка разрешений, он не совместим с NFS, но в остальном подходит для хранения данных. На Mac это может быть проблематично, когда устанавливается грязный бит; Я описал обходной путь здесь: superuser.com/a/1491743/65975
— ccpizza
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.