RHEL 基礎 #2 セットアップ — RHEL 9 インストール、Subscription Manager、初ログイン

読了 13分

#1 でレッドハット系列の全体の流れを押さえました。この記事は RHEL マシンを一台、自分の手で立ち上げる手順 — ISO を受け取り、仮想マシンにインストールし、Subscription Manager で登録し、初ログイン直後の細かい調整までの一サイクルを扱います。

RHEL 基礎 シリーズでこの記事の位置:

  • #1 RHEL とは — Fedora から RHEL まで、そして AlmaLinux と Rocky Linux
  • #2 セットアップ — RHEL 9 インストール、Subscription Manager、初ログイン ← この記事
  • #3 dnf とパッケージ管理 — repo、modules、AppStream
  • #4 systemd 入門 — サービス、target、journalctl
  • #5 ユーザー/グループ/権限 — UID/GID、sudo、ACL
  • #6 ファイルシステムの基本 — XFS、mount、/etc/fstab
  • #7 基本セキュリティ — firewalld、SSH ハードニング

どこにインストールするか #

学習用 RHEL マシンを置く選択肢は三つあります。

オプションコスト一行コメント
ローカル仮想マシン無料おすすめ。スナップショット・ロールバックが楽で、壊しても問題なし
クラウドインスタンス時間課金EC2/Lightsail。外部からアクセス可能、止め忘れると課金
ベアメタル / デュアルブート無料ディスクを永久占有。学習用にはオーバー

この記事は ローカル仮想マシン を基準に進めます。インストールでこじれても VM だけ消してやり直せるので、初めて OS を触る方に一番安全です。ホストマシンによってツールが分かれます。

ホスト推奨ツール備考
Apple Silicon (M1~M4)UTM (mac.getutm.app)無料、ARM64 RHEL 9 がよく動く
Intel Mac / Windows / LinuxVirtualBox (virtualbox.org)無料。業務用なら VMware Workstation/Fusion も

この記事のスクリーンショット・例は Apple Silicon + UTM + RHEL 9 (ARM64) 基準ですが、インストーラ画面とコマンドは x86_64 / VirtualBox 環境と事実上同じです。違う点は都度補足します。

参考までに、AWS で RHEL を立ち上げて SSH 接続 する方法もあります (AWS 基礎 #1)。Free Tier の範囲内で t2.micro 程度なら学習用に十分です。ただしこの記事ではインストーラ画面を直接見る経験を重視してローカル VM で進めます。

1) Developer Subscription への登録と ISO 取得 #

RHEL を合法的に無料で使うには Red Hat Developer Subscription が必要です。一アカウントあたり 16 台まで RHEL をインストールでき、セキュリティパッチも同じように受け取れます。

登録手順:

  1. developers.redhat.com にアクセス
  2. 右上の Sign inRegister で登録 (メール + パスワード + 会社名 / 学生も OK)
  3. メール認証を済ませて完了

ISO ダウンロード #

access.redhat.com/downloadsRed Hat Enterprise Linux 9 をクリックするとダウンロードページが開きます。受け取れる ISO は二種類です。

ISOサイズ違い
Binary DVD (x86_64-dvd.iso / aarch64-dvd.iso)~9 GB全パッケージ入り、オフラインインストール可能
Boot ISO (x86_64-boot.iso / aarch64-boot.iso)~900 MB起動のみ、パッケージはインストール中にネットワーク経由で取得

学習用には Binary DVD を取ってください。一度落としておけばインターネットなしでもインストールできます。Apple Silicon なら aarch64、それ以外は x86_64 です。

重要 — ダウンロード直前に アーキテクチャ選択 が出ます。ホスト CPU と合わせてください。M1~M4 Mac → aarch64、Intel/AMD → x86_64。間違えると VM が起動すらしません。

ダウンロードは通常 30 分~1 時間。落とす間に次のステップを先に進めても OK です。

2) 仮想マシンを作る #

