Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
システム強制終了時にファイルシステムの整合性を保つ~ コピーオンライト編 ~
Search
Satoru Takeuchi
PRO
April 30, 2026
Technology
51
0
Share
システム強制終了時にファイルシステムの整合性を保つ~ コピーオンライト編 ~
以下動画のスライドです
https://youtu.be/obBPGqSfbLU
Satoru Takeuchi
PRO
April 30, 2026
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
システム強制終了時に ファイルシステムの整合性を保つ ~ ジャーナリング編 ~
sat
PRO
1
56
ファイルシステムの整合性を回復するfsck
sat
PRO
1
58
小学校5,6年生向けキャリア教育 大人になるまでの道
sat
PRO
8
4.8k
ファイルシステムの不整合
sat
PRO
2
150
書籍執筆での生成AIの活用
sat
PRO
2
500
ChatGPTに従って体調管理2026
sat
PRO
0
180
eBPF
sat
PRO
1
150
waruiBPF
sat
PRO
0
140
eBPFとwaruiBPF
sat
PRO
5
5.4k
Other Decks in Technology
See All in Technology
コードレビューを制するチームがソフトウェアデリバリーのフローを制す / Beyond Code Review: Distributing Its Responsibilities Across the SDLC
mtx2s
3
850
個人AIからチームAIへ:開発における品質と生産性の再設計
moongift
PRO
0
370
運用を見据えたAIエージェント設計実践
amacbee
0
2.3k
Spring AI × MCP 入門〜AIエージェントへのツール公開、境界設計から始める最小構成 〜
yuyamiyamoto
0
210
OpenID Connectによるサービス間連携
takesection
0
150
Mastering Ruby Box
tagomoris
3
140
ポスター発表&デモと総括 / Poster Presentations & Demonstrations and Summary
ks91
PRO
0
190
React、まだ楽しくて草
uhyo
7
3.9k
Platform engineering for developers, architects & the rest of us (AI agents)
danielbryantuk
0
170
サプライチェーンセキュリティの空白地帯 - 信頼できる”依存性”の未来を考える
rung
PRO
2
650
Java正規表現エンジン(NFA)の仕組みと パフォーマンスを維持するための最適化手法
takeuchi_132917
0
180
OCI Oracle AI Database Services新機能アップデート(2026/03-2026/05)
oracle4engineer
PRO
0
170
Featured
See All Featured
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.5k
Building the Perfect Custom Keyboard
takai
2
780
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
The Invisible Side of Design
smashingmag
302
52k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
190
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
570
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
230
Statistics for Hackers
jakevdp
799
230k
Test your architecture with Archunit
thirion
1
2.3k
Git: the NoSQL Database
bkeepers
PRO
432
67k
My Coaching Mixtape
mlcsv
0
140
Evolving SEO for Evolving Search Engines
ryanjones
0
210
Transcript
システム強制終了時に ファイルシステムの整合性を保つ ~ コピーオンライト編 ~ May. 1st, 2026 Satoru Takeuchi
X: satoru_takeuchi 1
• CoW(Copy-on-Write)とも表記される • システムの異常終了時に発生するファイルシステムの不整合状態から回復する ファイルシステムの機能の一つ ◦ モダンなファイルシステムでは Btrfsがサポート ◦ 📝
XFSもファイル単位だけではコピーオンライトをサポート コピーオンライト 2
コピーオンライトの流れ 1. ユーザから変更要求が来る 2. 変更後のデータを変更前のデータとは別の場所に書き込む 3. データへのリンクを古いデータから新しいデータへ張り替える 4. 変更前のデータを捨てる 3
コピーオンライトの流れ: 通常のケース • 以下の状況で”mv bar foo”コマンドを実行する ◦ ファイルシステムはコピーオンライト機能をサポート / foo
bar huga hoge 見える
更新後のリンクを持つディレクトリを作る / foo bar huga hoge foo / 見える 見えない
データはあるが ユーザからは見えない
ユーザから見えるルートディレクトリを変更 / foo bar huga hoge foo / 見えない データはあるが
ユーザからは見えない 見える
古いデータを削除 • 📝 非同期で消すこともある / foo bar huga hoge foo
/ 見える
これで完了 • ちょっと見づらいが期待通りのリンク関係になっていることがわかる bar huga hoge foo / 見える
コピーオンライトの流れ: システムが異常終了する場合 • 以下の状況で”mv bar foo”コマンドを実行する ◦ ファイルシステムはコピーオンライト機能をサポート / foo
bar huga hoge 見える
更新後のリンクを持つディレクトリを作る / foo bar huga hoge foo / 見える 見えない
データはあるが ユーザからは見えない
ここでシステムが異常終了 / foo bar huga hoge foo / 見える 見えない
データはあるが ユーザからは見えない 異常終了
再起動後 / foo bar huga hoge foo / 見える 見えない
データはあるが ユーザからは見えない
誰からも参照されていないデータを捨てる • 📝 非同期で消すこともある / foo bar huga hoge foo
/ 見える 見えない
整合性のある状態が保たれている / foo bar huga hoge 見える
その他諸々 • 一瞬でとれるスナップショットなどの様々な機能を実装しやすい ◦ そのうち別の動画で紹介するかも • 細かい書き込みが続くとデータが断片化して性能が落ちがち ◦ とくにランダムI/Oに弱いHDD •
ジャーナリングとどちらが優れているかは一概には言えない 15
まとめ • コピーオンライトはシステムの強制終了時にファイルシステムの整合性を保つ機能 の一つ • データの変更は元のデータを更新するのではなく、新しいデータを作った後にデー タへのリンクを張り替える • ジャーナリングとコピーオンライトは一長一短あり、一概にどちらが良いとは言えな い
16