AlmaLinux 9 総合ガイド 第2章

第2章: AlmaLinux 9のインストールと初期設定


2.1 インストール前の準備

AlmaLinux9をインストールする前に、ハードウェア要件やインストールメディアの種類、メディアの取得・検証方法、USBメディア作成、さらにUEFI/BIOS設定を事前に確認します。これにより、インストール時のトラブルを最小化し、効率的に環境構築ができます。(AlmaLinux Wiki)

2.1.1 システム要件

  • 対応アーキテクチャ
    • x86_64(Intel/AMD)、ARM64(aarch64)、ppc64le、s390x をサポートします。(AlmaLinux Wiki)
  • ディスク容量
    • 最低 10 GB、推奨 20 GB 以上を確保してください。(AlmaLinux Wiki)
  • メモリ
    • 最低 1.5 GB、快適に動作させるには 2 GB 以上を推奨します。(AlmaLinux Wiki)
  • USBメディア
    • 最低 8 GB、安定した書き込みのため 12 GB 以上を推奨します。(AlmaLinux Wiki)
  • ネットワーク
    • Boot ISO(ネットワークインストール用)を使用する場合は、インターネット接続が必須です。(AlmaLinux Wiki)

💡ポイント:
事前に使用マシンのアーキテクチャとリソースを確認し、適切なメディアを選びましょう。特にクラウド環境ではディスクやメモリの割り当てをあらかじめ確定しておくとスムーズです。

2.1.2 インストールディスク・USBメディアの作成

ダウンロード方法

  • ミラーサイトから直接ダウンロード
    • 地理的に近いミラーを選択して高速取得。
  • Bittorrent
    • 大きなISOのダウンロードに最適。
  • curlコマンド例 (DVD ISO 9.5版を取得)
# root権限不要(ホームディレクトリに保存)
curl -O https://repo.almalinux.org/almalinux/9/isos/x86_64/AlmaLinux-9.5-x86_64-dvd.iso

ISOイメージの検証

  • 公開鍵の取得・インポート
curl -O https://repo.almalinux.org/almalinux/RPM-GPG-KEY-AlmaLinux-9
gpg --import RPM-GPG-KEY-AlmaLinux-9
  • チェックサムリストの取得・署名検証
curl -O https://repo.almalinux.org/almalinux/9/isos/x86_64/CHECKSUM
gpg --verify CHECKSUM
  • SHA256チェック
sha256sum AlmaLinux-9.5-x86_64-dvd.iso
# 出力されたハッシュ値がCHECKSUMに記載のものと一致すればOK

💡ポイント:
チェックサム検証を省略すると、破損ファイルや改ざんのリスクがあります。必ず毎回実行しましょう。

USBメディアの作成

  • Linux(rootユーザーで実行)

  1.USBデバイス名を確認

lsblk
sudo fdisk -l

  2.ddコマンドで書き込み

sudo dd if=AlmaLinux-9.5-x86_64-dvd.iso of=/dev/sdX bs=4M status=progress conv=fsync
sync
  • macOS
# デバイス名確認(例: disk2)
diskutil list

# 書き込み
sudo dd if=AlmaLinux-9.5-x86_64-dvd.iso of=/dev/rdisk2 bs=4M status=progress conv=sync
sync

または balenaEtcher を使ってGUI操作で簡単に書き込めます。

  • Windows
    • RufusFedora Media Writer(GUI)でISOを選択し、USBを指定して「Start」をクリックするだけです。(AlmaLinux Wiki)

💡ポイント:
ddコマンドは強力なツールであり、誤ったデバイスを指定するとシステムディスクを上書きしてしまう危険があります。初心者の方やコマンドラインに不慣れな方は、balenaEtcherやRufusなどのGUIツールを使用することを推奨します。これらのツールは、より直感的で安全にUSBメディアを作成できます。

2.1.3 UEFI/BIOSの設定

  • 起動順序の変更
    • BIOS/UEFI設定画面で、USBメディア(またはDVDドライブ)を最上位にセットします。(AlmaLinux Wiki)
  • Firmware interfaces
    • AlmaLinux9はBIOS/UEFIの両方式に対応しています。(AlmaLinux Wiki)
  • Secure Boot
    • Secure BootはAlmaLinux 9でサポートされていますが、使用するハードウェアやファームウェアの設定によっては、追加の設定や一時的な無効化が必要な場合があります。特に、独自のカーネルやドライバを使用する場合は、Secure Bootの設定を確認し、必要に応じて対応してください。(AlmaLinux Wiki)
  • Legacy/CSMモード
    • 古いハードウェアや一部のRAIDコントローラではLegacyモードが必要な場合があります。マシンのマニュアルを参照してください。

