Linux
 Computer >> コンピューター >  >> システム >> Linux

Ext4とBtrfs徹底比較:あなたに最適なLinuxファイルシステムはどちら?

パソコンでどのファイルシステムを採用すべきか、真剣に検討している人は実はそれほど多くありません。

WindowsとmacOSのユーザーには選択の余地がほとんどありません。それぞれNTFSとHFS+という事実上唯一の選択肢があるからです。一方、Linuxには数多くのファイルシステムの選択肢があり、現在のデフォルトは「ext4(Fourth Extended Filesystem)」です。

しかし近年、このデフォルトを「Btrfs(B-Tree File System)」へ移行しようという動きが続いています。果たしてBtrfsは優れているのでしょうか。そして、各ディストリビューションが切り替えを行うのはいつになるのでしょうか。

ファイルシステムとは何をするもの?

Ext4とBtrfs徹底比較:あなたに最適なLinuxファイルシステムはどちら?

フォルダやキャビネットといった物理的な整理システムと同じように、デジタルのファイルシステムはファイルを管理します。使用中ではないデータをOSがどのように保存するか、どのような情報(メタデータ)を付与するか、誰が・何がそのデータへアクセスできるかなどを制御しているのです。

ファイルシステムはバックグラウンドで動作します。OSカーネルの他の部分と同様に、日常的な利用ではほとんど意識されることはありません。ファイル管理アプリケーションも、裏側でどのファイルシステムが動いていようと、基本的には同じように機能します。

ファイルシステムのコーディングは非常に複雑です。開発者たちは、より多くの機能を盛り込みながら効率性を高めるため、これらのシステムを絶えず改良し続けています。

なぜファイルシステムを切り替えるのか?

すべての用途に万能なコードは存在せず、それはファイルシステムにも当てはまります。ファイルシステムによって得意分野が異なるのです。FAT(File Allocation Table)は、ほぼすべての現代のOSがサポートしている好例といえます。

USBフラッシュドライブやSDカードがFATを採用しているのは、LinuxでもWindowsでもmacOSでも、どんなOSからでも読み書きできるようにするためです。

しかし近年のFATは、その後に開発された他のファイルシステムほど信頼性や性能が高くありません。そのためFATはポータブルメディアでは見かけますが、ハードディスク内のデータ管理には使われていないのが現状です。

そしておそらく想像通り、Appleは自社デバイスでしか利用できないファイルシステムを作ることで知られています。

Linuxの現在のファイルシステム

デスクトップLinuxのほとんどのディストリビューションは、ext4をデフォルトとして採用しています。ext4はext3の改良版であり、さらにその前のext2から進化を重ねてきた系譜にあります。

ext4は非常に堅牢なファイルシステムであることが証明されていますが、その基盤となるコードベースは年季が入っています。ext4単体では対応できない機能を求めるユーザーも少なくありません。一部の要望は追加ソフトウェアで解決できますが、ファイルシステムレベルで実現できればより高い性能が得られます。そこでBtrfsへの期待が高まるのです。

ext4のメリットとデメリット

Ext4とBtrfs徹底比較:あなたに最適なLinuxファイルシステムはどちら?

ext4の上限スペックは今なお十分すぎるほどです。作成できる最大ボリューム/パーティションは1エクスビバイト(約115万2921.5TB)。最大ファイルサイズは16テビバイト(約17.6TB)で、一般消費者が現在購入できるどんなハードディスクよりもはるかに大容量です。

ext4はさまざまな技術を駆使することで、ext3からの速度向上を実現したことでも知られています。多くの最新ファイルシステムと同様にジャーナリング方式を採用しており、ディスク上のファイル位置やあらゆる変更履歴を「ジャーナル」として記録します。

しかし豊富な機能を持ちながら、透過的圧縮・透過的暗号化・データ重複排除には対応していません。スナップショットは技術的にはサポートされていますが、あくまで実験的な段階にとどまります。

