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
ボリュームマネージャLVM
Search
Satoru Takeuchi
PRO
December 30, 2023
Technology
2
220
ボリュームマネージャLVM
以下動画のテキストです。
https://youtu.be/0R02LLBFk4o
Satoru Takeuchi
PRO
December 30, 2023
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
低レイヤソフトウェア技術者が YouTuberとして食っていこうとした話
sat
PRO
7
5.9k
ポーリングと割り込み
sat
PRO
1
66
Rook: Intro and Deep Dive With Ceph
sat
PRO
1
130
会社員しながら本を書いてきた知見の共有
sat
PRO
3
840
デバイスにアクセスするデバイスファイル
sat
PRO
1
54
ファイルシステムのデータを ブロックデバイスへの操作で変更
sat
PRO
1
42
デバイスドライバ
sat
PRO
0
68
マルチスレッドの実現方法 ~カーネルスレッドとユーザスレッド~
sat
PRO
2
150
共有メモリ
sat
PRO
3
84
Other Decks in Technology
See All in Technology
[MIRU2025]Preference Optimization for Multimodal Large Language Models for Image Captioning Tasks
keio_smilab
PRO
0
120
公開初日に個人環境で試した Gemini CLI 体験記など / Gemini CLI実験レポート
you
PRO
3
660
MCPと認可まわりの話 / mcp_and_authorization
convto
2
300
隙間時間で爆速開発! Claude Code × Vibe Coding で作るマニュアル自動生成サービス
akitomonam
2
210
解消したはずが…技術と人間のエラーが交錯する恐怖体験
lamaglama39
0
140
人と生成AIの協調意思決定/Co‑decision making by people and generative AI
moriyuya
0
180
FAST導入1年間のふりかえり〜現実を直視し、さらなる進化を求めて〜 / Review of the first year of FAST implementation
wooootack
1
190
P2P ではじめる WebRTC のつまづきどころ
tnoho
1
270
LLMでAI-OCR、実際どうなの? / llm_ai_ocr_layerx_bet_ai_day_lt
sbrf248
0
240
「手を動かした者だけが世界を変える」ソフトウェア開発だけではない開発者人生
onishi
15
7.6k
ファインディにおける Dataform ブランチ戦略
hiracky16
0
220
地域コミュニティへの「感謝」と「恩返し」 / 20250726jawsug-tochigi
kasacchiful
0
110
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Code Review Best Practice
trishagee
69
19k
Site-Speed That Sticks
csswizardry
10
730
Embracing the Ebb and Flow
colly
86
4.8k
Speed Design
sergeychernyshev
32
1k
Optimizing for Happiness
mojombo
379
70k
Balancing Empowerment & Direction
lara
1
510
Building Adaptive Systems
keathley
43
2.7k
Gamification - CAS2011
davidbonilla
81
5.4k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
We Have a Design System, Now What?
morganepeng
53
7.7k
Unsuck your backbone
ammeep
671
58k
Transcript
ボリュームマネージャ LVM Satoru Takeuchi X: satoru_takeuchi 1
原始的なブロックデバイス管理の課題 • サイズはディスクの全容量か、それを区切ったパーティションの容量 ◦ ディスクサイズを超える大きさのボリュームは作れない • 一度決めた構成は変えづらい ◦ パーティションの作りなおし /最後のパーティションを拡張
/新パーティションの作成 2
LVM(Logical Volume Manager) • 1ノード内の複数ディスクを束ねてVolume Group(VG)と呼ばれるストレージプール を作る ◦ Volume Groupに組み込むディスクを
Physical Volume(PV)と呼ぶ • Volume Groupのサイズが許す限り好きな数だけLogical Volume(LV)と呼ばれる ブロックデバイスを作る 3 disk disk disk Volume Group … LV LV LV PV PV PV …
LVMの利点 • VGにディスクを追加、削除できる • VGの容量を超えない範囲で好きな数だけ好きな容量のLVを作れる ◦ 一台のディスクの容量を超えるサイズの LVも作れる • LVの拡張、縮小ができる
◦ 📝LVの拡張、縮小後にファイルシステムも拡張、縮小する必要がある • スナップショットを採取できる • 上記すべてをディスクアクセスを止めずに実現できる 4
例: 2つのディスクから3つのLVを作る 5 /dev/sda /dev/sdb Volume Group /dev/testvg/testlv0 /dev/testvg/testlv1 /dev/testvg/testlv2
PV PV 別名 /dev/mapper/testvg-testlv /dev/dm-X
例: Ubuntu22.04はでフォルトでLVMを使う 6 /dev/sda ubuntu-vg /dev/ubuntu-vg/root /dev/ubuntu-vg/home /dev/ubuntu-vg/swap_1 /dev/sda1 /dev/sda2
PV / boot efi home
LVMはdevice mapperを利用して実装されている • linearターゲットを使う ◦ 📝 「device mapperによるディスクI/O障害のエミュレーション 既存ターゲット編」 •
VGに組み込まれたディスクの一部をリニアマップ 7 sda sdb lv0 lv1 lv2
まとめ • Linuxにはブロックデバイス管理を楽にするためのLVMという機能がある • ディスクの容量に縛られず、柔軟なボリューム管理ができる • VGへのディスク追加/削除、LVの作成/削除/拡張/縮小が無停止でできる • スナップショットも採取できる •
LVMは内部でdevice mapperを使える • 📝 使い方はArch Wikiが詳しい ◦ https://wiki.archlinux.jp/index.php/LVM 8