AlmaLinux OS 10 のインストールと設定

 
このページでは,AlmaLinux OS 10 のインストール手順と,インストール後のシステム設定を説明する.

AlmaLinux OS は,Red Hat Enterprise Linux (RHEL) のソースコードから作られる,RHEL 互換のオペレーティングシステムである. かつて同じ位置付けにあった CentOS Linux は開発が終了し,CentOS Linux 7 は 2024年6月30日にサポート終了 (EOL) となった.AlmaLinux OS は,その後継として利用できるディストリビューションの一つである.

AlmaLinux OS 10 は,2030年5月31日まで active support2035年5月31日まで security support が予定されている. 本ページ執筆時点の最新のマイナーバージョンは AlmaLinux OS 10.2「Lavender Lion」(2026年5月公開,カーネル 6.12 系)である. マイナーバージョンは,次のマイナーバージョンの公開時に個別のサポートが終了するため,公開後は更新して最新のマイナーバージョンを使用する.

AlmaLinux OS 10 は,x86_64x86_64_v2aarch64ppc64les390x に対応する. RHEL 10 が x86-64-v3 以上を要求するのに対し,AlmaLinux OS 10 は x86_64_v2 向けのビルドを提供しており,2013年前後までの古い x86 マシンでも動作する

同等の選択肢

目次

サイト内の関連ページ「Linux のインストール」 の Web ページ

公式サイト: https://almalinux.org/

DistroWatch の Web ページ: https://distrowatch.com/table.php?distribution=almalinux

準備

システム設定項目(事前に決めておく事項/調べておく事項)

設定項目 データ型 本 Web ページでの設定値
OS の種類 文字列 AlmaLinux OS 10.2 (x86_64)
ホスト名(コンピュータの名前) 文字列 alma10
ドメイン名 文字列 kunihikokaneko.com
ネットワークアドレスは固定 IP アドレスか DHCP か ブール値 true または false ※ 1)
ホスト IP アドレス IP アドレス
ネットマスク(プレフィックス長) 文字列
デフォルトルータ(ゲートウエイ) IP アドレスまたは完全修飾形式のホスト名
DNS サーバ(ネームサーバ) IP アドレスまたは完全修飾形式のホスト名
初期ユーザのフルネーム 文字列 kunihiko kaneko
初期ユーザのユーザ名 文字列 kaneko
初期ユーザのユーザ ID 正の整数 8010
初期ユーザのパスワード 文字列 <秘密の文字列>
特権ユーザのパスワード (root のパスワード) 文字列 <秘密の文字列>
タイムゾーン 文字列 Asia/Tokyo
システムコンソールのキーマップ 文字列 日本語 (Japanese) または 英語 (U.S. English)

※ 1) ネットワークアドレスは固定 IP アドレスか DHCP か

上記の設定は,インストール後にも変更できる.

ハードウェアの条件

AlmaLinux OS 10 のダウンロード手順

  1. AlmaLinux の Web ページを開く.

    https://almalinux.org/get-almalinux/

  2. アーキテクチャとして x86_64(古い CPU の場合は x86_64_v2)を選ぶ.
  3. ISO イメージファイルの種類を選ぶ.
    • DVD ISO: オフラインでもインストールできる.デスクトップ環境や開発ツールを含む.
    • Minimal ISO: 最小構成でインストールする.パッケージは後からネットワーク経由で追加する.
    • Boot ISO: 起動のみを行い,パッケージはすべてネットワーク経由で取得する.
  4. ミラーサイトのリストが表示されるので,国内のミラーサイトからダウンロードする
  5. ダウンロードしたファイルの検証を行う.

    ISO イメージファイルと同じディレクトリにある CHECKSUM ファイルをダウンロードし,次のコマンドを実行する.表示された値が CHECKSUM ファイルに記載された値と一致することを確認する.

    sha256sum AlmaLinux-10.2-x86_64-dvd.iso
    

    Windows 上では,コマンドプロンプトで次のコマンドを実行し,表示された値が CHECKSUM ファイルに記載された値と一致することを確認する.

    certutil -hashfile AlmaLinux-10.2-x86_64-dvd.iso SHA256
    
  6. ISO イメージファイルを USB メモリに書き込む

    Windows 上では Rufus または balenaEtcher を使用する. Linux 上では,書き込み先のデバイス名(例: /dev/sdb)を lsblk コマンドで確認した上で,次のコマンドを実行する.

    lsblk
    sudo dd if=AlmaLinux-10.2-x86_64-dvd.iso of=/dev/sdb bs=4M status=progress oflag=sync
    

    指定したデバイスのデータは全て消える.デバイス名を取り違えないよう,lsblk の出力で容量とデバイス名を確認してから実行する.

AlmaLinux OS 10 のインストール手順