ext4開発の中心的な人物であるセオドア・ツォー(Theodore Ts'o)氏は、ext4を1970年代の古い技術に基づいた「つなぎ」のリリースと評し、Btrfsこそがより良い将来の道だと述べました。それから既に10年以上の歳月が流れています。

Btrfsのメリットとデメリット

Ext4とBtrfs徹底比較:あなたに最適なLinuxファイルシステムはどちら?

Btrfsは「Butter FS」「Better FS」「B-Tree FS」と発音されることもある、ゼロから設計し直された比較的新しいファイルシステムです。プーリング、スナップショット、チェックサムといった高度な機能をファイルシステム自身が備えることを目指して誕生しました。

プロジェクトはOracleで始まりましたが、その後Facebook、Netgear、Red Hat、SUSEといった大手企業も開発に参加しています。

Btrfsの拡張機能は一般ユーザーにも恩恵をもたらしますが、一部の機能はエンタープライズ用途でこそ真価を発揮します。そうした機能は、より耐久性の高いストレージを必要とする過酷なユースケース向けだからです。

巨大なデータベースを扱う組織にとって、複数のハードディスクにまたがるシームレスなファイルシステムは、データ統合を大幅に容易にします。データ重複排除によって実際の占有容量を削減でき、単一の広大なファイルシステムがあればデータミラーリングも格段に簡単になります。

もちろん、複数のパーティションを作成して、すべてをミラー対象にしないという選択も可能です。Btrfsの最大パーティションサイズは16エクスビバイト、最大ファイルサイズも同じく16エクスビバイトです。

Btrfsは複数のハードディスクにまたがった運用を想定していることを考えると、ext4の16倍もの容量を扱える点は大きな強みといえるでしょう。

Linuxディストリビューションの移行は進んでいるのか?

Btrfsは2013年以降、Linuxカーネルの安定した構成要素となっており、今日でもハードディスクをBtrfsでフォーマットすることが可能です。しかし、BtrfsがLinuxの標準になったわけでは決してありません。ほとんどのディストリビューションは依然としてext4をデフォルトにしています。

その理由は何でしょうか。ファイルこそがハードディスク上の最重要データだからです。個人データは代替がききません。OSは再インストールでき、アプリは再ダウンロードできますが、バックアップがない限り失われたファイルは二度と戻りません。だからこそ、何百万人ものユーザーをデフォルトで移行させる前に、そのファイルシステムの信頼性が十分に実証されていることが極めて重要なのです。

ext4は古く、時代遅れの感は否めませんが、それだけに耐障害性と信頼性が長年の運用で証明されてきました。停電でコンピュータの電源が突然落ちても、保存済みデータは無事である可能性が高いのです。

ほとんどのユーザーにとって、こうした状況こそが最も重要な判断材料となります。順調に動いているときの性能ではなく、トラブルが発生したときに何が起こるかこそが重要なのです。

そんな中、ついに移行の時期が来たと判断した著名なディストリビューションが登場しました。openSUSEは、OS本体が置かれる/rootパーティションのデフォルトとしてBtrfsを採用しています。ただし、個人ファイルを格納する/homeパーティションについては、XFSファイルシステムを選択しました。

つまり、移行は必ずしも予想通りの道をたどっているわけではありません。しかしWaylandディスプレイサーバーの例が示すように、新しい技術がLinuxの世界全体に浸透するには、長い時間がかかることがあるのです。

  1. Androidで使うべきOperaブラウザはどれ?3種類の違いを徹底比較

    デスクトップ版Operaブラウザを使っている、インターネットユーザーの約2%に属するあなたへ。個性的な選択をしていることに拍手を送りましょう!お気に入りのブラウザをAndroidでも使おうと調べてみると、「Opera」「Opera Mini」「Opera Touch」という3つの選択肢が現れ、どれもOperaのロゴを掲げていることに戸惑ったかもしれません。これらはすべて正規のOpera製品ですが、それぞれ異なるユーザーや用途に向けて設計されています。なお、Playストアにあるもう一つの製品「Opera News」はウェブブラウジング機能を持たず、ニュース収集専用アプリなので注意してください。ご

  2. ストリーミング vs ダウンロード:どちらを使うべき?データ通信量の観点から徹底解説

    ネット上で映画や音楽ファイルを視聴するとき、その場でライブ配信のように「ストリーミング」するか、端末にファイルを保存してから再生するか、大きく分けて2つの方法があります。定額制のブロードバンド契約をしている人なら通信量はあまり気にならないかもしれませんが、従量制プランを利用している場合や、動画・音声コンテンツを大量に扱うサイト運営者にとっては、「ストリーミングとダウンロード、どちらがデータ通信量を多く消費するのか」というのは重要な関心事です。 1. ストリーミングとダウンロードの違いとは? まず、両者の基本的な仕組みについて認識を揃えておきましょう。 ダウンロードとは、インターネット上にあ