#Linux
69 件の記事
eBPF 整理 — カーネルを再コンパイルせずに拡張する技術
可観測性・ネットワーキング・セキュリティツールの基盤技術になった eBPF を整理します。カーネルモジュールの危険とユーザースペースの限界の間に eBPF が開く第三の道、検証器が無限ループと不正なメモリアクセスを遮断する安全モデル、kprobe・tracepoint・XDP といったフック地点、bpftrace のワンライナーから bcc、libbpf へ上がる道具のはしご、Cilium・Falco といった代表的な活用先、そしてカーネルバージョンと権限という現実的な制約まで扱います。
メモリが余っているのに OOM で死ぬ理由 — オーバーコミット、cgroup、OOM キラー
free で見るとメモリが残っているのにプロセスが OOM で死ぬパラドックスを解きほぐします。Linux がメモリを約束だけして後から支給するオーバーコミットの原理、free と available の違いとページキャッシュ、システム全体ではなく cgroup の上限に当たって死ぬコンテナ時代の OOM(137、OOMKilled)、犠牲者を選ぶ oom_score の計算、dmesg と kubectl で死因を確認する方法、そして上限・要求値の設計まで扱います。
ロードアベレージの正体 — CPU 使用率と違う点
Linux の指標の中で最も誤読されるロードアベレージを正確に読む方法を整理します。実行中+実行待ち+ディスク待ち(D 状態)を合わせた数字という定義、コア数で割って読む基準、CPU 使用率と食い違う四つの典型例、1・5・15 分の三つの値のトレンドの読み方まで扱います。
fork は本当にメモリをコピーするのか — copy-on-write の実際の動き
fork がプロセス全体を複製するのに速い理由、copy-on-write をページテーブルの水準で解きほぐします。書く瞬間にだけコピーされる仕組み、fork+exec の組み合わせが安い理由、Redis のスナップショットやプリフォークサーバーのような実戦の事例、オーバーコミットとメモリ計算が紛らわしくなる理由まで扱います。
プロセスとスレッドの違い — メモリ共有がすべてを分けます
プロセスとスレッドの違いを「メモリを共有するか」という一つの基準から解きほぐします。隔離と共有のトレードオフ、コンテキストスイッチのコストの違い、クラッシュの波及範囲、ウェブサーバー・ブラウザ・Python(GIL)がそれぞれ何を選んだかまで、実務の感覚で整理します。
Linux がサーバー市場を支配するに至った背景 — コスト、構造、エコシステム
サーバーの標準 OS が Linux になった背景を、技術とエコシステムの両面から整理します。ライセンス費用とソース公開という出発点、サーバー用途に合う構造的な特性(ヘッドレス、遠隔管理、安定性)、クラウド・コンテナ時代が作ったロックイン効果、そして Linux が支配できなかった領域まで扱います。
Red Hat Certified Engineer (RHCE) #19 フルスケール模擬試験: 15 のタスク + 解説
Red Hat Certified Engineer (RHCE) シリーズの最終回です。実際の EX294 と同じ流れで全ドメインを統合した 15 のタスクシナリオを解き、各タスクの正解 Ansible プレイブックとコマンド、解説を開いて採点します。210/300 の合格ラインを基準に配点を合算し、冪等性と FQCN を点検し、弱点ドメインの復習の道筋まで整理します。
Red Hat Certified System Administrator (RHCSA) #16 フルスケール模擬試験: 16 のタスク + 解説
Red Hat Certified System Administrator (RHCSA) シリーズの最終回です。実際の EX200 と同じく、全ドメインを統合した 16 のタスクシナリオを解き、各タスクの正解コマンドと解説を開いて採点します。210/300 の合格ラインを基準に配点を合算し、再起動後も作業が維持されるかまで検証します。
Red Hat Certified Engineer (RHCE) #18: 試験のコツと時間管理
RHCE (EX294) 実技を受けに行く直前にもう一度読んでいく圧縮版です。4 時間の間プレイブックでシステムを自動構成する運用戦略と task の積み上げ方、`--syntax-check`・`--check` を頻繁にかける習慣、インターネットのない環境で ansible-doc と system roles example ドキュメントから知らないモジュールを解く方法、冪等性を 2 回実行で検証すること、点数を流す定番パターンと紛らわしい概念ペア、ドメイン別の受験直前チェックリストまで整理します。次の #19 はフルスケール模擬試験です。
Red Hat Certified System Administrator (RHCSA) #15: 試験のコツと時間管理、よく間違えるパターン
RHCSA 実技に入る直前にもう一度読んでいく圧縮版です。2.5 時間を簡単な作業から依存順に運用する時間管理、インターネットなしで man page を使って知らない作業を解く方法、作業を再起動で検証する習慣、シリーズ全体で点数を失う定番パターン (fstab の打ち間違い、サービスの enable 漏れ、firewall reload 漏れ、SELinux の永続設定漏れ) とその回避法、混同しやすい概念ペア、ドメイン別の受験直前チェックリストまで整理します。次の #16 はフルスケール模擬試験です。
Red Hat Certified Engineer (RHCE) #17 RHCSA 自動化 4: firewall、SELinux、SSH キー
Red Hat Certified Engineer (RHCE) シリーズ 17 編です。RHCSA のセキュリティ手作業を Ansible で自動化する最後の記事として、ansible.posix.firewalld でポートとサービスを永続的に許可し、ansible.posix.seboolean と community.general.sefcontext で SELinux を扱い、authorized_key で SSH 公開鍵を配布する方法を整理します。firewall と selinux system role の代替手段、そして試験の定番である永続適用オプションまで一緒に押さえます。
Red Hat Certified System Administrator (RHCSA) #14 コンテナ管理: Podman、systemd integration (quadlet)
Red Hat Certified System Administrator (RHCSA) シリーズの 14 番目の記事です。Podman でイメージを検索して取得しコンテナを実行し、ポート・ボリューム・環境変数をマッピングして、一般ユーザーで rootless コンテナを動かす方法を整理します。続いて quadlet でコンテナを systemd サービスとして登録し、loginctl enable-linger で起動時の自動起動まで作る、RHCSA 定番の作業を扱います。