Btrfs
Btrfs | |
---|---|
開発者 | オラクル、Facebook、富士通、FUsion-IO、インテル、Linux Foundation、Netgear、レッドハット、STRATO AG、SUSE |
正式名 | Btrfs |
導入 | Linuxカーネル 2.6.29(2009年3月) (Linux) |
構造 | |
ディレクトリ | B木 (B-Tree) |
領域管理 | extent |
限度 | |
最大ファイル サイズ | 16EiB |
最大ファイル数 | 264 |
最大ファイル名長 | 255 バイト |
最大ボリューム サイズ | 16EiB |
ファイル名の文字 | NULと '/' を除くすべての文字 |
特徴 | |
属性 | POSIX |
パーミッション | POSIX, ACL |
透過的圧縮 | 有り (zlib, LZO, LZ4) |
透過的暗号化 | 開発予定 |
重複排除 | 開発中 |
対応OS | Linux |
Btrfs(B-tree file system : バター エフエス、またはB木 『ビーツリー』 エフエスと読む[1][2])はLinux向けのコピーオンライトのファイルシステムで、オラクルによって2007年に発表されGNU General Public License (GPL) の元で公開されている[3]。
BtrfsはZFSファイルシステムの影響を受けて開発され、スナップショットやコピーオンライトの機能を持ち、他のLinuxファイルシステムが現在持っている多くの制約を受けないことが期待されている。
目次
1 概要
2 特徴
3 関連項目
4 脚注
5 外部リンク
概要
ext3とext4ファイルシステムの開発者セオドア・ツォー (Theodore Ts'o) は、Btrfsには「reiser3/4にあったのと同じ設計上のアイディアがいくつかある」と言った[4]。
オラクルにおけるLinuxカーネル開発のディレクタでBtrfsの開発者であるクリス・メイソン (Chris Mason) は「主な目標は将来利用できるようになるストレージに対してLinuxがスケールするようにすることだ。スケールはストレージに対処することについてだけではなく、人々に何が使われているのかを見せ、信頼性を高めるきれいなインタフェースでそれを管理し運営できる手段でもある」と言った[5]。
2009年1月にBtrfsはメインラインのLinuxカーネルの2.6.29-rc1プレリリースにマージされたが、当時は試験的な位置づけであり、商用的な利用ができる状態ではなかった。また、ディスク上のフォーマットが確定しておらずテスト以外の目的でユーザが使うべきではないとされた。[6]。2.6.31 以降は後方互換性のある形でしか変更していない。2015年には、SUSE Linux Enterprise Server 12のデフォルトのファイルシステムとして採用された。一方Red Hat Enterprise Linuxでは、Red Hat Enterprise Linux (RHEL) 6で技術プレビューとしてBtrfsのサポートが導入されていたが、サポートはRHEL 7系で終了し、RHEL 8以降ではサポートが行われないことが公表されている[7]。
特徴
Btrfsは耐障害性、修復機能や容易な管理に焦点を合わせている[8]。
Btrfsは以下の特徴を実装している[9]。
- 空間効率の良い小さなファイルの格納と、空間効率の良いインデックス付きディレクトリ
- 動的なinodeの割り当て(ファイルシステムの作成時に設定されるファイル数の最大値がない)
- 書き込み可能なスナップショットとスナップショットのスナップショット
- サブボリューム(複数の内部的なルートディレクトリ)
- (強い完全性の保証のための)データとメタデータのチェックサム
- 圧縮 (gzip, LZO, Zstd)
- すべてのデータとメタデータに対するコピーオンライトのロギング
- いくつかのRAIDアルゴリズム (RAID-0, RAID-1, RAID-5, RAID-6, RAID-10) とともに、複数のデバイスをサポートするためのデバイスマッパとの強い統合
- 効率的な増分バックアップ(send/receive)
ext3、ext4からbtrfsへのファイルシステムのアップグレードと、アップグレード時点への逆変換[10]
ソリッドステートドライブ (SSD) 最適化モード(マウントオプションで有効化される)- オンラインデフラグメンテーション
- シードデバイスのサポート[11]
- オフライン重複排除(ユーザ空間のツールが必要)
- オンラインバランシング
- オンラインボリューム拡張及び縮小
- オンラインデバイスの追加と削除
- サブボリュームのクオータ
以下の機能が開発中もしくは開発予定。
- 非常に高速なオフラインファイルシステムチェック
- オブジェクトレベルのミラーリングとストライピング
- 他のチェックサムアルゴリズム
- オンラインファイルシステムチェック
- 効率的なインクリメンタルファイルシステムミラーリング
- オンライン重複排除
- スワップ
- 暗号化
Btrfs自体は分散つまりネットワークファイルシステムにするネイティブな特徴を持たないが、オラクルは CRFS (Coherent Remote File System) という特にBtrfs上のネットワークストレージ向けに設計され最適化されたネットワークファイルシステムプロトコルを実装しはじめた。
関連項目
- ext4
- ZFS
- openSUSE
脚注
^ Valerie Henson. Chunkfs: Fast file system check and repair. Melbourne, Australia. 該当時間: 18m 49s. http://mirror.linux.org.au/pub/linux.conf.au/2008/Thu/mel8-262.ogg 2008年2月5日閲覧. "It's called Butter FS or B-tree FS, but all the cool kids say Butter FS"
^
CRFS and POHMELFS [LWN.net]
^
Chris Mason (2007年6月12日). “Btrfs: a copy on write, snapshotting FS”. Linux Kernel Mailing List. 2007年7月11日閲覧。
^ Theodore Ts'o (2008年8月1日). “Re: reiser4 for 2.6.27-rc1”. 2009年1月22日閲覧。
^
Sean Michael Kerner (2008年10月30日). “A Better File System For Linux”. InternetNews.com. 2008年10月30日閲覧。
^ Jonathan Corbet (2009年1月9日). “Btrfs merged for 2.6.29”. LWN.net. 2009年1月10日閲覧。
^
[1]
^
Chris Mason (2008年3月12日). “Btrfs wiki Main Page”. 2008年8月9日閲覧。
^
Feature list from Jonathan Corbet (2007年6月19日). “btrfs and NILFS”. 2008年8月9日閲覧。 and Chris Mason (2007年6月12日). “Btrfs: a copy on write, snapshotting FS”. Linux Kernel Mailing List. 2008年8月9日閲覧。
^ http://btrfs.wiki.kernel.org/index.php/Conversion_from_Ext3
^ Chris Mason (2009年1月12日). “Changelog”. 2009年1月14日閲覧。
外部リンク
- Btrfs公式サイト
- 最初のBtrfsの発表
Coherent Remote File System btrfs上に構築されている- A Better File System for Linux?
|