Apple Silicon — UTM #

UTM を初めて起動するとウェルカム画面が出ます。Create a New Virtual MachineVirtualize (Emulate ではなく — そちらはずっと遅い) → Linux を選びます。

項目
ISO Image取得した aarch64-dvd.iso を選択
Memory4096 MB (最小 2 GB、余裕を見て 4 GB)
CPU Cores2~4 (ホストコアの半分程度)
Storage Size40 GB (最小 20 GB)
Shared Directory(任意) — ホストフォルダと共有したいとき

最後の Summary で Namerhel9-test のように分かりやすい名前にしてください。Save を押すと左側のリストに VM が現れます。

Intel/Windows/Linux — VirtualBox #

VirtualBox では New → 名前を入力 → Type: LinuxVersion: Red Hat (64-bit) を選択 → メモリ / CPU / ディスクは上の表と同じに設定すれば OK です。

作成後、VM を選択して Settings → Storage → Empty CD アイコン から取得した x86_64-dvd.iso をマウントします。この手順を抜かすと VM の起動時に「ブートディスクなし」の状態で止まります。

共通 — VM 起動 #

準備した VM を Start すると、黒い画面にブートメニューが出ます。

ブートメニュー
   Install Red Hat Enterprise Linux 9.x
   Test this media & install Red Hat Enterprise Linux 9.x
   Troubleshooting -->

一番上の Install Red Hat Enterprise Linux 9.x を選んで Enter。テキストログがしばらく流れた後、グラフィカルインストーラ (Anaconda) が立ち上がります。

3) Anaconda インストーラを追う #

Anaconda 画面は 一つのハブ (Installation Summary) + 複数のスポーク (個別設定) の形です。黄色い ! マークが付いた項目は 必ず一度は開かないと インストールが始まりません。

Anaconda の形
┌──────────────────────────────────────────────┐
│  INSTALLATION SUMMARY                        │
├──────────────────────────────────────────────┤
│  LOCALIZATION                                │
│    🌐 Keyboard          [English (US)]       │
│    🌐 Language Support  [English]            │
│    🌐 Time & Date       [Americas/New York]  │
├──────────────────────────────────────────────┤
│  SOFTWARE                                    │
│    💿 Connect to Red Hat                     │
│    💿 Installation Source [Local media]      │
│    💿 Software Selection [Server with GUI]   │
├──────────────────────────────────────────────┤
│  SYSTEM                                      │
│    💾 Installation Destination  ⚠️           │
│    💾 KDUMP                                  │
│    💾 Network & Host Name                    │
│    💾 Security Profile                       │
├──────────────────────────────────────────────┤
│  USER SETTINGS                               │
│    👤 Root Password         ⚠️               │
│    👤 User Creation                          │
└──────────────────────────────────────────────┘
                    [Begin Installation]

各項目の埋める順番は自由ですが、通常は上から下へ。要点だけ押さえておきます。

Language / Keyboard / Time & Date #

  • Language日本語 または English (US)。サーバー学習用は英語推奨 — エラーメッセージを検索しやすいから。
  • Keyboard — 日本語 Mac は Japanese または English (US)
  • Time & DateAsia / Tokyo。NTP 自動同期はオンに。

Software Selection #

デフォルトは Server with GUI。学習用なら GUI が負担でなければそのままでも、軽くしたいなら Server (テキストモード) または Minimal Install を選びます。

このシリーズは Server with GUI を前提に進めます。GNOME デスクトップまで一緒にインストールされますが、実作業はほぼターミナルで行います。

Installation Destination — ディスクパーティショニング #