💡ポイント:
各メーカーごとに設定方法が異なるため、DellならF2、HPならF10、LenovoならF1など、起動時のプロンプトやマニュアルを確認しましょう。また、Secure Bootの設定はインストール後にSELinuxやファイアウォールのセキュリティ設定を円滑に行うための前提にもなります。

2.2 インストーラー(Anaconda)の概要

AlmaLinux 9 のインストーラーである Anaconda は、Red Hat 系ディストリビューション共通の公式ツールです。インストール前に言語・キーボード・パーティション・ネットワーク・セキュリティ設定(SELinux)などを集中管理し、一貫性のある環境構築を支援します。

2.2.1 Anacondaの役割

  • Red Hat 系ディストリビューション(RHEL、CentOS、AlmaLinuxなど)で採用される公式インストーラーです。GUIおよびテキストUIを提供し、ユーザー入力をガイドします (インフラエンジニアの羅針盤)
  • 内部で DNF を利用し、BaseOS/AppStream リポジトリから必要なパッケージを取得・インストールします (Linux @ CERN)
  • インストール中の設定を /root/anaconda-ks.cfg に保存し、同じ設定での再現や Kickstart による自動化を可能にします (Red Hat Documentation)

💡ポイント:
Anaconda はインストール前の各種設定を一元的に扱い、手順の抜け漏れを防ぎます。特に SELinux はデフォルトで enforcing モードが有効化されるため、インストール直後から堅牢なセキュリティ設定が確立されます (Red Hat Documentation)

2.2.2 提供インターフェース

  • グラフィカルモード
    • マウス操作が可能で視覚的に分かりやすい画面を提供。初心者~中級者におすすめ
  • テキストモード
    • コンソール環境やGUI非対応環境で動作。VGAドライバの問題がある場合や最小構成での利用に向く

💡ポイント:
GUIモードが利用できない環境では、ブート時に inst.text を付与してテキストモードで起動してください。

2.2.3 ブートオプションと起動設定

Anaconda の起動時には、以下のようなカーネル引数を指定して動作を制御できます (anaconda-installer.readthedocs.io):

# (デフォルト)グラフィカルモードで起動
# テキストモードで起動
inst.text

# Kickstartファイルを指定して無人インストール
inst.ks=http://example.com/ks.cfg

# ネットワーク設定をブート時に指定
ip=192.168.1.100::192.168.1.1:255.255.255.0:server01:eth0:none

# GUIモードを明示(通常不要)
inst.graphical

💡ポイント:
起動オプションを適切に組み合わせることで、初期ネットワーク設定や無人インストールを柔軟に制御できます。

2.2.4 Kickstartによる自動インストール

  • Kickstart はキーと値のペアで答案ファイルを自動生成し、Anaconda に読み込ませる仕組みです (Red Hat Documentation, Medium)
  • inst.ks= オプションで URL/ローカルパスを指定し、完全無人インストールが可能です
  • Kickstart ファイルにはパーティション設定、パッケージ選択、ユーザー作成、SELinux 設定(例:selinux --enforcing)などを記述します

💡ポイント:
Kickstart を活用すると、大規模環境でも一貫性のある AlmaLinux9 サーバを高速にデプロイできます。

2.2.5 カスタマイズ機能とアドオン

Anaconda はさらに拡張機能(アドオン)やブートメニューのカスタマイズが可能です (Red Hat Documentation):

  • ブートメニューの外観変更(色、背景、エントリ追加)
  • グラフィカルインターフェースのロゴ・背景差し替え
  • 独自 Kickstart コマンドや画面の追加

これにより、自社専用のインストーラー UI や自動化フローを構築できます。

💡ポイント:
大規模運用では、Anaconda アドオンを作成して一度に複数ホストへ同一設定を提供すると、管理工数を大幅に削減できます。

2.3 インストールの流れ(詳細)

