Loading article…
次の表は、いくつかのファイル システムの一般情報と技術情報を比較したものです。
一般情報
メタデータ
特徴
ファイル機能
ブロック機能
下の表に加えて、ブロック機能は Linux ( LVM、 integritysetup、cryptsetup ) や Windows ( Volume Shadow Copy Service、SECURITY ) などのファイルシステム層の下に実装できることに注意してください。
サイズ変更機能
「オンライン」と「オフライン」は、「マウント済み」と「マウントされていない」と同義です。
割り当てとレイアウトのポリシー
OSサポート
制限
ストレージ デバイスのサイズは通常 10 の累乗で表されますが (たとえば、1 TB のソリッド ステート ドライブには少なくとも 1,000,000,000,000 (10 12、1000 4 ) バイトが含まれます)、ファイル システムの制限は常に 2 の累乗であるため、通常は IEC プレフィックスで表されます。たとえば、1 TiB の制限は 2 40、1024 4バイトを意味します。明確にするために、10 の累乗を使用した近似値 (切り捨て) も以下で示します。
参照
注記
- ^ IBM は 1990 年に AIXバージョン 3.1の最初のリリースで JFS を導入しました。このファイル システムは現在 JFS1 と呼ばれています。Linux ポートのベースとなった新しい JFS は、 1999 年にOS/2 Warp Server for e-Business で初めて出荷されました。同じソースベースが AIX 5L のリリース JFS2 でも使用されました。
- ^ Microsoft は、最初にMS-DOS 7.1 / Windows 95 OSR2 (OEM Service Release 2)で FAT32 を導入し、その後Windows 98でも導入しました。NT ベースの Windows は、Windows NT4 まで FAT32 をサポートしていませんでした。Windows 2000 は、FAT32 を扱えるようになった最初の NT ベースの Windows OS でした。
- ^ 後のバージョンでは拡張機能として実装されました
- ^ Linux などの一部の FAT 実装では、ファイル変更タイムスタンプ (mtime) がメタデータ変更タイムスタンプ (ctime) フィールドに表示されます。ただし、このタイムスタンプはファイル メタデータが変更されても更新されません。
- ^ 特定のインストール可能ファイル システムドライバーおよびオペレーティング システムは、 FAT12 および FAT16 の拡張属性をサポートしない場合があります。FAT12 および FAT16 用の OS/2 および Windows NT ファイル システム ドライバーは、拡張属性をサポートします ("EA DATA. SF" 疑似ファイルを使用して、割り当てられたクラスターを予約します)。他のオペレーティング システム用の他のファイル システム ドライバーは、拡張属性をサポートしません。
- ^ f -node にはユーザー識別子のフィールドが含まれています。ただし、これはOS/2 Warp Server以外では使用されません。
- ^ NTFSアクセス制御リストは、単純な POSIX ファイル権限 (およびそれ以上のもの) を使用して、可能なあらゆるアクセス ポリシーを表現できますが、 Services for UNIXやCygwinなどのアドオンがなければ、POSIX のようなインターフェイスの使用はサポートされません。
- ^ Vista以降、NTFSは必須ラベルをサポートしており、これは必須整合性制御を強制するために使用されます。[12]
- ^ 当初、ReFS は ADS をサポートしていませんでしたが、Server 2012 R2 以降では ReFS 上の ADS のサポートが追加されました。
- ^ abcd アクセス制御リストと MAC ラベルは、拡張属性の上に階層化されます。
- ^ 一部のオペレーティング システムでは、並列バッキング ファイルを使用してUFS1上のレイヤーとして拡張属性を実装しました(例: FreeBSD 4.x)。
- ^ abcdefghijklmn 一部のインストール可能ファイル システムドライバーおよびオペレーティング システムでは、これらのファイル システムの拡張属性、アクセス制御リスト、またはセキュリティ ラベルをサポートしていない場合があります。2.6.x より前の Linux カーネルでは、これらのサポートがまったく欠落しているか、パッチが必要になる可能性があります。
- ^ メタデータは主にチェックサムで保護されているが[13]、直接/間接/三重間接ブロックマップはチェックサムで保護されていない[14]。
- ^ 作成時間は 2015 年 6 月以降保存、xfsprogs バージョン 3.2.3
- ^ abcdef ローカル時間、タイムゾーン/ UTCオフセット、および日付は、NDS ツリー内の参照/単一のタイム同期ソースの時間設定から取得されます。
- ^ ab Novell はこの機能を「複数のデータ ストリーム」と呼んでいます。公開された仕様では、NWFS では 16 個の属性と 10 個のデータ ストリームが許可され、NSS ではその両方が無制限に許可されるとされています。
- ^ ab ディレクトリ サービスがインストールされているかどうかに関係なく、作成日時、ファイル サイズ、パージ ステータスなどの一部のファイルおよびディレクトリ メタデータは NetWare サーバーに保存されます。また、ファイル/オブジェクトのアクセス許可、所有権などの一部のファイルおよびディレクトリ メタデータはNDS/eDirectoryに保存されます。
- ^ レコード管理サービス (RMS) の属性には、レコードの種類やサイズなど、さまざまなものが含まれます。
- ^ 9Pのファイル パーミッションは、従来の Unix パーミッションに若干の変更を加えたものです。たとえば、suid ビットは新しい「排他的アクセス」ビットに置き換えられています。
- ^ FreeBSD および Linux 実装でサポートされていますが、すべてのオペレーティング システムでサポートされるわけではありません。
- ^ Solaris の「拡張属性」は、Solaris UFS と ZFS の両方において、実際には本格的な代替データ ストリームです。
- ^ アクセス時間は作成時の元のファイル システムから保持されますが、Rock Ridge ファイル システム自体は読み取り専用です。
- ^ libburnia は、ファイル システム作成および抽出プログラムを使用して ACL をバックアップおよび復元できますが、カーネル サポートは存在しません。
- ^ ab libburnia は、ファイルシステム作成および抽出プログラムを使用して拡張属性と MAC ラベルをバックアップおよび復元できますが、カーネルのサポートは存在しません。
- ^ System V Release 4 および他のいくつかのUnixシステムでは、元のバージョンではサポートされていなかったものの、バージョン 7 Unixファイル システムのバージョンへのシンボリック リンクが改良されました。
- ^ コンテキストベースのシンボリックリンクは GFS でサポートされていましたが、Linux VFS のバインドマウント機能によりコンテキストベースのシンボリックリンクが廃止されたため、GFS2 では標準のシンボリックリンクのみがサポートされています。
- ^ データのジャーナリング(オプション)
- ^ Windows Vista以降、NTFSはシンボリックリンクを完全にサポートしています。[15] NTFS 3.0(Windows 2000)以降ではジャンクションを作成できます。これにより、ディレクトリ全体(個々のファイルではない)を同じパーティション(ファイルシステム)のディレクトリツリー内の別の場所にマップできます。これらは再解析ポイントを通じて実装され、ファイル名解決の通常のプロセスを柔軟に拡張できます。
- ^ ab NTFS は、ファイル データも含めすべてをメタデータとして保存するため、そのログはブロック ジャーナリングに近くなります。
- ^ ab NTFS 自体は大文字と小文字の区別をサポートしていますが、Win32 環境サブシステムは互換性の理由から、名前が大文字と小文字のみ異なるファイルを作成することはできません。 ファイルを書き込み用に開くときに、大文字と小文字を区別せずに新しいファイルと一致する名前を持つ既存のファイルがある場合は、別の名前の新しいファイルを作成するのではなく、既存のファイルを切り捨てて書き込み用に開きます。 Win32 の上ではなくカーネルの上で直接動作するServices for Unixなどの他のサブシステムでは、大文字と小文字を区別できます。
- ^ メタデータのみのジャーナリングは、Mac OS X 10.2.2 HFS Plus ドライバで導入されました。ジャーナリングは、Mac OS X 10.3 以降ではデフォルトで有効になっています。
- ^ HFS Plus は大文字と小文字を区別すると考えられていることが多いが、通常はそうではない。通常のデフォルトのインストールでは、大文字と小文字は保持されるだけである。Mac OS X 10.3 以降では、newfs_hfs -sコマンドで大文字と小文字を区別する新しいファイルシステムを作成することができる。[17] HFS Plus バージョン 5 では、オプションで大文字と小文字の区別がサポートされている。ただし、大文字と小文字の区別は大文字と小文字を区別しないことと根本的に異なるため、既存の HFS Plus ユーティリティが大文字と小文字の区別を修正が必要なファイルシステムエラーと見なさないように、新しいシグネチャが必要であった。新しいシグネチャは「HX」であるため、これは単に HFS Plus のアップグレード版ではなく、新しいファイルシステムであるとよく考えられている。[18] [19]
- ^ Mac OS X Tiger (10.4) および Panther の最新バージョン (10.3) では、ファイル変更ログが提供されます (これは実際にはボリュームフォーマットの機能ではなく、ファイルシステムソフトウェアの機能です)。[20]
- ^ NetBSDの「ソフト依存関係」( softdep ) は、 FreeBSDでは「ソフトアップデート」と呼ばれ、二重書き込み (ジャーナリング)なしで常にメタデータの一貫性を提供します。
- ^ ジャーナルソフトアップデート(SU+J)はFreeBSD 9.x-RELEASE以降ではデフォルトとなっている[22] [23]
- ^ abcdef UDF、LFS、および NILFS はログ構造化ファイル システムであり、ファイル システム全体がジャーナルであるかのように動作します。
- ^ Linux カーネル バージョン 2.6.12 以降。
- ^ abc デフォルトではオフになっています。
- ^ ReiserFS のフルブロックジャーナリングが Linux 2.6.8 に追加されました。
- ^ IRIX および Linux ではオプションで no になります。
- ^ 特定のインストール可能ファイルシステムのドライバーとオペレーティングシステムは、JFS の大文字と小文字の区別をサポートしていない場合があります。OS/2 はサポートしておらず、Linux には大文字と小文字の区別を無効にするマウントオプションがあります。
- ^ abcd 大文字と小文字の区別/保持はクライアントによって異なります。Windows、DOS、および OS/2 クライアントは大文字と小文字の違いを認識しません/保持しませんが、NFS または AFP 経由でアクセスするクライアントは認識/保持する場合があります。
- ^ ab ファイル変更ログ、最終エントリ変更タイムスタンプ、およびその他のファイルシステムメタデータはすべて、NDS/eDirectoryに組み込まれたNSure Auditと呼ばれる広範な監査機能スイートの一部です。[26]
- ^ ab 「NFS」名前空間でのみ使用可能です。
- ^ ab これらは「エイリアス」と呼ばれます。
- ^ ab ZFS は、コピーオンライトセマンティクスを使用するトランザクションファイルシステムであり、従来のジャーナルを使用せずに常に一貫したディスク上の状態を保証します。ただし、同期書き込みが要求されたときにパフォーマンスを向上させるために、インテントログも実装しています。
- ^ Btrfs は、コピーオンライト セマンティクスを使用するトランザクション ファイルシステムであり、従来のジャーナルを使用せずに常に一貫したディスク上の状態を保証します。過去 5 回のトランザクションを追跡し、チェックサムを使用して問題のあるドライブを見つけるため、書き込み意図ログは不要になります。
- ^ Bcachefs は、コピーオンライト セマンティクスを使用するトランザクション ファイルシステムであり、従来のジャーナルを使用せずに常に一貫したディスク上の状態を保証します。ジャーナル コミットは、基礎となるデバイスに対して FLUSH および FUA 操作を発行する必要があるため、かなりコストのかかる操作です。デフォルトでは、ジャーナル フラッシュはファイルシステムの更新が行われてから 1 秒後に発行され、主に btree の更新が発生順に記録されます。このオプションは、個人のワークステーションやラップトップでは便利ですが、サーバーではあまり適していない可能性があります。
- ^ Windows 10 Enterprise Insider Preview ビルド 19536 以降
- ^ ab ファイル システムは、内部メタデータとデータの両方で、重大なエラー、障害、破損を除くすべてのエラー、障害、破損をオンラインで積極的に自律的に検出して修正できる場合、自己修復機能を持ちます。例として US7694191B1 を参照してください。これには通常、完全なチェックサムと内部冗長性、および対応するロジックが必要です。
- ^ ab Stacker 3/4およびDriveSpace 3の圧縮ボリューム内のみ[30]
- ^ Windows Server SKU でのみサポートされます。ただし、サーバー上で重複排除されたパーティションはクライアントで使用できます。
- ^ HFS+ は実際にはファイルを暗号化しません。FileVault を実装するために、 OS X は、ユーザーがログインするとホーム ディレクトリに自動的にマウントされる、暗号化されたスパース ディスク イメージ内に HFS+ ファイルシステムを作成します。
- ^ Reiser4 は、バージョン 4.1 のデフォルトのファイル ハンドラーであるcryptcompressプラグインを使用して、透過的な圧縮と暗号化をサポートします。
- ^ VxFS は、高度なファイル システム スナップショットを可能にする「ストレージ チェックポイント」と呼ばれるオプション機能を提供します。
- ^プロプライエタリなZFSリリース30とZFS On Linuxに適用されます。暗号化サポートは、まだすべての OpenZFSポートで利用できるわけではありません。 [37] [38] [39]
- ^ LZJB(パフォーマンスを最適化しながら、適切なデータ圧縮を提供する)LZ4(lzjbよりも高速で、比率が高い)gzipレベル:1(最速)から9(最良)、デフォルトは6 zstd正:1(最速)から19(最良)、デフォルトは3 zstd負:1(最良&デフォルト)-10、20、30、…、100、500、1000(最速)zle:ゼロの連続を圧縮します。[40]
- ^ 断片化を防ぐためにコピーオンライト(COW)を無効にすると、データのチェックサムも無効になります。
- ^ zlibレベル: 1から9、デフォルトは3 LZO (レベルなし) ZLIBより高速、比率は悪いzstdレベル: 1から15、デフォルトは3 (より高いレベルは利用できません) [41]
- ^ none
CRC-32C (デフォルト)
crc64
chacha20/poly1305 (暗号化が有効になっている場合。暗号化はファイルやディレクトリごとではなく、ファイルシステム全体に対してのみ指定できます) [42] - ^ none (デフォルト)
現在サポートされている3つのアルゴリズムはgzip、LZ4、zstdです。
圧縮レベルは、0から15までの整数でオプションで指定することもできます(例:lz4:15)。0はデフォルトの圧縮レベルを指定し、1は最も高速で最低の圧縮率を指定し、15は最も低速で最高の圧縮率を指定します。[43] - ^ * 3.7 : ファイルレベルのスナップショットを追加しました(Windows Server 2022でのみ利用可能)。[44]
- ^ ab ファイルごとの「整合性ストリーム」を使用することで、クラスタごとのチェックサムを内部的に保存します。クラスタごとのチェックサムにはアクセスできないため、これは実際にはファイルごとの機能であり、ブロックごとの機能ではありません。整合性ストリームはデフォルトでは有効になっていません。[45]
- ^ * 3.9 : LZ4およびZSTDによるポストプロセス圧縮と透過的な解凍を追加しました。
- ^ abc 一部のファイル システム作成実装では、ブロック参照を再利用し、この方法で重複排除をサポートします。これは標準ではサポートされていませんが、ファイル システムが読み取り専用であるため、通常は問題なく動作します。
- ^ abcd GNU Parted をベースにしたソフトウェアを使用。
- ^ ab 可変ブロック サイズとは、ファイルごとに異なるブロック サイズをサポートするシステムを指します。(これはエクステントに似ていますが、実装上の選択が若干異なります。) UFS2の現在の実装は読み取り専用です。
- ^ 「詰め込まれた」inodeのみ
- ^ abcd その他のブロック:フラグメント サイズ比もサポートされています。8:1 が一般的であり、ほとんどの実装で推奨されています。
- ^ abc フラグメントは計画されていましたが、ext2 および ext3 では実際には実装されませんでした。
- ^ ディスクに 1 つの最大エクステントを保存し、複数のエクステントを DRAM に動的にキャッシュします。
- ^ ab テールパッキングは技術的にはブロックサブ割り当ての特殊なケースであり、サブ割り当て単位のサイズは常に 1 バイトです。
- ^ 「extents」モードの場合。
- ^ ファイル テールの可能なサイズ (セクター単位) ごとに、対応するサブ割り当てブロック チェーンがあり、そのサイズのすべてのテールがそこに格納されます。サブ割り当てブロック チェーンの管理のオーバーヘッドは、通常、ブロック サイズを増やすことで節約されるブロック オーバーヘッドの量よりも小さくなりますが、空きディスク領域があまりない場合、プロセスの効率は悪くなります。
- ^ UDF の実装に依存します。
- ^ abc ISO 9660 レベル 3 のみ
- ^ EVMS のみサポートされます。現在 LVM ではサポートされていません。
- ^ abcd ユーザースペースから Plan 9で提供
- ^ ab FUSE ベースのドライバーが利用可能で、iSCSI ゲートウェイや SMB 共有の必要性を排除できますが、物理バックエンド ストア BlueStore は Linux でのみ実行されます。
- ^ iSCSI ゲートウェイや SMB 共有の必要性を排除できるファイルシステム ドライバー「Dokany」が利用可能ですが、物理バックエンド ストア BlueStore は Linux でのみ実行されます。
- ^ abcde これらは、ディスク上のディレクトリ エントリ構造自体によって課される制限です。特定のインストール可能ファイル システムドライバは、ファイル名とディレクトリ名に独自の制限を課すことがあります。また、オペレーティング システムも、すべてのファイル システムにわたって独自の制限を課すことがあります。DOS 、Windows、およびOS/2では、SFN で現在の 8 ビットOEM コードページから次の文字のみが許可されます: A ~ Z、0 ~ 9、文字 ! # $ % & ' ( ) - @ ^ _ ` { } ~、および 0x80 ~ 0xFF と 0x20 (スペース)。具体的には、小文字の a ~ z、文字 " * / : < > ? \ | + , . ; = [ ]、制御コード 0x00 ~ 0x1F、0x7F、場合によっては 0xE5 は使用できません。) LFN では、\ / : ? * " > < |および NUL は、すべてのファイルシステムでファイル名とディレクトリ名に使用できます。Unix系システムでは、すべてのファイルシステムでファイル名とディレクトリ名に / および NUL の文字は使用できません。
- ^ abcde 可変の割り当て単位 (ブロック/クラスター) サイズを持つファイルシステムの場合、ファイルシステムの最小および最大の割り当て単位サイズに対する最大ボリューム サイズを示すサイズの範囲が提供されます (例: FAT の場合、512 バイトと 128 KiB (131.0 KB )。これは、ディスク上のデータ構造によって許可されるクラスター サイズの範囲ですが、一部のインストール可能ファイルシステムドライバーとオペレーティング システムでは、32 KiB (32.76 KB )を超えるクラスター サイズをサポートしていません )。
- ^ abcdefghijklmnopqrstu vwxyz aa ab ac ad ae af ag ah ai aj ak al これらのファイルシステムでは、「.」および「..」という名前のディレクトリエントリは特別なステータスを持ちます。これらの名前のディレクトリエントリは禁止されておらず、実際にはディスク上のデータ構造内の通常のディレクトリエントリとして存在します。ただし、これらは必須のディレクトリエントリであり、必須の値を持ち、各ディレクトリの作成時に自動的に作成されます。これらの値を持たないディレクトリは破損していると見なされます。
- ^ abcdefghijklmnopqrstu vwxyz aa ab ac ad ae af ag ah ai aj ak al am an ディスク上の構造には固有の制限はありません。ただし、特定のインストール可能ファイルシステムドライバとオペレーティングシステムには独自の制限が課される場合があります。現在のディレクトリ構造 (CDS) によって制限されているため、DOS は32 を超えるディレクトリレベル ( DR DOS 3.31 - 6.0を除く) をサポートしていません。また、FAT の場合は 66 バイト、LFN の場合は 255 文字を超えるフルパス名をサポートしていません。Windows NT は、NTFS の場合は 32,767 バイトを超えるフルパス名をサポートしていません。定数に依存する古い POSIX API は、
PATH_MAXLinux では 4,096 バイトの制限がありますが、これは回避できます。Linux 自体にはパスの長さの制限はありません。[122] [123] - ^ ブロック サイズとブロック割り当てグループの断片化によって大きく異なります。
- ^ abcdef FAT12、FAT16、およびFAT32の実装がLFNをサポートしているかどうかによって異なります。サポートされていない場合、OS/2、DOS、Windows 95、DOS 専用モードのWindows 98 、および Linux の "msdos" ドライバでは、ファイル名は8.3 形式の 8 ビットOEM文字 (ベース名と拡張子の両方にスペースが埋め込まれる) に制限され、NUL (ディレクトリの終了マーカー) または文字 5 (削除されたファイル マーカーとして使用される文字 229 の置き換え) を含めることはできません。短縮名には小文字を含めることもできません。いくつかの特殊なデバイス名( CON、NUL、AUX、PRN、LPT1、COM1など) は、一部のオペレーティング システム (特に DOS、OS/2、および Windows) で予約されているため、使用を避ける必要があります。
- ^ ab ディスク上の構造は最大 4 GiB (4.294 GB ) をサポートしますが、実際のファイル サイズはボリューム サイズによって制限されます。
- ^ この大きさのFAT32パーティションは作成後問題なく動作しますが、一部のソフトウェアでは 32 GiB (34.35 GB ) を超える FAT32 パーティションの作成が許可されません。これには、Windows XPインストール プログラムや Windows 2000、XP、2003、Vista のディスク管理コンソールが含まれます。これを回避するには、 Windows ME緊急ブート ディスクからFDISK を使用してください。[104]
- ^ CPUアーキテクチャによって異なります。32ビットカーネルの場合、最大値は16 TiB(17.59 TB)です。[106]
- ^ CPUアーキテクチャによって異なります。32ビットカーネルの場合、最大値は16 TiB(17.59 TB)です。[107]
- ^ ab カーネルのバージョンとアーキテクチャによって異なります。2.4 カーネルの場合、最大値は 2 TiB (2.199 TB) です。32 ビットの 2.6 カーネルの場合、最大値は 16 TiB (17.59 TB) です。64 ビットの 2.6 カーネルの場合、最大値は 8 EiB (9.223 EB) です。
- ^ 「クラシック」Mac OS は、HFS Plus ボリュームからファイル名を取得するための 2 セットの関数を提供します。1 つは完全な Unicode 名を返し、もう 1 つは古いアプリケーションに対応するために古い 31 バイトの制限に適合する短縮名を返します。
- ^ HFS Plus では、任意の Unicode を許可するためにエスケープ シーケンスのサポートが義務付けられています。古いソフトウェアのユーザーには、必要な文字ではなくエスケープ シーケンスが表示される場合があります。
- ^ アプリケーション プログラムが認識する HPFS の「.」および「..」ディレクトリ エントリは、インストール可能ファイル システムドライバによって作成された部分的な架空のものです。ディレクトリのオンディスク データ構造には、これらの名前のエントリは含まれませんが、代わりに特別な「開始」エントリが含まれます。これらの名前のオンディスク ディレクトリ エントリは物理的に禁止されていませんが、通常の操作では作成できず、このようなエントリを含むディレクトリは破損しています。
- ^ これはディスク上の構造の制限です。OS /2用のHPFSインストール可能ファイル システムドライバーは、ボリューム セクタ番号の上位 5 ビットを独自に使用するため、処理できるボリューム サイズは 64 GiB (68.71 GB ) に制限されます。
- ^ ISO 9660#制限事項
- ^ マルチエクステントの使用により、ファイルは複数のセグメントで構成でき、各セグメントの最大 サイズは4 GiB (4.294 GB ) です。ISO 9660#2 GiB (2.147 GB) (または実装によっては 4 GiB (4.294 GB)) のファイルサイズ制限を参照してください。
- ^ 標準的な 2048 バイトのセクター サイズを想定しています。ボリューム サイズは、ボリューム上のセクター数を識別する 32 ビット値として指定されます。
- ^ ab スパース ファイルは、それ以上のデータを含めることはできませんが、ファイル システムのサイズよりも大きくなる場合があります。
- ^ ab NSS では、別々の名前空間でファイルに複数の名前を付けることができます。
- ^ ab これはディスク上の構造の制限です。Windows NTの NTFS ドライバーでは、処理できるボリューム サイズが 256 TiB (281.4 TB )、ファイル サイズが 16 TiB (17.59 TB ) に制限されています。Windows 10 バージョン 1709 では、2 MiB (2.097 MB) のクラスター サイズを使用する場合、制限は 8 PiB (9.007 PB) です。
- ^ 一部の名前空間では、名前の長さの制限が低くなっています。"LONG" では 80 バイト、"NWFS" では 80 バイト、"NFS" では 40 バイト、"DOS" では8.3 ファイル名に制限がありました。
- ^ ファイル名とファイルタイプを合わせた最大長は 236 バイトです。各コンポーネントの最大長は 255 バイトです。
- ^ パス名の最大長は 4,096 バイトですが、個々のコンポーネントに引用されている制限を合計すると 1,664 バイトになります。
- ^ ab QFS では、統合された HSM と併用すると、一度にディスク上に存在する必要があるのはファイルの一部だけなので、ファイルがディスクのサイズを超えることが可能になります。
- ^ ReiserFSの理論上の最大ファイルサイズは1EiB ( 1.152EB )であるが、「32ビットintのアーキテクチャではページキャッシュによって8Tiに制限される」[119]
- ^ この制限は新しいバージョンでは解除される可能性があります。
- ^ inode 内のファイル サイズは、1 つの 8 ビット バイトと 1 つの 16 ビット ワードで構成され、合計 24 ビットです。実際の最大値は 7 つの単間接ブロックと 1 つの二重間接ブロックを含む 8,847,360 バイトでした。PWB/UNIX 1.0 のバリアントには 8 つの単間接ブロックがあり、最大値は 524,288 バイト、つまり 0.5 MBでした。
- ^ 実際の最大値は 1,082,201,088 バイトで、直接ブロックが 10 個、一重間接ブロックが 1 個、二重間接ブロックが 1 個、三重間接ブロックが 1 個でした。4.0 BSDおよび4.1 BSDバージョン、およびSystem Vバージョンでは、512 バイト ブロックではなく 1,024 バイト ブロックが使用されていたため、最大値は 4,311,812,608 バイト、つまり約 4 GiB (4.294 GB ) でした。
- ^ ab VMFS ボリューム上の最大ファイル サイズは、その VMFS ボリュームのブロック サイズによって異なります。ここでの数値は、最大ブロック サイズを使用して取得されます。
- ^ ファイル名はもっと長くできることに注意してくださいXFS#拡張属性
- ^ ab XFS は Linux 2.4 ではファイルサイズが 64 TiB (70.36 TB )に制限されています が、Linux 2.4 では最大ブロックサイズが 2 TiB (2.199 TB ) までしかサポートされていません。この制限はIRIXには存在しません。
参考文献
- ^ Shustek, Len (2016-08-02). 「In His Own Words: Gary Kildall」.注目すべき人々 .コンピュータ歴史博物館.
- ^ Kildall, Gary Arlen (2016-08-02) [1993]. Kildall, Scott ; Kildall, Kristin (編著). 「コンピュータ接続: パーソナルコンピュータ業界の進化における人々、場所、イベント」(原稿、パート 1). Kildall 家. 2016-11-17に閲覧。
- ^ Mace, Scott (1986-09-22). 「MS-DOS Run CD-ROM の拡張機能」InfoWorld . 8 (38): 1, 8 . 2016-11-09に閲覧。
- ^ Warren, David (1993年10月20日). 「Polycenter File System - - HELP」. 2012年3月9日時点のオリジナルよりアーカイブ。
- ^ 「Sun Microsystems が Lustre ファイル システムを含むクラスタ ファイル システムの資産を買収する最終契約を締結し、高性能コンピューティング ポートフォリオを拡大」(プレス リリース)。カリフォルニア州サンタクララ: Sun Microsystems, Inc. 2007 年 9 月 12 日。2007 年 10 月 2 日時点のオリジナルよりアーカイブ。
- ^ Matthew Dillon (2018-12-09). 「hammer2/DESIGN」. BSD 相互参照. DragonFly BSD . 2019-03-06閲覧。
- ^ 「Huawei、Androidデバイス向けのEROFS Linuxファイルシステムを発表」XDA Developer 2018年6月1日。
- ^ 「RT–11 ボリュームおよびファイル形式マニュアル」(PDF)。Digital Equipment Corporation。1991 年 8 月。pp. 1–26 .. 1–32。
- ^ 「RT–11 ボリュームおよびファイル形式マニュアル」(PDF)。Digital Equipment Corporation。1991 年 8 月。pp. 1–4 .. 1–12。
- ^ 「Unix 6 ファイル システムのフォーマット」(PDF)。2016 年 9 月 21 日のオリジナル(PDF)からアーカイブ。2016 年 2 月 21 日閲覧。
- ^ 「Unix Programmers Manual」(PDF) (第7版)の355ページ( FILESYS(5) )のdinode構造を参照。ニュージャージー州マレーヒル:ベル電話研究所。1979年1月。 2016年2月21日閲覧。
- ^ 「必須整合性制御」。Microsoft Docs。2021年 3 月 25 日。2022 年 8 月 14 日に閲覧。
- ^ 「Ext4 ディスク レイアウト」。
- ^ 「Ext4 メタデータ チェックサム」。
- ^ Mark Russinovich (2007 年 2 月)。「Windows の管理: Windows Vista カーネルの内部: パート 1」。TechNet。
- ^ Siracusa, John (2011-07-20). 「Mac OS X 10.7 Lion: the Ars Technica review」. Ars Technica . 2017 年12 月 14 日閲覧。
ハードリンクを追跡するために、HFS+ はボリュームのルート レベルの隠しディレクトリ内にハードリンクごとに個別のファイルを作成します。
- ^ – DarwinおよびmacOSシステム管理者マニュアル
- ^ 「ファイルシステムの比較」。Apple。2008年10月6日時点のオリジナルよりアーカイブ。(HFSX について議論するために更新されていません)
- ^ 「テクニカルノート TN1150: HFS Plus ボリュームフォーマット」。Apple。(HFS Plus と HFSX の非常に技術的な概要。)
- ^ "fslogger". 2008年9月18日時点のオリジナルよりアーカイブ。2006年8月3日閲覧。
- ^ McKusick, Marshall Kirk; Roberson, Jeff. 「ジャーナル化されたソフトアップデート」(PDF)。
- ^ 「新しいFAQ - FreeBSD Wiki」。
- ^ 「FreeBSD 9.0-RELEASE アナウンス」。
- ^ 「Linux 5.2 で EXT4 大文字/小文字を区別しないディレクトリ/ファイル名検索が追加」
- ^ 「2. 高レベル設計 — Linux カーネルドキュメント § 2.10. インラインデータ」www.kernel.org 。 2022 年 12 月 24 日閲覧。
- ^ 「NSure によって追跡されるファイルシステム イベント」。
- ^ 「ユニバーサル ディスク フォーマット仕様 – リビジョン 2.60」(PDF)。p. 34。
このファイルは、サイズが小さい場合は、それを説明する [情報制御ブロック] に埋め込むことができます。
- ^ 「zpool-features.7 - OpenZFS ドキュメント」。openzfs.github.io 。2024年 9 月 23 日閲覧。
- ^ "clonefile(2)"。
クローンファイルdstは、srcファイルとデータブロックを共有します[..]
- ^ abc 「DMSDOS CVF モジュール」(dmsdoc.doc)。0.9.2.0。1998-11-19。2016-11-02 にオリジナルからアーカイブ。2016-11-01に取得。
通常、1 つのクラスターのすべてのデータは連続したセクターに保存されますが、ファイルシステムが断片化されすぎると、データを格納するのに十分な大きさの「空き領域」がない場合があります。[…] Drivespace 3 と Stacker には、そのような状況に対応するハックがあります。1 つのクラスターのデータをディスク上の複数の断片に保存できます。
- ^ 「データ重複排除について」。2018年5月31日。
- ^ 「Ext4 暗号化」。
- ^ ab 「Red Hat: ビットロットとは何か?」
- ^ 「F2FS暗号化」。
- ^ "mkfs.xfs(8) from xfsprogs 5.10.0-4".
デフォルトでは、mkfs.xfs [..] は reflink [=重複排除] 機能を有効にします。
- ^ 「JFS データ圧縮」。IBM。2020年 7 月 26 日閲覧。
- ^ Moffat, Darren (2012 年 7 月)。「ZFS データ暗号化の管理方法」。2022 年 8 月 14 日閲覧。
- ^ 「zfs-0.8.0 をリリース」。GitHub。2020年1 月 21 日。
- ^ 「機能フラグ - OpenZFS」。
- ^ 「zfsprops.7 — OpenZFS ドキュメント」。GitHub。2023年 8 月 26 日。2023年9 月 14 日に取得。
- ^ 「圧縮 — BTRFS ドキュメント」。GitHub。2023年7 月 26 日。2023 年 9 月 14 日に閲覧。
- ^ ab Overstreet, Kent (2021年12月18日). 「bcachefs: 動作原理」(PDF) . 2023年5月10日閲覧。
- ^ 「bcachefs/ 圧縮」. 2023年9月11日. 2024年1月14日閲覧。
- ^ 「Resilient File System (ReFS) の概要」。Microsoft。2020年9月25日時点のオリジナルよりアーカイブ。 2020年9月22日閲覧。
- ^ 「Resilient File System の概要」。Microsoft Docs。Microsoft。2012年 2 月 29 日。2022 年8月24 日に閲覧。
- ^ 「IBM の Linux 用ジャーナル ファイル システム (JFS)」。
- ^ 「XFS ファイルシステムの拡張」。
- ^ ab "Shrinking Support - xfs.org". XFS Wiki . 2022-07-17. 2022-07-17時点のオリジナルよりアーカイブ。 2022-12-18に取得。
- ^ 「よくある質問(旧Wiki)」。2018年5月5日閲覧。
- ^ 「Kernel/Git/Jaegeuk/F2fs-tools.git - f2fs ファイルシステム用のユーザーランド ツール」。
- ^ "ntfsresize(8)"。
- ^ abc – Linuxプログラマーズマニュアル– 管理および特権コマンド
- ^ 「ファイルシステムのサイズ変更」。
- ^ 「Resize reiserfs」Reiserfs wiki。
- ^ 「Just Enough Operating System (JeOS): 技術情報 | SUSE」www.suse.com 。2018 年4 月 28 日閲覧。
- ^ "nilfs-resize(8)"。
- ^ ミラーおよび単一ディスクの vdev はプールから完全に削除できますが、RAID-Z vdev は削除できません。「OpenZFS 7614 - zfs デバイスの退避/削除」。GitHub。
- ^ 「ディスクのサイズ変更と拡張」。
- ^ 「Macユーザーの皆さん、APFSをご紹介します: macOSの新しいファイルシステム - ZDNet」。ZDNet。
- ^ 「Apple ファイルシステムガイド - FAQ」。
- ^ ab "CVF 地域: MDFAT"。
- ^ ab 「DOS FAT から MDFAT へのマッピング」。
- ^ "[ベース] リビジョン 216796"。
- ^ "Newfs(8)"。
- ^ Jaeguk Kim (2014-09-22). 「[PATCH 2/3] f2fs: f2fs_ioctl に FITRIM を導入」. linux-kernel (メーリング リスト).
- ^ 「Reiser4 破棄サポート」Reiser4 FS Wiki。
- ^ 「XFS が Linux 4.9 に共有データ エクステントを追加」。
- ^ Android カーネル ファイル システムのサポート (ドキュメント)。Android オープンソース プロジェクト。2023 年 1 月 11 日閲覧。
- ^ 「GitHub - sgan81/Apfs-fuse: APFS (Apple File System) 用の FUSE ドライバー」。GitHub。2020年1 月 18 日。
- ^ 「Linux 用の APFS モジュール。実験的な書き込みサポート付き。このツリーは開発用です。代わりに linux-apfs-oot を使用してください。: Linux-apfs/Linux-apfs」。GitHub。2019年12 月 14 日。
- ^ Namjae Jeon (2020年1月20日). 「[PATCH v12 00/13] 最新のexfatドライバーを追加」. linux-kernel (メーリングリスト) . 2021年12月18日閲覧。
- ^ 「NTFS3 プル リクエストの承認」。
- ^ ab 「Paragon HFS+ for Windows 10」。
- ^ 「古代のファイルシステムを現代の Linux に移植する」。Time To Pull The Plug。2017年 6 月 21 日時点のオリジナルよりアーカイブ。2016 年 4 月 22 日閲覧。
- ^ 「xiafs ファイルシステムの最新 Linux カーネルへの移植」。Github (cdtk)。2019 年 6 月 28 日。
- ^ abc 「Paragon ExtFS for Mac」。
- ^ ab "Explore2fs". chrysocome.net .
- ^ ab 「Paragon ExtFS for Windows」。
- ^ ab 「FAQ」。Windows用の Ext2 インストール可能ファイル システム。(Windows NT4、2000、XP、Vista の Ext2 および Ext3 ボリュームへのカーネル レベルの読み取り/書き込みアクセスを提供します。)
- ^ ab Branten, Bo. 「Ext2Fsd プロジェクト: Windows (2K/XP/WIN7/WIN8) 用のオープン ソース ext3/4 ファイル システム ドライバー」。2012 年 7 月 23 日時点のオリジナルよりアーカイブ。2012年 7 月 24 日閲覧。
- ^ ab 「FreeBSD ハンドブック」。
- ^ Hanselman, Scott (2021-11-02). 「WSL2 で Linux ext4 ディスクを直接マウントできるようになりました」。ニュースレター of Wonderful Things 。2023年 10 月 1 日閲覧。
- ^ Microsoft Corp. (2023-07-17). 「Windows 技術ドキュメント: Windows 開発環境: Windows Subsystem for Linux」。Microsoft Learn (2021-12-09 公開)。2021-12-27 時点のオリジナルよりアーカイブ。2023-10-01閲覧。
- ^ 「Lustre Wiki」.
- ^ 「FreeBSD 10.4 MAN ページ - reiserfs」。www.freebsd.org。2019年 8 月 5 日閲覧。
- ^ 「FreeBSD 11 と Reiserfs」www.linuxquestions.org . 2016-12-19 . 2019-08-05閲覧。
- ^ 「'svn commit: r300062 - head/sys: gnu/fs modules modules/reiserfs' - MARC」。marc.info 。 2019年8月5日閲覧。
- ^ 「共有ファイルシステムと Linux クライアントについて - Sun QFS および Sun Storage Archive Manager 5.3 インストール ガイド」。2016 年 3 月 14 日閲覧。
- ^ 「ZFS Filesystem for FUSE/Linux」。Wizy Wiki。2009年11月30日。2013年5月13日時点のオリジナルよりアーカイブ。
- ^ 「Linux 上の ZFS」。ローレンス・リバモア国立研究所。
- ^ Kim, Arnold (2007 年 10 月 4 日)。「Apple が Leopard 向けに ZFS 読み取り/書き込み開発者プレビュー 1.1 をリリース」。Mac Rumors。
- ^ 「Windows 上の OpenZFS」。
- ^ "WinBtrfs". Github (マハームストーン)。 2020年11月22日。
- ^ "squashfs-tools". Freshports .
- ^ "fusefs-squashfuse". Freshports .
- ^ 「よくある質問」.
- ^ 「ボリュームフォーマットの比較」。
- ^ 「CephFS の最大ファイルサイズとパフォーマンス」。
- ^ 「CephFS ディレクトリの断片化」。
- ^ 「ExFAT: ファイル名ディレクトリエントリ」。
- ^ abcd 「ファイル システムの機能比較」。Microsoft Docs。Microsoft。2021年 1 月 7 日。2022年 8 月 14 日に取得。
- ^ Vimal AR (2016年7月16日). 「EXT4ファイルシステムにおけるファイル名の最大長」. arvimal.blog . 2021年2月28日時点のオリジナルよりアーカイブ。
- ^ 「インタビュー/EricSandeen」。Fedoraプロジェクト Wiki。2008年 6 月 9 日。
- ^ 「Windows XP における FAT32 ファイル システムの制限」。Microsoft。2014 年 3 月 30 日時点のオリジナルよりアーカイブ。
- ^ 「GEMDOS の概要」。
- ^ 「Red Hat Enterprise Linux のファイルおよびファイルシステムのサイズ制限は何ですか?」Red Hat . 2023-03-21.
- ^ 「Red Hat Enterprise Linux のファイルおよびファイルシステムのサイズ制限は何ですか?」Red Hat . 2023-03-21.
- ^ Matthew Dillon. 「HAMMER2 設計ドキュメント」。
ファイル名は最大 1023 バイトまで許可されます。
- ^ Matthew Dillon (2008 年 6 月 21 日). 「HAMMER ファイルシステム」(PDF) .
- ^ 「Mac OS X: Mac OS 拡張フォーマット (HFS Plus) のボリュームとファイルの制限」。support.apple.com。2016 年 7 月 26 日。2019 年 4 月 8 日時点のオリジナルよりアーカイブ。
- ^ 「Mac OS 8、9: Mac OS 拡張フォーマット - ボリュームとファイルの制限」。support.apple.com。2012年 2 月 20 日。
- ^ 「SFS ファイル システム」。www.ibm.com。2015年 6 月 3 日。2022 年 9 月 13 日時点のオリジナルよりアーカイブ。2022年 9 月 13 日閲覧。
- ^ 「Joliet仕様」 1995年5月22日。2009年4月14日時点のオリジナルよりアーカイブ。
- ^ Russon, Richard; Fledel, Yuval. 「NTFS ドキュメント」(PDF)。
- ^ ab 「NTFS の概要」。Microsoft Docs。2022年 5 月 26 日。2022 年 5 月 26 日時点のオリジナルよりアーカイブ。2022年 6 月 5 日に取得。
- ^ abcde Steven Sinofsky (2012 年 1 月 16 日)。「Windows 向け次世代ファイル システムの構築: ReFS」。
- ^ Amigo (2015-04-02). 「ファイル名に無効な文字が含まれています」。Amigoのテクニカルノート。2020年 10 月 20 日閲覧。
- ^ 「Resilient File System (ReFS) の概要」 。Microsoft Docs。2017年 11 月 7 日閲覧。
- ^ 「FAQ」. namesys . 2003年10月15日. 2006年7月19日時点のオリジナルよりアーカイブ。
- ^ ab 「UFS サブディレクトリの最大数」。Oracle。2019年2 月 12 日閲覧。
- ^ 「 FreeBSD 9.X および 10.X に関するよくある質問」。FreeBSDドキュメンテーション プロジェクト。2016年 3 月 20 日取得。fsck
(8) メモリ制限がない場合、ファイルシステムの最大サイズは 2 ^ 64 (ブロック) * 32 KiB (32.76 KB) => 16 エクサ * 32 KiB (32.76 KB) => 512 ゼタバイトになります。
- ^ 「PATH_MAX はトリッキーです」。Evan Klitzke のウェブログ。
- ^ 「PATH_MAX は単純にそうではない」。Insane Coding 2007-11-03。
外部リンク
- Linux 2.4.5 上のファイルシステムの速度比較 (アーカイブ)
- Debian Etch でのファイルシステム (ext3、reiser、xfs、jfs) の比較 2018-03-04 にWayback Machineにアーカイブ(2006 年 4 月 23 日)
- さまざまなファイルシステムのブロック割り当て戦略
- ext4、ReiserFS、JFS、XFS の利点と欠点は何ですか? - Unix & Linux Stack Exchange