⚠️ マークが一番よく引っかかるところです。クリックして開くとディスク一覧が見えます。VM ディスク一枚が表示されているはずなので、それをクリックしてチェックした上で:

  • Storage Configuration: Automatic を選択
  • Encryption: 学習用ならオフで進めます。本番では LUKS をオンに (上級 #5)

Done で抜けて ⚠️ が消えるのを確認。自動パーティショニングの結果はこんな形になります。

自動パーティショニングの結果
/boot          1 GB    XFS
/boot/efi      600 MB  EFI (UEFI ブートの場合)
/              残り領域の 70%   XFS
/home          残り領域の 30%   XFS
swap           メモリと近いサイズ

LVM でまとめられて、ファイルシステムは XFS (#6 で扱う) がデフォルトです。手動パーティショニングはこの記事の範囲外。

Network & Host Name #

Wired (eth0/enp0s1) が自動で認識されているはずですが、OFF で無効化されています。ON にするのを忘れずに。これをオンにせずインストールすると、起動後にインターネットが通じません。

画面右下の Host Namerhel9-test のような名前を入れて Apply。入れないと localhost.localdomain で入ることになります。

Connect to Red Hat (任意) #

インストール時点でそのまま登録してしまうオプションです。Red Hat アカウントの ID/PW を入力すると、自動で Subscription が紐づきます。

この記事は スキップ して、インストール後にコマンドで登録する道を取ります。ここで登録しても後で登録しても結果は同じですが、subscription-manager コマンドを一度自分で叩く経験 のほうが身につきます。

Root Password #

⚠️ がもう一つここに。長めに設定してください (12 文字以上推奨)。学習用 VM でもパターンのある弱いパスワードは避けてください。

オプションに Lock root accountAllow root SSH login with password があります。学習用は両方ともデフォルト (lock しない、SSH パスワードログイン許可しない) で OK。本番では SSH 鍵認証 だけ許可するようにロックする必要があります (#7)。

User Creation #

日常作業用ユーザーを一人作ります。root で作業するクセはつけないでください。

項目値の例
Full nameCurtis Kim
User namecurtis
Make this user administrator✅ チェック (sudo を可能に)
Password(別の強いパスワード)

Make this user administrator にチェックを入れることで wheel グループに入り、sudo が使えます。チェックしないと毎回 root パスワードで su - する必要があります。

Begin Installation #

⚠️ がすべて消えると Begin Installation が有効になります。押すとインストールが始まります。

インストール進行
Installing the software ...
   100 / 1240 packages
   ...

VM のスペックとディスクによって 10~25 分。その間に席を外しても大丈夫です。

インストールが終わると Reboot System ボタンが出ます。押すと VM が再起動 — ところがインストーラのブート画面が再度表示されることがよくあります。そのときは VM の ISO マウントを解除 (UTM: VM 停止後 Edit → Drive → Eject / VirtualBox: Devices → Optical Drives → Remove disk) してから再度起動します。

4) 初回起動とログイン #

ISO を抜いて再起動すると、GRUB ブートメニューが少し見えて (5 秒後に自動進行)、すぐにグラフィカルログイン画面が出ます。

最初の一回だけ Initial Setup 画面が出ることがあるので、License Information に同意 (I accept the license agreement) して FINISH CONFIGURATION で抜ければ完了。

先ほど作ったユーザー (curtis) でログインします。GNOME ウェルカムウィザードが出たら Skip で全部飛ばしてください。最後に黒いデスクトップ + ターミナルが見えれば、OS がきちんと立ち上がっています。

Activities → Terminal (または Ctrl+Alt+T) でシェルを開きます。

最初の確認
$ cat /etc/redhat-release
Red Hat Enterprise Linux release 9.5 (Plow)

$ uname -a
Linux rhel9-test 5.14.0-503.x.x.el9_5.aarch64 ...

$ whoami
curtis

/etc/redhat-releaseRed Hat Enterprise Linux release 9.x と表示されれば、間違いなく RHEL の上に乗っています。AlmaLinux/Rocky なら別の文字列が表示されます (後で扱う)。

5) Subscription Manager 登録 #

ここで このマシンを自分の Red Hat アカウントに紐づけ ます。これをやらないと dnf install がほぼすべて失敗します — パッケージを取りに行くリポジトリへのアクセス権がないからです。

登録 #

register
$ sudo subscription-manager register --username <RHID> --password <PW>
The system has been registered with ID: a1b2c3d4-...
The registered system name is: rhel9-test

<RHID>developers.redhat.com で登録した Red Hat アカウント ID<PW> はそのパスワードです。コマンドラインに直接書きたくなければ --password を外せばプロンプトが出ます。

コマンドが成功すると Simple Content Access モードで自動的に紐づき、すべての RHEL リポジトリが有効化されます。

確認 #

リポジトリ一覧の確認
$ sudo dnf repolist
repo id                              repo name
rhel-9-for-aarch64-appstream-rpms    Red Hat Enterprise Linux 9 ...
rhel-9-for-aarch64-baseos-rpms       Red Hat Enterprise Linux 9 ...

二行見えれば成功。見えない場合は登録がうまくいっていません。sudo subscription-manager status で状態を確認してから再試行してください。

初回アップデート #

dnf update
$ sudo dnf update -y
Last metadata expiration check: 0:00:01 ago ...
Dependencies resolved.
...
Complete!

インストール ISO が焼かれてから数日~数週間経っているはずなので、セキュリティパッチがそれなりに貯まっています。初回アップデートは通常 5~15 分。

アップデート後にカーネルが変わっていれば再起動が必要です。

再起動の必要性
$ sudo dnf needs-restarting -r
Core libraries or services have been updated since boot-up:
  * kernel
Reboot is required to fully utilize these updates.

$ sudo reboot

6) 初期の細かい調整 — 時刻 / hostname / sudo / SSH #