AlmaLinux9 のインストールでは、Anaconda の「Installation Summary(インストール概要)」画面を起点に各種設定を順番に進めます。ここでは以下の5つのステップに分けて詳しく解説します。

  • 2.3.1 インストール概要画面(Installation Summary)
  • 2.3.2 日付と時刻、キーボードレイアウト
  • 2.3.3 インストール先ディスク(パーティショニング)
  • 2.3.4 ネットワークとホスト名
  • 2.3.5 ソフトウェアの選択

2.3.1 インストール概要画面(Installation Summary)

  1. ブート後、言語選択を済ませると「Installation Summary」画面が表示されます。ここにはインストール完了までに設定すべき項目が一覧化されています。
  2. 未設定の項目には赤い警告アイコンが付き、完了している項目にはチェックマークが表示されます。(AlmaLinux Wiki)
  3. スムーズに進めるには、上から順に未設定項目を開き、「Done」ボタンで戻る流れが最もミスが少なくおすすめです。

💡ポイント:
警告アイコンが残っているとインストールが開始できないため、必ずすべてのセクションを「Done」で完了させてから「Begin Installation」をクリックしてください。

2.3.2 日付と時刻、キーボードレイアウト

  • Time & Date
    • 地図またはドロップダウンリストからタイムゾーンを選択
    • 「Network Time」をオンにすると、NTP サーバー経由で常に正確な時刻が設定されます(AlmaLinux Wiki)
  • Keyboard
    • 使用するキーボードレイアウトを追加・削除可能
    • 日本語 (Japanese)、英語 (US) など複数指定し、切り替えキーも確認
  • Language Support
    • インストール時の言語以外を追加したい場合に設定

💡ポイント:
タイムゾーンとキーボードはインストール後のトラブルに直結しやすい重要項目です。特にサーバ用途でログのタイムスタンプがずれないよう、NTP は必ず有効化しましょう。

2.3.3 インストール先ディスク(パーティショニング)

  • 自動パーティショニング
    • デフォルトで /boot/swap を自動生成
  • カスタムパーティショニング
    • LVM、暗号化(LUKS)、/home 分割など柔軟に設定可能
  • パーティション例
┌───────────────┐
│ /boot  ── 1 GB  (ext4)     │
│ /      ── 10 GB~   (xfs)  │
│ swap   ── RAM×1~2倍      │
│ /home  ── 残り領域         │
└───────────────┘
  • データ暗号化
    • 「Encrypt my data」を選択すると、LUKS で全ディスクを暗号化
    • パスフレーズ入力が求められます(AlmaLinux Wiki)

💡ポイント:
セキュリティ設定の一環として、機密性の高いデータを取り扱う場合は必ずディスク暗号化を有効化してください。RHEL クローン環境の強みを活かせます。

2.3.4 ネットワークとホスト名

  • NIC の有効化
    • インストール中に自動検出されたネットワークデバイスをオンに
  • DHCP/静的 IP
    • DHCP のままでも問題ありませんが、サーバ用途では静的 IP を推奨
  • ホスト名
    • FQDN 形式(例: server01.example.local)で指定
  • IPv6/DNS
    • 必要に応じて IPv6 を有効化し、DNS サーバーを設定できます(AlmaLinux Wiki)

💡ポイント:
ホスト名はインフラ管理やログ解析に影響します。インストール時点で正確な名前を付けておくと、後続の設定や Ansible/Chef 等による構成管理がスムーズです。

2.3.5 ソフトウェアの選択

  • Base Environment
    • Minimal Install
    • Server with GUI
    • Workstation
    • Virtualization Host
    • Custom Operating System
  • Add-Ons for Selected Environment
    • 開発ツール (Development Tools)、Web サーバー (Web Server) など
  • グループインストールの例
sudo dnf groupinstall "Development Tools"
  • インストール後のカスタマイズ
    • dnf updatednf install で必要なパッケージを追加可能です(AlmaLinux Wiki)

💡ポイント:
Base Environment と Add-Ons の組み合わせで最小構成から高機能サーバまで自在に構築できます。不要なパッケージを省きつつ、dnf で後から足りない機能を追加する運用が効率的です。

2.4 rootパスワードとユーザーアカウント作成

システム管理の起点であるrootアカウントと、日常的な操作を行う一般ユーザーアカウントの設定を詳しく解説します。

2.4.1 rootパスワード設定

