OSに依存しないファイルシステムの選択

みなさんこんにちは。 最近、オペレーティングシステム間でファイル共有を整理する方法について考えました。 Linux、Windows、およびhackintoshの3つの主要なスズメバチをラップトップに一度にインストールするとします。 各OSはそのタスクを対象としています。Linux-仕事とプログラミング、Windows-ゲームとハック-さまざまな実験用です。



私はLinuxに関するトレーニングビデオを作成しているので、作業する方が便利です。 しかし、「最終カットアウト」に取り付けてみてください。 時間の磁気テープのアイデアが本当に好きでした。







そのため、タスクは次のとおりです。システムドライブにパーティションが必要であり、リストされたすべてのOSによる読み取りと書き込みがサポートされているファイルシステムが必要です。 このセクションには、インターネットおよび相互運用プロジェクトからダウンロードしたファイルが保存されます。



以前、このタスクはどのように解決されましたか? 以前は、LinuxでWindowsのみを使用していたため、Apple OSとの交換タスクはありませんでした。 もちろん、私はLinux用のオープンでネイティブのfs-ext4を使用したいと考えました。 しかし、Windowsでは簡単にマウントできません。 無料の(ただし独自仕様の)Windows用Paragon ExtFSをインストールする必要があります。 それでうまくいきましたが、残念ながらこのソフトウェアはLinuxパーティションにダメージを与えます。 私は数回遭遇し、それを使用したいという欲求はなくなりました。



しかし、LinuxでのWindows FSは問題なく読み書きできます。 ntfs-3gドライバーをインストールするだけです。 彼はユーザー空間で働いています。 ファイルシステムはプロプライエタリですが、ソリューションは機能します。



hackintoshも使用したいので、この問題を解決するためにntfsを除く他のオプションがあるかどうかを調べたいと思います。



実際、いくつかのオプションがあります。 ファイルシステムとは何か、どれが多かれ少なかれ普遍的かを見てみましょう。



Fat32-よく知られている古代のfsは、移植性の点では最も普遍的ですが、制限の点では最も悲惨です。 かなり前に開発されたもので、4 GBを超えるファイルはサポートしていません。 専有。 私のタスクには適していません。



Ntfs -Windowsのネイティブfs、所有権。 Linuxは、上で書いたように、サードパーティのドライバー(ntfs-3g)を使用してサポートしています。 適切なソフトウェアを追加できますが、Macはネイティブに認識しません。 有料と無料の両方のオプションがあります。 私はそれらのどれも好きではありません。 ntfs-3gはユーザー空間で(低速で)動作しますが、有料のソリューションは有料です。



Hfs +は、これまでに作成された最悪のfsの1つです。 ケシ本来ですが、普遍的ではありません。 Linuxにマウントできますが、Windowsの場合は有料のソリューションがあります-飛行中です。



Ext4 -Linuxネイティブの正しいfsの1つ。 しかし、非ネイティブのスズメバチにマウントするという点で-これも問題です。 hackintoshおよびWindowsの有料ソリューションについては、再びお金を要求します。 ext2fsdなどの無料のソリューションもありますが、このドライバーはext4に書き込むことができません。 飛行中。



Udfは正しいfsの1つであり、すべてのスズメバチによってネイティブにサポートされています。 このfsは、アップル用ではない場合に最適なオプションです。 当初、udfは光メディア用に作成されましたが、通常のハードディスクドライブで安全に使用できます。 しかし! Yablokoがこのセクションのこのfsのサポートを認識していなかったため、全体のアイデアはキャンセルされました。 最新のMac OS Xでも、ブロックデバイス全体にパーティションテーブルがない場合にのみ、このfsがサポートされます。 githubには、特別な方法でメディアを準備できるformat-udfスクリプトがあります 。mbrは初期データブロックに書き込まれ、セクションはmbr自体のあるところから始まることを示します。 すなわち ドライブは、パーティションテーブルと同時に(Windowsが認識するもの)、パーティションテーブルがないように見えます。 この方法は、メディアが外部になることを前提としていますが、内部ドライブに交換セクションを作成する必要があります。 したがって、このオプションも飛行中です。



exFat-所有権。ただし、Windowsとポピーの両方でネイティブに機能します。 これはとてもいいです。 Linuxはどうですか?



簡単な歴史:
このfsはAndroidのsdカードに使用され、Linuxカーネルがあります。 製造業者は、Linuxカーネル用のexfatドライバーを実装し、誰にも見せませんでした。 しかし、インターネット上の誰かがコードをgithubに漏らしました。 これは盗難であることは明らかであり、この形式ではコードがカーネルに侵入できませんでした。 ただし、このコードでは、コミュニティはgplコードの一部を見つけました。もちろん、すべてのソースコードの開示が必要です。 それはすでにサムスンによるコミュニティからの窃盗でした。 しばらくして、サムスンはこのコードをgplライセンスでリリースしました。



問題は、なぜこのドライバーがすぐにサポートされないのかということです。 コアにないためです。 メインラインでのこのコードのマージ(gplにもかかわらず)は、本質的に(特許のため)小さなコードからのトロイの木馬です。 トーバルズはこれを理解しており、もちろんコアは毒しません。



Linuxでは、exfat-fuseドライバーを使用するか、exfat-nofuseを使用してexfatをマウントできます。 もちろん、nofuseの方が高速です。 ただし、カーネルが更新されるたびに収集する必要があります。 幸いなことに、このタスクを自動化するdkmsメカニズムがあります。



まとめると



exfatで停止します。 はい、所有者ですが、何もできません。 しかし、すべてがネイティブに機能し、「タンバリンとのダンス」はありません。3つのオペレーティングシステムすべてで、ネイティブサポートとパーティションにこのfsを配置する機能があります。 4 GBの制限はありません。 そして一般的に、このソリューションは非常に簡単です。



あなた自身のために何か新しいことを学び、あなたのニーズに基づいて適切なオプションを選択してください。



関連記事:



UdfとFat32の比較

exFatファイルシステムの履歴

ArchLinuxにexfat-nofuseをインストールする

ウィキペディア上のファイルシステムの比較



All Articles