インストールは終わりましたが、運用に入る直前に何か所か手を入れるところがあります。

時刻同期 — chronyd #

RHEL 9 の時刻同期デーモンは chronyd です。すでに動いているはずです。

時刻状態の確認
$ timedatectl
               Local time: Fri 2026-04-10 14:23:01 JST
           Universal time: Fri 2026-04-10 05:23:01 UTC
                 Time zone: Asia/Tokyo (JST, +0900)
 System clock synchronized: yes
               NTP service: active

$ chronyc sources
MS Name/IP address       Stratum ...
^* ntp.example.com             2 ...

System clock synchronized: yesNTP service: active が見えれば OK。タイムゾーンがおかしければ:

タイムゾーン変更
$ sudo timedatectl set-timezone Asia/Tokyo

Hostname の確認 / 変更 #

hostname
$ hostnamectl
   Static hostname: rhel9-test
         Icon name: computer-vm
           Chassis: vm
        ...

# 変更するなら
$ sudo hostnamectl set-hostname rhel9-lab

変更後に新しいシェルを開くと、プロンプトが新しい名前になっています。

sudo がきちんと動くか #

インストール時に Make this user administrator にチェックしていれば、ユーザーは wheel グループに入っており、RHEL 9 のデフォルト sudoers ポリシーで wheel グループは sudo 可能です。

確認
$ groups
curtis wheel

$ sudo whoami
[sudo] password for curtis:
root

wheel がグループ一覧にない場合は root でログインして追加:

wheel グループに追加
# su - で root に切り替えた後
# usermod -aG wheel curtis
# exit  # ユーザーシェルに戻って再ログインで反映

SSH で接続してみる #

VM コンソールだけ使っていると不便です。ホストターミナルから SSH で入れば、コピー・貼り付け・複数ウィンドウが自由になります。

まず VM の中で IP を確認:

IP の確認
$ ip -4 addr show
2: enp0s1: ...
    inet 192.168.64.15/24 ...

ホストターミナルから:

ホストから SSH
$ ssh curtis@192.168.64.15
The authenticity of host '192.168.64.15 (192.168.64.15)' can't be established.
ED25519 key fingerprint is SHA256:...
Are you sure you want to continue connecting (yes/no)? yes
curtis@192.168.64.15's password:
[curtis@rhel9-lab ~]$