インストーラは Anaconda である.画面の左上から順に設定する形式ではなく,「インストール概要」の画面で各項目を選んで設定し,最後にインストールを開始する.

  1. インストールの開始前に,ネットワークケーブルを接続しておく

    インストール中にホスト名や IP アドレスの設定,および Boot ISO でのパッケージ取得を行うためである.

  2. 作成した USB メモリを接続し,マシンを起動する.

    起動デバイスの選択画面(多くの機種では起動直後の F12F11Esc キー)で,USB メモリを選ぶ.

  3. 起動画面では「Install AlmaLinux 10」を選び,Enter キーを押す.
  4. インストールに使用する言語の選択

    日本語 (Japanese) または English (English) を選び, 続行 (Continue) をクリックする.

  5. インストール概要の画面が表示される.以下,この画面の各項目を設定する.
  6. ソフトウェアの選択」をクリックする.

    ベース環境と,選択した環境用のアドオンを選び,「完了」をクリックする.

    設定例:デスクトップ環境で開発を行う場合

    ベース環境
        ワークステーション
    
    選択した環境用のアドオン
        開発ツール
        グラフィカル管理ツール
        ヘッドレス管理
        システムツール
    

    設定例:サーバとして使用する場合

    ベース環境
        最小限のインストール
    
    選択した環境用のアドオン
        標準
    
    参考: インストール後も,dnf コマンドでパッケージを追加できる.インストール時にすべてを選択する必要はない. 利用できるパッケージグループの一覧は次のコマンドで確認する.
    dnf group list
    sudo dnf group install "Development Tools"
    
  7. インストール先」をクリックする.

    インストール先のデバイスを選ぶ. 選択したデバイスのデータは全て消えるため,必要なファイルは事前にバックアップしておく.

    パーティションは「自動構成」を選ぶ.手動で設定する場合は「カスタム」を選ぶ.ファイルシステムは xfs が既定である.

    設定が終わったら「完了」をクリックする.

  8. ネットワークとホスト名」をクリックする.

    イーサネットが切断されている場合には,「オフ」から「オン」に変える.

  9. ホスト名を設定する.

    ここで設定するのは,ドメイン名付きの DNS ホスト名である(NIS ドメイン名ではない).本ページの設定値では alma10.kunihikokaneko.com となる. 「適用」をクリックする.

  10. IP アドレスなどを設定する

    設定」をクリックし,「IPv4 のセッティング」のタブを開く.

    DHCP を使う場合は,「方式」で「自動 (DHCP)」を選ぶ.

    固定 IP アドレスを使う場合は,「方式」で「手動」を選び, ホスト IP アドレスネットマスクデフォルトルータ(ゲートウエイ)DNS サーバ(ネームサーバ) を設定する.

    設定が終わったら「保存」をクリックし,「完了」をクリックする.

  11. 時刻と日付」をクリックする.

    タイムゾーンとして「アジア/東京」を選ぶ.時刻同期 (NTP) を有効にし,「完了」をクリックする.

  12. root パスワード」をクリックする.

    特権ユーザのパスワード(同じものを 2 箇所に)を設定し,「完了」をクリックする.

    AlmaLinux OS 10 では,root アカウントは既定で無効であり,この画面で明示的に有効にする必要がある.root で SSH ログインする場合は,同じ画面のチェックボックスで許可する.運用上は,root での SSH ログインを許可せず,一般ユーザでログインして sudo を使う.

  13. ユーザの作成」をクリックする.

    初期ユーザのフルネーム初期ユーザのユーザ名初期ユーザのパスワードを設定する.

    このユーザを管理者にする」にチェックを入れると,このユーザは wheel グループに追加され,sudo を使用できる.設定が終わったら「完了」をクリックする.

  14. インストールの開始」をクリックする.
  15. インストールの終了を確認し,「システムの再起動」をクリックする.

    再起動の前に USB メモリを抜く.

  16. ログイン画面が現れる

    これで,インストールは終了である.設定した初期ユーザのユーザ名とパスワードでログインする.

  17. ワークステーション環境では,初回ログイン時に GNOME の初期設定が動作する場合がある.

    言語,キーボードレイアウトと入力メソッド,位置情報サービス,オンラインアカウントを設定する.オンラインアカウントは「スキップ」でもよい.

  18. 端末を開くには,画面左上の「アクティビティ」をクリックし,「端末」または「Terminal」を検索して起動する.
    AlmaLinux OS 10 のデスクトップ環境は Wayland である. RHEL 10 から Xorg サーバは削除されたXwayland は含まれるため,X11 のアプリケーションは動作する). X11 のセッションを前提とするリモートデスクトップ製品や,画面キャプチャ・自動操作のツールは,Wayland に対応しているか確認してから導入する.

システム更新とリポジトリの追加

dnf を用いたシステム更新

端末を開き,次のコマンドを実行する.

sudo dnf check-update
sudo dnf upgrade
sudo shutdown -r now

「Is this ok [y/N]:」に対しては 「y」+ Enter キーを押す. 確認を省略する場合は,-y オプションを付ける.

