
こんにちは!いつもブログを読んでいただき、ありがとうございます。
LinuC 101・102に見事合格された皆さん、本当にお疲れ様でした!そして、いよいよレベル2への挑戦ですね。
📝 まだ101・102の勉強中の方は → LinuC 101・102 合格体験記はこちら!
受験者にとって定番といわれる参考書「あずき本」も購入しました!やる気満々の今のうちに、サクサク勉強を進めていきたいと思います♪
レベル2の最初のテーマは 「2.01 システムの起動とLinuxカーネル」 。名前だけ聞くと「うっ…難しそう…」って構えちゃいますよね(笑)。でも、ここはLinuxがどうやって目覚めるかを知る、とっても大切な「基本のキ」なんです。
今日は、5つあるテーマのうち、前半の3つを整理してみました。
私も勉強し始めたばかりなので、間違えているかもしれませんが(笑)一緒に頑張って合格しましょう!
📌今回は前半の3つのサブテーマを解説します!
📌 この記事で扱う範囲
- ブートプロセスとGRUB ← 今日はココ!
- システム起動のカスタマイズ ← 今日はココ!
- Linuxカーネルの構成要素 ← 今日はココ!
- Linuxカーネルのコンパイル → 次回の記事で
- カーネル管理とトラブルシューティング → 次回の記事で
Linuxが起動するまでの物語
電源ボタンを押してから、いつものログイン画面が出るまで。実は裏側ではこんな順番でバトンタッチが行われているんです。
電源ON
↓
BIOS / UEFI(ハードウェアのチェック!準備OK?)
↓
ブートローダー(GRUB2)(OSを呼び出すよ!)
↓
カーネル(Linuxの心臓部が起動!)
↓
initramfs(一時的なファイルシステムを展開)
↓
systemd(サービスを一斉にスタート!)
↓
ログイン画面(お待たせしました♪)
この流れ、試験でもよく問われるので、頭の中でシミュレーションしてみてくださいね。
BIOS と UEFI の違い
| 項目 | BIOS | UEFI |
|---|---|---|
| 起動方式 | MBR(先頭512バイト) | GPTパーティション対応 |
| ディスク | 最大2TBまで | 2TB以上もOK! |
| 特徴 | 昔ながらの方式 | 今の主流。セキュアブート対応 |
★ここがポイント!試験では「MBRはディスクの先頭512バイトにある」という点がよく出ます。
GRUB2(ブートローダー)
現在の主流は「GRUB2」です。古くから使われてきた GRUB Legacy を利用する機会は少ないかもしれませんね。
重要なファイルと場所
| ディストリビューション | 設定ファイルのパス |
|---|---|
| RHEL/CentOS系 | /boot/grub2/grub.cfg |
| Debian/Ubuntu系 | /boot/grub/grub.cfg |
共通のファイル:
/etc/default/grub:設定を変えたい時はここを編集します/etc/grub.d/:設定ファイルを生成するためのスクリプトが入っています
⚠️
grub.cfgは直接編集しちゃダメ! 下のコマンドで自動生成します。
設定を反映させるコマンド
# RHEL/CentOS系の場合
grub2-mkconfig -o /boot/grub2/grub.cfg
# Debian/Ubuntu系の場合
update-grub
systemd って?
今のLinuxでは、カーネルが起きたあとの指揮官役を systemd が務めています。昔の仕組み(SysV init)に比べて、こんな良いところがあります。
- 起動が速い!(サービスを同時に並列起動できるから)
- 賢い!(必要なサービスを自動で判断して起動してくれる)
必須コマンド:systemctl
systemd の管理には systemctl コマンド を使います。実務でもほぼ毎日使うコマンドのため、覚えましょう♪
# 基本操作
systemctl start httpd # 起動
systemctl stop httpd # 停止
systemctl restart httpd # 再起動
systemctl status httpd # 状態確認
# 自動起動の設定
systemctl enable httpd # 電源ONで自動起動
systemctl disable httpd # 自動起動しない
⚠️ 「disable」と「mask」の違いに注意
disable:自動起動をOFFにするだけ(手動なら起動できる)mask:サービスを完全に無効化(手動でも起動できなくする!)「絶対に起動させたくない」時は
maskを使います。
systemd ターゲット(Target)
昔の「ランレベル」という考え方が、今は「ターゲット」に変わりました。
| ターゲット | 旧ランレベル | どんな状態? |
|---|---|---|
poweroff.target | 0 | シャットダウン |
rescue.target | 1 | シングルユーザー(復旧用) |
multi-user.target | 2,3,4 | CUIモード(サーバー用途はこれ) |
graphical.target | 5 | GUIモード(普段のPC画面) |
reboot.target | 6 | 再起動 |
emergency.target | – | 緊急モード(rescueより最小限) |
# デフォルトを確認
systemctl get-default
# デフォルトを「CUIモード」に変更
systemctl set-default multi-user.target
# 今すぐ切り替え(再起動なし)
systemctl isolate rescue.target
カーネルのお仕事
「カーネル」はOSの核となる部分。ハードウェア(機械)とソフトウェア(アプリ)の仲介役をしてくれる、縁の下の力持ちです。
主な4つの役割はこれ!
- プロセス管理(CPUの割り当て)
- メモリ管理(メモリの貸し出し・回収)
- デバイスドライバ(ハードウェアの操作)
- システムコール(アプリからの依頼受付)
カーネルモジュール(ここ、試験に出ます!)
カーネルの機能を、必要な時だけカチャッと付け外しできる仕組みを「カーネルモジュール」と言います。全部入りだと重くなっちゃうので、必要なドライバだけ読み込むんですね。
覚えておきたいコマンド一覧
| コマンド | 何をするもの? |
|---|---|
lsmod | 今ロードされているモジュールを見る |
modinfo | モジュールの詳細情報を見る |
modprobe | おすすめ!依存関係も解決してロード・削除する |
insmod | ファイルパス指定でロード(依存関係は解決しない) |
rmmod | モジュールを削除(依存関係は気にしない) |
★ ここがポイント!
modprobeは賢くて、必要な関連モジュールも一緒に読み込んでくれますが、insmodは言われたことしかやりません。試験ではこの違いが問われますよ!
🎓 独学が不安な方は…
LinuCはPing-tと参考書で独学合格できますが、「仕事で使えるレベルまで体系的に学びたい」という方にはスクールも選択肢のひとつです。
【PR】▶ Linuxが学べるプログラミングスクールはこちら
![]()
![]()
まとめ
お疲れ様でした!今回はLinuxの起動からカーネルの仕組みまで、かなり濃い内容でしたね。
- ブートプロセス:BIOS→GRUB→カーネル→initramfs→systemd の流れ
- systemd:systemctl コマンドと、ターゲットの種類
- カーネル:4つの役割と、モジュール操作(modprobe と insmod の違い)
これらが頭に入っていれば、2.01セクションはバッチリです!
次回は、ちょっとマニアックな「カーネルの再構築(コンパイル)」についてまとめますね。
勉強、大変だと思いますが、焦らず一つずつ積み重ねていきましょう。
皆さんにとって、今日も素敵な1日になりますように!
👉 【次回記事】 2.01 システムの起動とLinuxカーネルのまとめ②
【PR】▶ もっと体系的に学びたい方はこちら
![]()
![]()
参考:LPI-Japan 公式試験範囲 https://linuc.org/linuc2/range/201.html