11月版 「ext4」が見えてきた! ついに利用方法公開


上川純一
日本ヒューレット・パッカード株式会社
コンサルティング・インテグレーション統括本部
2006/12/1

ファイルシステム「ext4」に動きが!

 Linux Kernel Watch 7月版でお伝えした「ext4」に進ちょくがありました。Linusツリーの2.6.19-rc2にfs/ext4ディレクトリができたのです。また、Andrew Mortonの管理する-mmツリー2.6.19-rc2-mm2のアナウンス文に、ext4の利用方法が掲載されました。

-mmツリー2.6.19-rc2-mm2のアナウンス文(抜粋):
ファイルシステムext4の利用方法:
・下記からe2fsprogsの最新版を取得
    ftp://ftp.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs-interim/
・ファイルシステムの作成は、mke2fs -j /dev/hda1のまま
・mount /dev/hda1 /wherever -t ext4dev
・extentを利用するには
    mount /dev/hda1 /wherever -t ext4dev -o extents
・extentを利用したファイルを作成するまでは、ファイルシステムの中身はext3と互換性があります
(省略)

 現状、ファイルシステムの名称が「ext4dev」になっていることから、今後も変更が加えられると予想されます。そのため、本番環境には適用しない方がよいでしょう。もし早く試してみたいならばテスト環境を用意することをお勧めします。

関連リンク:
-mmツリー2.6.19-rc2-mm2のアナウンス文
http://www.kr.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc1/2.6.19-rc1-mm1/announce.txt

参考:
カーネルソースの中のext4ドキュメント
Documentation/filesystems/ext4.txt

急なエラーもこれで安心

 美田さんが投稿した「fault-injection」のパッチは、Andrew Mortonたちの興味を引きました。fault-injectionとはkmalloc()、alloc_pages()、ディスクI/Oなど「失敗する可能性がある関数」をわざと失敗させて、その挙動を確認するものです。「失敗する可能性がある処理」に「失敗した場合の処理」を実装しており、カーネルが安定稼働しているかどうかを確認するのに便利なパッチです。

 実は、Andrew Mortonたちも同様の機能を実装した経験があるようで、具体的な意見がいくつか出ました。例えば、「エラーの発生確率を%で指定しているが、過去の経験から%単位でエラーを発生させるとエラーの発生頻度が高過ぎて試験にならない。1/100万くらいの確率で指定できるのが妥当だよ」という意見です。

 普段運用していると、メモリが確保できなくなる状況やディスク書き込みでエラーになる状況などに見舞われることがあります。そのため、エラー状態であっても安定稼働できるような機能というのは必須といえるでしょうね。安定したカーネル環境のためにも、このようなパッチの活用が今後期待されます。

unionfsがメインラインカーネルにマージか

 Josef Jeff Sipekらは、「unionfs2.0」のパッチを投稿しました。unionfsとは、複数のディレクトリを重ねて利用できるファイルシステムのことです。主な機能として、read-onlyのディレクトリの上にread-writeのディレクトリをマップできます。この機能は、CD-ROMから起動できる「KNOPPIX」のようなディストリビューションで活用されています。また、1つのカーネルイメージをNFS rootで起動する複数のサーバで共用するといった用途も考えられているそうです。

 ちなみに今回のunionfs2.0の投稿は、メインラインカーネルにマージされることを目的としています。そのため、メモリマップファイル(mmap)などの複雑な実装を省略してレビューしやすい内容になっています。

関連リンク:
unionfs A Stackable Unification File System
http://www.unionfs.org/

寂しい10月の-stableリリース

 10月の-stableの進ちょくは、Greg KHたちによる2.6.17.14と2.6.18.1の2つのリリースのみです。また、Adrian Bunkがメンテナンスしている2.6.16系列は、2.6.16.30-rc1を出しただけで正式なリリースはありませんでした。

  • 2.6.17.14(10月13日)
      ・dvb-core:0bytesのULEパケットに対応(CVE-2006-4623)
      ・NFSのデッドロックの問題回避
      ・ALSA の各種修正
      ・ext3のシーケンシャルリードが10%パフォーマンス低下していた問題の解決
      など18パッチ
  • 2.6.18.1(10月13日)Greg KH
      ・s390:ユーザー空間から初期化していないカーネルメモリを読み出せる(CVE-2006-5174)
      ・user-mode-linux関連の修正
      ・sata_mv:oopsの修正
      など69パッチ
(以上、敬称略)

2/2

Index
Linux Kernel Watch 11月版
 「ext4」が見えてきた! ついに利用方法公開
  Page 1
 大混乱? 2.6.19-rcリリース
 カーネルイメージがリロケーション可能に
 Linus「あまり頻繁にマージしないで」
Page 2
 ファイルシステム「ext4」に動きが!
 急なエラーもこれで安心
 unionfsがメインラインカーネルにマージか
 寂しい10月の-stableリリース

連載 Linux Kernel Watch


 Linux Squareフォーラム Linuxカーネル関連記事
連載:Linux Kernel Watch(連載中)
Linuxカーネル開発の現場ではさまざまな提案や議論が交わされています。その中からいくつかのトピックをピックアップしてお伝えします
連載:Linuxファイルシステム技術解説
ファイルシステムにはそれぞれ特性がある。本連載では、基礎技術から各ファイルシステムの特徴、パフォーマンスを検証する
特集:全貌を現したLinuxカーネル2.6[第1章]
エンタープライズ向けに刷新されたカーネル・コア
ついに全貌が明らかになったカーネル2.6。6月に正式リリースされる予定の次期安定版カーネルの改良点や新機能を詳しく解説する
特集:/procによるLinuxチューニング[前編]
/procで理解するOSの状態

Linuxの状態確認や挙動の変更で重要なのが/procファイルシステムである。/procの概念や/procを利用したOSの状態確認方法を解説する
特集:仮想OS「User Mode Linux」活用法
Linux上で仮想的なLinuxを動かすUMLの仕組みからインストール/管理方法やIPv6などに対応させるカーネル構築までを徹底解説
Linuxのカーネルメンテナは柔軟なシステム
カーネルメンテナが語るコミュニティとIA-64 Linux
IA-64 LinuxのカーネルメンテナであるBjorn Helgaas氏。同氏にLinuxカーネルの開発体制などについて伺った

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間