AlmaLinux OS 10 のパッケージ管理コマンドは dnf である. CentOS 7 までの yum コマンドは dnf へのシンボリックリンクとして残されている場合があるが,dnf を使用する.

EPEL リポジトリの追加

EPEL (Extra Packages for Enterprise Linux) は,RHEL 互換環境向けの追加パッケージを提供するリポジトリである.次のコマンドで追加する.

sudo dnf install epel-release
sudo dnf upgrade

EPEL のパッケージの一部は,CRB (CodeReady Builder) リポジトリのパッケージを必要とする. AlmaLinux OS 10 では CRB は既定で有効である.無効になっている場合は,次のコマンドで有効にする.

sudo dnf config-manager --set-enabled crb
dnf repolist

(オプション)NVIDIA ドライバ

NVIDIA の GPU を使用し,CUDA や OpenGL のアプリケーションを動作させる場合は,NVIDIA ドライバを導入する. NVIDIA が提供する RHEL 10 向けリポジトリを使用する手順は次の通りである.

sudo dnf install epel-release
sudo dnf config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel10/x86_64/cuda-rhel10.repo
sudo dnf clean all
sudo dnf module install nvidia-driver:latest-dkms
sudo shutdown -r now

再起動後,次のコマンドでドライバの動作と GPU の認識を確認する.

nvidia-smi

CUDA Toolkit を使用する場合は,次のコマンドで追加する.

sudo dnf install cuda-toolkit

不要なサービスの停止

サービスの管理は systemd で行う.自動起動が有効になっているサービスの一覧は,次のコマンドで確認する.

systemctl list-unit-files --type=service --state=enabled

使用しないサービスは,systemctl で停止し,自動起動を無効にする.次は,印刷 (cups),Bluetooth,NFS サーバを使わない場合の実行例である.

sudo systemctl disable --now cups.service cups.socket
sudo systemctl disable --now bluetooth.service
sudo systemctl disable --now nfs-server.service
systemctl list-unit-files --type=service --state=enabled

起動時間の内訳から,起動を遅くしているサービスを確認できる.

systemd-analyze blame

名前解決の設定

名前解決に使う DNS サーバや検索ドメインは /etc/resolv.conf に記述される. このファイルは NetworkManager により自動生成されるため,直接編集しても再起動や接続の再確立で上書きされる. 恒久的な設定は,接続の設定として行う.

接続の名前とデバイス名を確認する.

nmcli connection show

DNS サーバと検索ドメインを設定する(「Wired connection 1」は,確認した接続の名前に読み替える).

sudo nmcli connection modify "Wired connection 1" ipv4.dns "192.168.33.1" ipv4.dns-search "kunihikokaneko.com"
sudo nmcli connection up "Wired connection 1"

DHCP から取得した DNS サーバを使わず,設定した値のみを使う場合は,次のように指定する.

sudo nmcli connection modify "Wired connection 1" ipv4.ignore-auto-dns yes
sudo nmcli connection up "Wired connection 1"

設定の結果を確認する.

cat /etc/resolv.conf
resolvectl status

firewalld による通信の制限

外部からの接続の制限には firewalld を使用する. CentOS 7 以降,TCP Wrappers(/etc/hosts.allow,/etc/hosts.deny)は使用されておらず,RHEL 9 以降では tcp_wrappers 自体が削除されているため,アクセス制御は firewalld で行う.

firewalld の状態と,現在の設定を確認する.

sudo systemctl status firewalld
sudo firewall-cmd --list-all

次は,SSH のみを許可する実行例である. --permanent を付けた変更は,--reload を実行した時点で反映される.

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --permanent --remove-service=cockpit
sudo firewall-cmd --permanent --remove-service=dhcpv6-client
sudo firewall-cmd --reload
sudo firewall-cmd --list-all

接続元の IP アドレスで制限する場合は,rich rule を使用する. 次は,SSH の接続元を 192.168.33.0/24 に限る実行例である.

sudo firewall-cmd --permanent --remove-service=ssh
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.33.0/24" service name="ssh" accept'
sudo firewall-cmd --reload
sudo firewall-cmd --list-all
設定を誤ると,リモートから接続できなくなる場合がある. リモートで作業する場合は,--permanent を付けずに設定して動作を確認し,接続を維持できることを確認してから --permanent を付けて保存する. --permanent を付けない設定は,firewall-cmd --reload またはシステムの再起動で破棄される.

(オプション)SELinux の状態の確認

AlmaLinux OS では SELinux が既定で enforcing になっている. サービスが想定通りに動作しない場合は,SELinux による拒否が原因であることがある.状態と,拒否の記録は次のコマンドで確認する.

getenforce
sudo ausearch -m avc -ts recent

SELinux を無効にするのではなく,semanagesetsebool でポリシーを調整する.たとえば,Web サーバが 8080 番ポートを使用する場合は次のように設定する.

sudo dnf install policycoreutils-python-utils
sudo semanage port -a -t http_port_t -p tcp 8080