Anacondaの「Installation Summary」画面で最初に設定するrootパスワードは、システムで最も強力な権限を持つアカウントを保護するため、必ず強固なものを設定します (AlmaLinux Wiki, Red Hat Documentation)。

パスワードポリシー

  • 長さ:最低12文字以上を推奨
  • 文字種:大文字、小文字、数字、記号を混在
  • 再利用防止:過去5回分のパスワードを再利用不可
  • 連続文字制限:同一文字・同一クラスの連続を3文字以内

上記は/etc/security/pwquality.confで細かく調整可能です (Red Hat Customer Portal, Red Hat Customer Portal)。

GUIでの設定

  1. 「Root Password」アイコンをクリック
  2. 「Root Password」に入力、同じものを「Confirm」に再入力
  3. 「Done」をクリックして戻る
    • 「Weak password」警告が出た場合は再度強化が必要です (AlmaLinux Wiki)。

Kickstartでの設定

# ks.cfg 中の例
rootpw --iscrypted $6$randomsalt$XyZ...   # あらかじめopenssl等でハッシュ化したパスワードを指定
  • --iscrypted:ハッシュ値をそのまま使う
  • --plaintextを使うと平文パスワード指定も可能ですが推奨されません (Red Hat Documentation)。

インストール後のCLIでの変更
以下はrootユーザーで実行し、rootパスワードを再設定します。

# passwd root
  • 実行するとrootパスワードの変更プロンプトが表示されます (GleSYS)。

💡ポイント

  • SSHでのrootログインは/etc/ssh/sshd_configPermitRootLogin noで禁止し、sudoユーザー経由で管理するとセキュリティが向上します。
  • SELinuxはデフォルトでenforcingモードです (Red Hat Documentation)。

2.4.2 ユーザーアカウント作成

日常運用で使用する一般ユーザーはsudo権限付きで作成し、直接rootアカウントを使わない運用を推奨します。

Anaconda GUIでの設定

  1. 「User Creation」アイコンをクリック
  2. Full name, User name, Password, Confirm passwordを入力
  3. 「Make this user administrator」にチェックを入れるとwheelグループへ追加
  4. 必要に応じて「Require the password to use this account」を外し、自動ログインも可能
  5. 「Done」をクリックして戻る (AlmaLinux Wiki)

Kickstartでの設定

# ks.cfg 中の例
user --name=alice --password=$6$... --iscrypted --groups=wheel --shell=/bin/bash
  • --groups=wheel:sudo権限付与
  • --home=/home/alice:ホームディレクトリの場所を指定可能 (Pykickstart)。

インストール後のCLIでの作成
以下はrootまたはsudoユーザーで実行します。

# useradd bob
# passwd bob
# dnf install -y sudo             # sudo未インストールの場合
# usermod -aG wheel bob           # sudo権限を付与
# id bob                          # ユーザー情報を確認
  • useradd:ユーザー追加
  • passwd:パスワード設定
  • usermod -aG wheelwheelグループへ追加しsudoを許可 (Red Hat Documentation, JumpCloud)。

💡ポイント

  • 一般ユーザーはwheelグループ経由でのsudo運用を基本とし、rootログインを極力避けましょう。
  • ホームディレクトリはumaskやSELinuxコンテキストを保持するため、Anaconda/useraddで自動生成させると設定ミスを防げます (Red Hat Documentation)。

2.5 インストール開始と進捗表示

AlmaLinux9のインストール概要画面で「Begin Installation」をクリックすると、Anacondaによるインストール処理が開始されます。設定内容に問題がないか最終確認してから進めましょう。

💡ポイント: ここから先は中断すると最初からやり直しとなるため、必ずすべての設定を「Done」で完了させてから開始してください。

2.5.1 インストール開始操作

  • 「Begin Installation」ボタンをクリックします。
  • ディスクレイアウト、ネットワーク、ソフトウェア選択、rootパスワード、ユーザー情報などが最終確認され、インストールが自動で進行します (Red Hat Documentation)。
  • 初回は File System Setup から順番に各ステージが実行され、Anacondaが選択されたパッケージ群を dnf で展開・インストールします (LFCS認定準備 eBook)。

2.5.2 進捗画面の構成と各ステージ

