Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
様々なファイルシステム
Search
Satoru Takeuchi
PRO
October 26, 2025
Technology
0
300
様々なファイルシステム
以下動画のスライドです
https://youtu.be/RVQRu_KD1Oc
Satoru Takeuchi
PRO
October 26, 2025
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
Pythonのコードの気になる行でスタックトレースを出す
sat
PRO
0
80
ソースコードを読むときの思考プロセスの例 ~markdownのレンダリング方法を知りたかった2 markdownパッケージ~
sat
PRO
0
160
ソースを読む時の思考プロセスの例-MkDocs
sat
PRO
1
400
ソースを読むプロセスの例
sat
PRO
22
17k
メモリマップトファイル
sat
PRO
1
150
「Linux」という言葉が指すもの
sat
PRO
4
230
APIとABIの違い
sat
PRO
5
260
ファイルシステムへのアクセス方法
sat
PRO
0
99
ファイルシステム
sat
PRO
1
86
Other Decks in Technology
See All in Technology
インフラ室事例集
mixi_engineers
PRO
2
230
Bakuraku Engineering Team Deck
layerx
PRO
11
5.5k
経営から紐解くデータマネジメント
pacocat
9
1.9k
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
21k
pmconf2025 - データを活用し「価値」へ繋げる
glorypulse
0
420
AI時代のインシデント対応 〜時代を切り抜ける、組織アーキテクチャ〜
jacopen
4
210
一億総業務改善を支える社内AIエージェント基盤の要諦
yukukotani
8
2.8k
なぜフロントエンド技術を追うのか?なぜカンファレンスに参加するのか?
sakito
8
1.9k
「え?!それ今ではHTMLだけでできるの!?」驚きの進化を遂げたモダンHTML
riyaamemiya
9
4.4k
How native lazy objects will change Doctrine and Symfony forever
beberlei
1
370
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.9k
MCP・A2A概要 〜Google Cloudで構築するなら〜
shukob
0
160
Featured
See All Featured
Music & Morning Musume
bryan
46
7k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Statistics for Hackers
jakevdp
799
230k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Rails Girls Zürich Keynote
gr2m
95
14k
Designing for Performance
lara
610
69k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Transcript
様々なファイルシステム Oct. 26th, 2025 Satoru Takeuchi X: satoru_takeuchi 1
Linuxのファイルシステム • Linuxカーネルに同梱されているもの ◦ 数十個 • 本体とは別にベンダなどからカーネルモジュールとして提供されているもの ◦ たくさん ◦
メンテが活発でないと新しいカーネルでビルドできなかったりする • Filesystem in Userspace(ユーザ空間でファイルシステムを作れる機能)でサポー トするもの ◦ たくさん ◦ 一発ネタのようなものがたくさんあるので面白い ◦ ユーザ空間で動かしているので基本的に遅いと考えてよい 2
なんでこんなにたくさんあるのか • あらゆる要件を完璧に満たすものがないから ◦ 機能: quota, snapshot, クラッシュ耐性, 圧縮 ◦
性能: 読み書き、ファイル作成 /削除 ◦ スケーラビリティ: 最大ファイルシステムサイズ、ファイルシステムサイズやファイル数が大きくなっ たときの性能 • 上記以外にも要件はたくさんある 3
ネットワーク越しにアクセスできるものも 4 ローカルファイルシステム (例: ext4, XFS, Btrfs) ネットワークファイルシステム (例: NFS,
CIFS) 分散ファイルシステム (例: CephFS) node remote node プロセス local node プロセス local node プロセス …
その他ファイルシステム • メモリ上に存在する ◦ tmpfs • カーネル内の情報を読み書きする ◦ procfs, sysfs,
debugfs • 様々なサービスをファイルシステムとして見せる ◦ httpfs ◦ sshfs 5
代表的なローカルファイルシステム • ext4 ◦ スタンダード ◦ ext2,ext3からファイルシステムを作りなおさず移行可能 • XFS ◦
こちらもスタンダード ◦ 機能面ではだいたい ext4と同じ(reflinkなど一部先進的な機能も ) ◦ スケーラビリティに優れると言われている • Btrfs ◦ 機能が豊富 ◦ 構造上、性能面でどうしても不利なところがある (例: 小さいランダムI/O、fsync) 6
一体どれを使えばいいんだ… • 基本的にはdistroのデフォルトを使えばあまり困らない ◦ とくにデスクトップ用 • 要件を満たせなければ別のものを検討して評価 ◦ たとえばファイルシステムレベルの snapshotが必須な場合、ext4は使えない
• 性能を知りたければPhoronix便利 ◦ https://www.phoronix.com/review/linux-617-filesystems ◦ あくまでマイクロベンチマークをとっているにすぎないので、多くの場合は自分でベンチマークプログ ラムを作って性能測定する必要がある 7
まとめ • Linuxにはたくさんファイルシステムがある • 完璧なものは存在せず、どれも一長一短 • 何を使うかは要件に照らし合わせて自分で評価して決める必要がある 8