Ubuntu 26.04 をサーバーとして使う場合、KVM、コンテナ、Kubernetes、ブリッジネットワークなどで特定のカーネルモジュールが前提になることがあります。モジュールは一時的に読み込むだけでなく、再起動後にも同じ状態になるように永続化しておく必要があります。
この記事では、現在読み込まれているモジュールの確認、modprobe による一時読み込み、/etc/modules-load.d/ による永続化、再起動後の確認観点を整理します。
- カーネルモジュールの現在状態を確認する
- 必要なモジュールを
modprobeで一時的に読み込む /etc/modules-load.d/で再起動後も読み込まれるようにする- KVM、Kubernetes、ブリッジネットワークで関係する代表例を押さえる
| 対象 OS | Ubuntu 26.04 |
|---|---|
| 確認コマンド | lsmod / modinfo / systemctl status systemd-modules-load |
| 一時読み込み | modprobe |
| 永続化 | /etc/modules-load.d/*.conf |
| 代表例 | br_netfilter / overlay / kvm / kvm_intel / kvm_amd |
-
1
必要なモジュールを特定するKubernetes、KVM、ネットワーク機能など、目的に応じて必要なモジュールを確認します。
-
2
現在の読み込み状態を確認する
lsmodで読み込み済みか確認します。 -
3
一時的に読み込む
modprobeで現在の起動中カーネルへ反映します。 -
4
永続化する
/etc/modules-load.d/に設定ファイルを置き、再起動後も読み込まれるようにします。 -
5
再起動後に確認する一時反映と永続化を混同しないよう、再起動後の状態を確認します。
書籍
Advanced Ubuntu Administration and Management Best Practices
Ubuntu Server のカーネル、ネットワーク、運用設定を体系的に確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
カーネルモジュールを確認する場面
カーネルモジュールは、Linux カーネルに機能を追加する仕組みです。普段は意識しなくても自動的に読み込まれることがありますが、サーバー用途では明示的に確認した方がよい場面があります。
- Kubernetes ノードで
br_netfilterやoverlayが必要になる - KVM で
kvm、kvm_intel、kvm_amdを確認する - Linux bridge やコンテナネットワークで bridge 関連の挙動を確認する
- 再起動後に同じモジュールが読み込まれるか確認する
modprobe だけでは一時反映であり、永続化には別途設定が必要です。現在の状態を確認する
まず、カーネルバージョンと現在読み込まれているモジュールを確認します。
uname -r
lsmod | head
lsmod | grep -E 'br_netfilter|overlay|kvm' || true特定のモジュールが存在するか、どのような説明を持つかは modinfo で確認できます。
modinfo br_netfilter
modinfo overlay一時的に読み込む
起動中のシステムへ一時的にモジュールを読み込むには modprobe を使います。次は Kubernetes やコンテナネットワークでよく確認する例です。
sudo modprobe br_netfilter
sudo modprobe overlay
lsmod | grep -E 'br_netfilter|overlay'modprobe による読み込みは、現在の起動中カーネルに対する反映です。再起動後も必要な場合は、次の永続化を行います。再起動後も読み込むようにする
再起動後もモジュールを読み込むには、/etc/modules-load.d/ 配下に設定ファイルを作成します。
sudo tee /etc/modules-load.d/container-network.conf >/dev/null <<'EOF'
br_netfilter
overlay
EOF設定ファイルを作成したら、systemd-modules-load の状態とログを確認します。
systemctl status systemd-modules-load --no-pager
journalctl -u systemd-modules-load --no-pagerKVM で確認するモジュール
KVM を使う場合は、CPU に応じて kvm_intel または kvm_amd が関係します。仮想化支援が有効か、モジュールが読み込まれているかを確認します。
lsmod | grep kvm || true
egrep -c '(vmx|svm)' /proc/cpuinfovmx は Intel VT-x、svm は AMD-V を示します。値が 0 の場合は、ハードウェアやファームウェア設定、仮想化環境側のネスト設定を確認します。再起動後の確認
サーバー設定は、再起動後に同じ状態へ戻ることが重要です。手動で一時的に反映した設定と、永続化された設定を混同しないようにします。
sudo reboot
lsmod | grep -E 'br_netfilter|overlay|kvm' || true
systemctl status systemd-modules-load --no-pager
journalctl -u systemd-modules-load --no-pagerまとめ
Ubuntu 26.04 のカーネルモジュール設定では、現在読み込まれている状態、一時的な読み込み、再起動後の永続化を分けて確認します。特に Kubernetes、KVM、ブリッジネットワークでは、前提となるモジュールが読み込まれていないと、上位の設定が正しくても期待どおり動かないことがあります。
運用では、lsmod、modinfo、modprobe、/etc/modules-load.d/、systemd-modules-load のログをセットで確認すると、原因を追いやすくなります。