Anacondaの進捗画面では、大きく以下のステージを順に処理し、ステータスバーとパーセンテージで状況を表示します (Red Hat Documentation):

  1. File System Setup
  2. Install package and data
  3. Install and configure boot loader
  4. Configure newly installed system
  • File System Setup: パーティション生成、フォーマット、LVM構成やディスク暗号化(LUKS)の適用を行います (Fedora Documentación)。
  • Install package and data: BaseOS/AppStreamリポジトリからパッケージを取得し、dnfを使ってインストールします (LFCS認定準備 eBook)。
  • Install and configure boot loader: GRUB2をEFIシステムパーティション(UEFI環境)またはMBR(BIOS環境)に書き込みます (Red Hat Documentation)。
  • Configure newly installed system: ユーザー作成、サービス有効化、SELinuxポリシーの適用など、インストール後の初期構成を実行します (Red Hat Documentation)。

💡ポイント:
進捗バーが一時的に停滞しても裏側では大量のパッケージ展開やトリガースクリプト実行が続いているため、とくに多くのパッケージ選択時は時間がかかることを理解しておきましょう。

2.5.3 ログ出力と仮想コンソール

インストール中の詳細な処理状況はGUIだけでなく、仮想コンソールでも確認できます (Fedora Documentación):

  • Ctrl+Alt+F2 (tty2):rootシェルプロンプト
  • Ctrl+Alt+F3 (tty3):/tmp/anaconda.log/tmp/storage.log/tmp/packaging.log の出力
  • Ctrl+Alt+F4 (tty4):/tmp/syslog のカーネル・ハードウェアログ
  • Ctrl+Alt+F5 (tty5):/tmp/program.log の外部プログラム出力

インストール完了後、これらのログは /var/log/anaconda/ 以下にコピーされるため、失敗時のトラブルシューティングに活用できます (Oracle Docs)。

2.5.4 SSH経由でのリモート監視

Kickstartや手動ブート時に以下のブートオプションを指定すると、インストール中に sshd が起動し、リモートから進捗監視やログ確認が可能です (Anaconda):

inst.sshd            # インストール中にsshdを起動
sshpw=<password>     # rootパスワードを設定
  • ネットワーク設定済みのIPアドレスで root にSSHログインできます。
  • 例: 別端末から ssh root@192.168.1.100 でログインし、tail -f /tmp/packaging.log などを実行して進捗を確認します。

2.5.5 所要時間とトラブルシューティング

  • 所要時間: Minimalインストールで約3〜5分、DVD ISO選択時は約10〜15分。CPU性能・ディスク速度・ネットワーク帯域により変動します (LFCS認定準備 eBook)。
  • 進捗が止まった場合:
    • ネットワークミラーへの接続確認(pingdigなど)
    • ISO検証オプション(例:inst.dd)でメディア整合性を再チェック
    • 仮想コンソールで /tmp/packaging.log/tmp/storage.log にエラーメッセージがないか確認

💡ポイント:
読み込み速度が遅い場合はUSBポートの変更や別ミラーの指定を試行し、安定した環境で再実行すると改善することがあります。

2.6 インストール完了後の初期ログイン

インストール処理が完了しシステムが再起動したら、最初に行うべきログイン操作と基本設定を詳しく解説します。

2.6.1 システム再起動とログイン画面

インストール完了後、Anaconda は自動的にシステムを再起動します。再起動後は以下のいずれかのログイン画面が表示されます。

  • CLI(Multi-User Target)
    • コンソールに login: プロンプトが表示され、ユーザー名とパスワードを入力してログイン
  • GUI(Graphical Target)
    • GNOME/KDE などのグラフィカルログイン画面が表示され、ユーザー名選択後にパスワードを入力

💡ポイント:
再起動が完了しない場合は、BIOS/UEFI の起動順序設定を再確認し、インストールメディアではなく新規インストールしたディスクから起動されているか確認しましょう (AlmaLinux Wiki, AlmaLinux Wiki)

2.6.2 デフォルトターゲットの確認と切り替え

ログイン先のターゲット(実行レベル)は systemd の「デフォルトターゲット」で決まります。

# 実行ユーザー: sudo権限を持つ一般ユーザーまたはroot
$ sudo systemctl get-default
multi-user.target
  • multi-user.target → CLIログイン
  • graphical.target → GUIログイン

GUIが必要な場合は以下で変更します。

# 実行ユーザー: rootまたはsudo権限ユーザー
$ sudo systemctl set-default graphical.target
Removed /etc/systemd/system/default.target.
Created symlink /etc/systemd/system/default.target → /usr/lib/systemd/system/graphical.target.