最初はパスワードで入りますが、次の記事を追っていけばすぐ SSH 鍵認証に切り替えます (#7)。

VirtualBox ユーザー — デフォルトの NAT ネットワークではホストから VM に直接 SSH できません。Settings → Network → Advanced → Port Forwarding でホスト 2222 → ゲスト 22 を追加し、ssh -p 2222 curtis@127.0.0.1 で接続するか、ネットワークを Bridged Adapter に変えてください。

AlmaLinux / Rocky で追いかける方へ #

ほぼ同じです。違いだけ挙げておきます。

ステップRHELAlmaLinux / Rocky
ISO 取得developers.redhat.com (アカウント必要)almalinux.org / rockylinux.org (登録不要)
インストーラAnaconda同じ (ブランディングだけ違う)
Subscription Manager 登録必要 (subscription-manager register)不要 — このステップは丸ごと飛ばす
/etc/redhat-releaseRed Hat Enterprise Linux release 9.xAlmaLinux release 9.x / Rocky Linux release 9.x
その他のコマンドdnf / systemctl / firewalld / SELinuxすべて同じ

つまり (5) Subscription Manager のステップだけ抜けば、すべて同じです。このシリーズの残り (#3 以降) もそのまま追えます。

よく出会う落とし穴 #

「VM が起動しない」 #

ISO のアーキテクチャを間違えたケースが第一位。M1~M4 Mac なのに x86_64 を取ったり、Intel なのに aarch64 を取ったりすると、起動すらしません。取り直してください。

VirtualBox で Version を Linux/Other (64-bit) のような汎用値にしたケースも、たまに起動が止まります。必ず Red Hat (64-bit) にしてください。

「インストールは終わったのにインストーラ画面がまた出る」 #

ISO が仮想 CD ドライブにマウントされたままで、そちらに再度ブートしているからです。VM 停止 → ISO 削除 → 再起動

dnf install がすべて失敗する」 #

99% は Subscription 登録ができていない状態です。sudo subscription-manager status で確認。

sudo が効かない」 #

インストール時に Make this user administrator にチェックしなかった場合。root でログインして usermod -aG wheel <user> した後に再ログイン。

「GUI が重すぎる」 #

学習がある程度慣れてきたら、GUI を切ってテキストモードでブートすればメモリ/CPU が一気に軽くなります。

テキストモードをデフォルトに
$ sudo systemctl set-default multi-user.target
$ sudo reboot

GUI に戻したくなれば graphical.target に戻します (target の話は #4 systemd)。

まとめ #

この記事で押さえた流れ:

  • 学習用 RHEL は ローカル VM で — Apple Silicon は UTM、それ以外は VirtualBox。
  • ISO は Developer Subscription 登録後に access.redhat.com/downloads から。アーキテクチャ (aarch64 / x86_64) を間違えると起動しません。
  • Anaconda インストーラ の ⚠️ 項目 — ディスク (Installation Destination) / Root Password / User Creation。Make this user administrator のチェックを忘れないこと。
  • Network & Host Name の ON トグル を忘れないこと。
  • インストール後 subscription-manager register で登録すれば RHEL リポジトリが付き、dnf が動作します。
  • dnf update -y で初回パッチ適用、カーネルが変わっていれば再起動。
  • AlmaLinux / Rocky もほぼ同じ。Subscription のステップだけ丸ごとスキップ。

次 — パッケージ管理を本格的に #

これで RHEL マシンが動いていてインターネットも通じます。次に扱うのは この上に何かをインストールしたり消したりする作業 — すべての運用の出発点です。

#3 dnf とパッケージ管理 — repo、modules、AppStream では dnf コマンド群 (installremovesearchinfohistoryrepoquery)、AppStream が BaseOS と分けられている理由、modules で同じパッケージの複数バージョン (例: PostgreSQL 13/15/16) を選んでインストールする方法、そして外部リポジトリ (EPEL、COPR) を安全に追加する方法までを一度に押さえます。

X