Instiq

1システムの起動とLinuxカーネル

問題集で演習する →用語集を見る →
  • 1.1ブートプロセスとGRUB

    電源投入からカーネル起動までのファームウェア層を深掘りします。BIOS/UEFI の違い、MBR と ESP(EFI System Partition)というディスクレイアウトの差、efibootmgr によるブートエントリ管理、GRUB2 の設定生成(grub-mkconfig / grub2-mkconfig)とインストール(grub-install / grub2-install)、initrd/initramfs の役割を押さえます。

  • 1.2システム起動のカスタマイズ

    systemd によるサービス管理の実務操作を深掘りします。設定ファイルの三層(/usr/lib/systemd/・/etc/systemd/・/run/systemd/)、systemctl によるユニット操作(status・list-units・start・stop・enable・disable・mask・unmask)、設定の差分確認 systemd-delta、rescue モードと emergency モードの使い分けを押さえます。

  • 1.3Linuxカーネルの構成要素

    カーネルイメージそのものの構造とソースツリーを学びます。圧縮された実行イメージ bzImage、その内部で使われる xz データ圧縮、カーネルソースが展開される /usr/src/linux/、付属ドキュメント /usr/src/linux/Documentation/ の位置づけを押さえます。

  • 1.4Linuxカーネルのコンパイル

    ソースからカーネルをビルドする一連の作業を学びます。設定ファイル .config とカーネル Makefile、設定用の make ターゲット(config/xconfig/menuconfig/gconfig/oldconfig)とビルド用ターゲット(all/bzImage/modules/modules_install)、クリーンアップの mrproper、パッケージ化ターゲット(rpm-pkg/binrpm-pkg/deb-pkg)、モジュールの配置先 /lib/modules/<kver>/、depmod や DKMS・Dracut(mkinitrd/mkinitramfs)との連携を押さえます。

  • 1.5カーネル実行時の管理とトラブルシューティング

    稼働中カーネルのモジュール管理と障害解析を学びます。モジュール操作(depmod・modinfo・modprobe・insmod・lsmod・rmmod)と設定 /etc/modprobe.d/、uname によるバージョン確認、procfs(/proc・/proc/sys/kernel/)と sysctl(/etc/sysctl.conf・/etc/sysctl.d/)によるカーネルパラメータ調整、sysfs(/sys)、ハードウェア確認(dmesg・lspci・lsdev・lsusb・journalctl)、udev ルールと udevadm monitor、kdump/kexec によるクラッシュダンプを押さえます。