💡ポイント:
Raspberry Pi 環境などでは、GUIを導入後に必ず systemctl set-default graphical を実行しておくと、次回以降自動的にデスクトップ画面から起動できます (Server World, AlmaLinux Wiki)

2.6.3 システム更新とサービスステータスの確認

初回ログイン後、まずはシステムの最新化と主要サービスの状態確認を行います。

  • システム更新
    • すべてのパッケージを最新版に揃え、セキュリティアップデートも適用します (AlmaLinux Wiki)
# 実行ユーザー: 一般ユーザー (sudo 権限を利用)
$ sudo dnf update -y
  • ファイアウォール状態確認
    • running と表示されれば起動中です。起動していない場合は sudo systemctl enable --now firewalld で有効化できます (AlmaLinux Wiki)
# 実行ユーザー: sudo権限ユーザー
$ sudo firewall-cmd --state
running

💡ポイント:
dnf --security update を使うとセキュリティパッチのみを絞って適用できるため、運用ポリシーに応じて使い分けるとよいでしょう (AlmaLinux Wiki)

2.6.4 ネットワークとホスト名の再確認

インストール時に設定したネットワークとホスト名が正しく動作しているか、以下のコマンドで再チェックします。

  • ネットワーク接続確認(CLI環境)
# 実行ユーザー: sudo権限ユーザー
$ nmcli device status
DEVICE  TYPE      STATE      CONNECTION
eth0    ethernet  connected  <your-connection-name>
  • ホスト名確認・変更
# 実行ユーザー: sudo権限ユーザー
$ hostnamectl status
   Static hostname: server01.example.local
   Icon name: computer-vm
    Chassis: vm
 Machine ID: ...
    Boot ID: ...
$ sudo hostnamectl set-hostname new-hostname.example.local

💡ポイント:
ホスト名はインフラ管理やログ集約ツールで一意に識別されるため、FQDN形式で設定しておくと運用がスムーズです (AlmaLinux Wiki)

2.7 Kickstartによる自動インストール(参考)

インタラクティブな手動インストールを省略し、あらかじめ定義した設定に沿って完全無人で AlmaLinux9 をデプロイするのが Kickstart です。大規模環境やクラウドプロビジョニングに適し、再現性の高いサーバ構築を実現します。

2.7.1 Kickstart の概要とメリット

  • 自動化: インストーラーの各設定(言語、パーティション、ネットワーク、ユーザーなど)をファイルに記述し、手動操作なしで実行可能です (AlmaLinux Wiki)。
  • 再現性: /root/anaconda-ks.cfg をベースにすることで、検証済みの手順を他ホストへ共通適用できます (AlmaLinux Wiki)。
  • 効率化: 大量サーバ配備時の工数削減、標準化された設定で運用トラブルを低減します。

💡ポイント:
まずは仮想マシン上で手動インストールし、生成された /root/anaconda-ks.cfg を基にカスタマイズするとミスを防げます (AlmaLinux Wiki)。

2.7.2 Kickstart ファイルの用意とホスティング

  1. ファイル取得
    • 手動インストール後、/root/anaconda-ks.cfg をコピーして雛形とします。
  2. ホスティング方法
    • HTTP サーバ(python -m http.server など)に置き、起動時オプションで URL を指定
    • PXE+TFTP 環境では iPXE スクリプトに inst.ks=http://.../ks.cfg を埋め込みます (AlmaLinux Wiki)。
# HTTP サーバ起動例(ks.cfg があるディレクトリで実行)
python -m http.server 8000

2.7.3 Kickstart ファイルの基本構成

#version=DEVEL  # バージョン指定(省略可)
# インストールソース
url --url="https://repo.almalinux.org/almalinux/9/BaseOS/x86_64/kickstart/"

# ネットワーク設定
network --bootproto=dhcp --device=link --hostname=server01.example.local

# 認証・セキュリティ
auth --useshadow --passalgo=sha512
selinux --enforcing
firewall --enabled --service=ssh

# パーティション(LVM + LUKS暗号化例)
part pv.01 --fstype="lvmpv" --size=1 --grow
volgroup vg0 pv.01
logvol /     --vgname=vg0 --name=lv_root --fstype="xfs" --size=4096
logvol swap  --vgname=vg0 --name=lv_swap --fstype="swap" --size=2048

