Вибираємо файлову систему незалежну від ОС

Всім привіт. Нещодавно я задався питанням як організувати обмін файлами між операційними системами. Припустимо, я хочу встановити відразу три основні ос на своєму ноутбуці: лінукс, віндовз і Хакінтош. Кожна ос призначається для своїх завдань: Лінукс - для роботи і програмування, винда - для ігор і хак - просто для різних експериментів.
Оскільки я створюю навчальні відео ролики про Лінуксі, мені зручніше працювати саме на ньому. Але монтувати хочеться спробувати в «фінальному вирізі». Вже дуже мені сподобалася ідея магнітної стрічки часу.
Всім привіт
Так ось, завдання стоїть таке: потрібен розділ на системному накопичувачі, причому з такою файлової системою, яка підтримується на читання і запис усіма перерахованими операційками. На цьому розділі будуть зберігатися викачані з інтернету файли і меж-операційні проекти.

Як таке завдання вирішувалася мною раніше? Раніше я використовував тільки вінду з лінуксом, тому завдання обміну з apple os не виникало. Звичайно, хотілося використовувати відкриту і рідну ФС для Лінукса - ext4. Але на винде її змонтувати непросто. Потрібно встановлювати безкоштовний (але пропріетарний) Paragon ExtFS for Windows. І добре, якщо б це працювало, але на жаль дане ПО пошкоджує вам розділ з лінуксом. Напоровся пару раз, і будь-яке бажання користуватися цим по пропало.
А ось віндового ФС під лінуксом читається і пишеться без проблем. Потрібно всього лише встановити ntfs-3g драйвер. Він працює в юзерспейсе. Файлова система пропріетарна, але рішення працює.
Тепер же я хочу використовувати ще і Хакінтош, і хочеться розібратися які ще є варіанти для вирішення цього завдання, крім ntfs.
Насправді варіантів небагато. Давайте розберемося, які є файлові системи, і які з них є більш-менш універсальними.
Fat32 - всім відома давня ФС, є самою універсальною в плані переносимості, а й самій убогій в плані обмежень. Була розроблена давно, не підтримує файли розміром більше 4 Гб. Пропрієтарна. Для моїх завдань не підходить.
Ntfs - рідна ФС для вінди, пропріетарщіна. Лінукс, як я вже писав вище, її підтримує за допомогою стороннього драйвера (ntfs-3g). Мак нативної її не розуміє, хоча можна доустановити відповідне по. Є кілька варіантів, як платних, так і безкоштовних. Жоден з них мені не подобається. ntfs-3g працює в userspace (з повільною швидкістю), а платні рішення - платні.
Hfs + - одна з найгірших ФС, коли небудь створених. Рідна для мак ос, але анітрохи не універсальна. Можна примонтировать на Лінуксі, а для вінди знову ж є платні рішення - в прольоті.
Ext4 - одна з правильних ФС, рідна для лінукс. Але в плані монтування в нерідних ос - знову проблеми. За платні рішення для Хакінтоша і для вінди знову просять грошей. Є і безкоштовні рішення, наприклад ext2fsd, але цей драйвер не вміє писати в ext4. В прольоті.
Udf - одна з правильних ФС, підтримується нативної усіма ос. Ця ФС була б найкращим варіантом, якби не компанія apple. Спочатку udf створювалася для оптичних носіїв, але вона може бути спокійно використана на звичайному жорсткому магнітному диску. АЛЕ! Через те, що яблучники не реалізували підтримку цієї ФС з розділу, вся задумка скасовується. Навіть остання мак ос Х підтримує дану ФС тільки якщо все блоковий пристрій не має таблиці розділів. На гітхабе є скрипт format-udf , Який може підготувати носій спеціальним чином: в початковому блоці даних прописується mbr, говорить що розділ починається прямо там же де і сам mbr. Тобто накопичувач як би одночасно і з таблицею розділів (то що розуміє винда), і ніби як і без таблиці розділів. Цей спосіб передбачає що носій буде зовнішній, а мені потрібно зробити exchange розділ саме на внутрішньому накопичувачі. Так що даний варіант теж в прольоті.
exFat - пропріетарщіна, але нативної працює як в винде, так і в маці. Це дуже добре. А що в Лінуксі?
Коротенько історія:

Ця ФС використовувалася для sd карт на андроїда, а там у нас лінукс ядро. Виробники реалізували драйвер exfat для linux ядра і нікому його не показували. Але хтось в інтернеті злив на гітхаб їх код. Було зрозуміло, що це злодійство, і в такому вигляді код в ядро ​​потрапити не міг. Однак, в цьому коді співтовариство знайшло шматки gpl коду, що зрозуміло, вимагало розкриття всіх початкових кодів, тобто це було вже злодійство у спільноти з боку компанії samsung. Через деякий час сумісного випустили цей код під gpl ліцензією.


Питається, а чому тоді цей драйвер не підтримується з коробки? Тому що його немає в ядрі. Мердж цього коду (нехай і gpl-ного) в mainline - це по суті троян від дрібних (через патенти). Торвальдс це розуміє, і, ясна річ, ядро ​​не отруївся.
В Лінуксі монтувати exfat можна або за допомогою exfat-fuse драйвера, або за допомогою exfat-nofuse. Звичайно, краще nofuse, так як він буде працювати швидше. Але його доведеться збирати кожен раз при оновленні ядра. Благо, для автоматизації цього завдання є механізм dkms.
Підведемо підсумок
Я зупиняюся на exfat. Так, пропріетарщіна, але нічого не поробиш. Зате все нативної працює, і "танці з бубном" відсутні: у всіх трьох операційних системах є нативна підтримка і можливість поставити цю ФС саме на розділ. Обмеження в 4 Гб немає. І в цілому, це рішення досить просте.
Сподіваюся, ви дізналися щось нове для себе і виберіть відповідний варіант виходячи з ваших потреб.
Статті по темі:
Порівняння Udf і Fat32
Історія з файлової системою exFat
Установка exfat-nofuse на ArchLinux
Порівняння файлових систем на вікіпедії

Як таке завдання вирішувалася мною раніше?
А що в Лінуксі?
Питається, а чому тоді цей драйвер не підтримується з коробки?

Дополнительная информация

rss
Карта