# パッケージグループ
%packages
@^Minimal Install
@Development Tools
chrony
%end

# ポスト処理
%post --log=/root/ks-post.log
dnf config-manager --set-enabled crb
dnf clean all
%end
  • コマンドセクション: urlnetworkauthselinuxfirewall など (AlmaLinux Wiki)。
  • パッケージセクション: %packages%end 内でグループ/個別パッケージ指定 (AlmaLinux Wiki)。
  • ポストセクション: %post でインストール後に任意スクリプトを実行可能です (AlmaLinux Wiki)。

2.7.4 ネットワーク設定の詳細例

  • DHCP
network --bootproto=dhcp --device=eth0 --activate
  • 静的 IP
    • 静的設定では /etc/NetworkManager/system-connections/ にキー配下のファイルが生成されます (AlmaLinux)。
network --bootproto=static --device=eth0 \
        --ip=192.168.10.50 --netmask=255.255.255.0 \
        --gateway=192.168.10.1 --nameserver=8.8.8.8 \
        --hostname=server01.example.local

💡ポイント:
サーバ用途では静的 IP を推奨。ホスト名を FQDN 形式で指定すると、後続の構成管理ツール利用が容易になります。

2.7.5 リポジトリ設定例

  • BaseOS/AppStream
repo --name="almalinux9-baseos" \
     --mirrorlist="https://mirrors.almalinux.org/mirrorlist/9/baseos"
repo --name="almalinux9-appstream" \
     --mirrorlist="https://mirrors.almalinux.org/mirrorlist/9/appstream"
  • CRB/EPEL
repo --name="crb" \
     --mirrorlist="https://mirrors.almalinux.org/mirrorlist/9/crb/"
repo --name="epel9" \
     --mirrorlist="https://mirrors.fedoraproject.org/mirrorlist?repo=epel-9&arch=x86_64"

リポジトリはインストーラー実行中のみ有効で、%post 内で永続化設定を追加するとインストール後も利用できます (AlmaLinux)。

2.7.6 無人インストールの起動方法

  • ブートオプション例
linux   vmlinuz inst.ks=http://10.0.0.1/ks.cfg inst.repo=https://repo.almalinux.org inst.text
initrd  initrd.img
  • PXE/iPXE 例
kernel vmlinuz initrd=initrd.img \
       inst.ks=http://10.0.0.1/ks.cfg \
       inst.repo=https://repo.almalinux.org
initrd initrd.img
boot

💡ポイント:
inst.text でテキストモード、inst.graphical で GUI モードを強制できます。Kickstart の URL、リポジトリ URL は必ず正しいものを指定してください。

2.7.7 トラブルシューティング例

  • Secure Boot 下でのモジュールロード失敗
    EFI 環境で LUKS や XFS モジュールが読み込まれず起動中断する場合があります。Secure Boot 無効化で回避可能です (AlmaLinux)。
  • PXE+isolinux の場合のタイムアウト
    isolinux 経由だとデバイス検出タイムアウトが発生することがあり、UEFI/GRUB2 を利用すると安定します (AlmaLinux)。
  • ログ確認
    仮想コンソール Ctrl+Alt+F3/tmp/packaging.log/tmp/storage.log を監視すると原因解析に役立ちます (AlmaLinux Bugs)。

Kickstart による自動インストールは、標準化・効率化を実現する強力な手法です。手動インストールから生成した設定をブラッシュアップし、ネットワーク・パーティション・セキュリティ・パッケージ管理まで一元化。大規模デプロイやクラウド環境での AlmaLinux9 構築にぜひご活用ください。

2.8 学習のまとめ

ここまでの内容を振り返り、AlmaLinux9のインストールと初期設定のポイントを整理します。初心者でも全体の流れを把握しやすいよう、各ステップごとに要点とSEOキーワードを交えて詳しく解説します。

2.8.1 インストール前の準備の要点

  • システム要件確認
    • 対応アーキテクチャ(x86_64、ARM64など)、ディスク容量(最低10 GB、推奨20 GB以上)、メモリ(最低1.5 GB、推奨2 GB以上)を事前に確認。
  • インストールメディア選択
    • DVD ISO/Minimal ISO/Boot ISOの特徴と用途を理解し、環境に応じて使い分け。
  • ISO検証とUSB作成
    • gpgでGPG鍵による署名検証、sha256sumによるチェックサム照合を必ず実行。
    • ddやbalenaEtcher、RufusなどでUSBメディアを安全に作成。
  • UEFI/BIOS設定
    • 起動順序の設定、Secure Bootの有効/無効化、Legacyモードの確認。

💡ポイント:
インストール前の準備を怠ると、後工程でのトラブルシューティングに余計な時間がかかります。

2.8.2 Anaconda(インストーラー)の理解

  • Anacondaの役割
    • RHELクローン共通のインストーラーで、dnfによるパッケージ取得・SELinux enforcing設定を一元管理。
  • 提供インターフェース
    • GUIモード/テキストモードを切り替え可能。特にGUIは直感的で初心者向け。
  • ブートオプション
    • inst.textinst.ks=ip=などで無人インストールや事前ネットワーク設定が可能。
  • Kickstart連携
    • /root/anaconda-ks.cfgを元に自動化ファイルを作成し、inst.ksで読み込ませることで完全無人インストールを実現。

💡ポイント:
Anacondaは“何を・なぜ・どうやって”をガイドし、手順の抜け漏れを防ぎます。

2.8.3 インストールの流れ(Installation Summary)

  • 画面構成
    1. 日付と時刻/キーボード
    2. インストール先ディスク
    3. ネットワークとホスト名
    4. ソフトウェア選択
    5. rootユーザーと一般ユーザー設定
  • 進捗ステージ
    • File System Setup → パッケージ展開 → ブートローダー設定 → 新規システム構成
  • 仮想コンソール
    • Ctrl+Alt+F2–F5で詳細ログをリアルタイム確認可能。

💡ポイント:
警告アイコンをすべてクリアしてから「Begin Installation」をクリックしましょう。

2.8.4 アカウントとセキュリティ設定

  • rootパスワード
    • 最低12文字以上、英大・英小・数字・記号を混在させた強固なパスワードを設定。
    • SSH経由のrootログインは/etc/ssh/sshd_configで禁止し、sudo運用を基本に。
  • 一般ユーザー作成
    • wheelグループに追加してsudo権限を付与。useraddusermodまたはAnaconda GUIで設定。
  • SELinuxとファイアウォール
    • デフォルトでSELinuxはenforcing、Firewalldはenabledfirewall-cmdで状態確認。

💡ポイント:
直接rootログインを避け、dnf updatednf installで不要パッケージを抑えつつセキュリティ設定を強化します。

2.8.5 インストール完了後の初期チェック

  • ターゲット設定
    • systemctl get-defaultでCLI/GUI起動を確認。必要に応じてgraphical.targetへ変更。
  • システム更新
sudo dnf update -y      # 全パッケージ最新化
sudo dnf --security update
  • ネットワーク確認
nmcli device status     # 接続状況チェック
hostnamectl             # ホスト名確認/変更
  • ログ確認
    • /var/log/anaconda/以下にインストーラーログを保存。トラブル時に参照。

💡ポイント:
タイムゾーンやホスト名を正確に設定しておくと、監視・ログ解析ツールとの連携が容易になります。

2.8.6 Kickstart無人インストールまとめ

  • Kickstartファイル構成
    • urlnetworkauthselinuxfirewallpart%packages%post セクション。
  • 起動方法
inst.ks=http://<サーバ>/ks.cfg inst.repo=https://repo.almalinux.org inst.text
  • 利点と運用
    • 大規模デプロイに最適。手動でのAnaconda設定を基に自動化ファイルをブラッシュアップ。
    • PXE+TFTP環境やクラウドinitとの連携でさらなる運用効率化が可能。

💡ポイント:
まずは手動インストールで生成された/root/anaconda-ks.cfgをテンプレートに、テスト環境で動作確認を行ってから本番運用に導入しましょう。

2.9 さらなる学習リソース

AlmaLinux 9 のインストール・運用をさらに深く学ぶための公式ドキュメントやコミュニティリソースをカテゴリ別にまとめました。

2.9.1 公式ドキュメント

2.9.2 インストール自動化/Kickstart リソース

2.9.3 セキュリティ&SELinux ガイド

2.9.4 パッケージ管理(DNF)リファレンス

2.9.5 コミュニティ&その他リソース

これらのリソースを活用して、AlmaLinux 9 の理解をさらに深めてください。