CentOS8 on Hyper-V インストール備忘録

Environment
Photo by hyt.

ローカル環境で使う CentOS8 on Hyper-V のインストールについての備忘録です.

CentOS7 on Hyper-V の場合の同様の記録は

CentOS7 on Hyper-V インストール備忘録
ローカル環境で使う CentOS7 on Hyper-V のインストールについての備忘録. 方針はとりあえず必要最低限のみ使えれば良い状態にすること.大したことに使うわけではないので,仮想マシンは次の通り設定. 項目 値 備考 世代 2 起...

を,CentOS Stream についてのものは,

CentOS Stream 8.0.1905 インストール備忘録
ローカル環境で使う CentOS Stream on Hyper-V のインストールについての備忘録です. なお,CentOS Stream は,ローリングリリース(新機能を積極的に追加する)に対応した開発者向けのリリースで,2019年9月...
CentOS Stream 8.0.1905 インストール備忘録
ローカル環境で使う CentOS Stream on Hyper-V のインストールについての備忘録です. なお,CentOS Stream は,ローリングリリース(新機能を積極的に追加する)に対応した開発者向けのリリースで,2019年9月...

2019年9月24日にリリースとなった CentOS8 について,方針はとりあえず必要最低限のみ使えれば良い状態にすること.大したことに使うわけではないので,仮想マシンは次の通り設定します.また,Hyper-V 仮想マシンの構成バージョンは 9.0 です.

項目 備考
世代 2 起動時にいくつかエラーが出るが,いつものことなので気にしない.ただし,セキュアブートは無効にしないと起動してこない.
CPU 2 後で変えられるのでとりあえず.
起動メモリ 1024MB グラフィカルなインストーラーが起動すれば良し.512Mでは動的メモリ有効でも Kernel Panic で起動してこないことに注意
動的メモリ 使用 後で変えられるのでとりあえず.
ネットワーク 使用 Virtual Switch に接続する.
仮想HDD 128GB 容量可変なのでまあこれは超えないだろうという容量を選択する.作っただけだと実消費は4MB.

CentOS7 のインストールイメージは,

CentOS-8-x86_64-1905-dvd1.iso(約6.6GB)

を選択(CentOS-8-x86_64-1905-boot.iso はインストール中のリポジトリの自動選択に失敗してインストールできなかったため.原因は不明).ミラーサイト一覧は以下の通り.

CentOS Mirrors List

インストール時の選択は以下の通り.

項目 備考
ブート時の選択 Install CentOS Linux 8.0.1905 Test this media & install CentOS Linux 8.0.1905 がデフォルトになっていることに注意
使用言語 日本語 インストール時使用言語.
時刻と日付 アジア/東京 キーボードと言語サポートは「日本語」が自動選択されるが,時刻と日付はそうではないことに注意
ソフトウェアの選択 最小限のインストール 標準は「サーバー(GUI 使用)」となっていることに注意
ネットワークとホスト名 固定 クライアント用途ではないので固定.V6は自動.セットアップ時にネットワークを「オン」にしないとリポジトリの取得等ができずエラーになることに注意.ただし,なぜか今回はこの部分を正しく設定してもリポジトリの取得のところでエラーが発生した.
KDUMP 無効 カーネルパニックの際にダンプを保存するための仕掛け.個人で解析することはないので無効.
SECURITY POLICY 不明 コンテンツを指定しないといけないようだが,どのように指定すべきなのか不明なので,空白のままにした.
インストール先 自動構成 特になし.
ユーザーの追加 ***** 管理者として root 以外のユーザーを追加する.

インストール後の作業は次の通り.まず,wheel group に su を限定.

# vi /etc/pam.d/su
# Uncomment the following line to require a user to be in the "wheel" group.
auth            required        pam_wheel.so use_uid

ローカルで使うものなので,SELinux は無効化.

# getenforce
Enforcing
# vi /etc/selinux/config
SELINUX=disabled

# getenforce # 再起動のあと
Disabled

ホストネームの設定.

# hostnamectl set-hostname *****.******.*******

ネットワークの確認.

# nmcli d
デバイス  タイプ    状態      接続
eth0      ethernet  接続済み  eth0
lo        loopback  管理無し  --

# nmcli d show eth0
GENERAL.デバイス:                       eth0
GENERAL.タイプ:                         ethernet
GENERAL.ハードウェアアドレス:           **:**:**:**:**:**
GENERAL.MTU:                            1500
GENERAL.状態:                           100 (接続済み)
GENERAL.接続:                           eth0
GENERAL.CON パス:                       /org/freedesktop/NetworkManager/ActiveConnection/0
WIRED-PROPERTIES.キャリア:              オン
IP4.アドレス[1]:                        192.168.***.***/**
IP4.ゲートウェイ:                       192.168.***.***
IP4.DNS[1]:                             192.168.***.***
IP6.アドレス[1]:                        fe80::****:****:****:****/**
IP6.ゲートウェイ:
# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether************ brd ff:ff:ff:ff:ff:ff
    inet ***************** brd ****************** scope global eth0
       valid_lft forever preferred_lft forever
    inet6 ********************** scope link
       valid_lft forever preferred_lft forever

起動時に有効なサービスの確認.CentOS7 までは SysV で起動するサービスが残ってましたが,CentOS8 だと完全に無くなっています.ただし,メッセージを見る限りですが,使えなくなったと言う訳ではなさそう.

# systemctl list-unit-files -t service | grep enabled
auditd.service                              enabled 
[email protected]                             enabled 
crond.service                               enabled 
dbus-org.fedoraproject.FirewallD1.service   enabled 
dbus-org.freedesktop.NetworkManager.service enabled 
dbus-org.freedesktop.nm-dispatcher.service  enabled 
firewalld.service                           enabled 
[email protected]                              enabled 
import-state.service                        enabled 
irqbalance.service                          enabled 
kdump.service                               enabled 
loadmodules.service                         enabled 
lvm2-monitor.service                        enabled 
microcode.service                           enabled 
NetworkManager-dispatcher.service           enabled 
NetworkManager-wait-online.service          enabled 
NetworkManager.service                      enabled 
nis-domainname.service                      enabled 
rngd.service                                enabled 
rsyslog.service                             enabled 
selinux-autorelabel-mark.service            enabled 
sshd.service                                enabled 
sssd.service                                enabled 
syslog.service                              enabled 
tuned.service                               enabled
 
# chkconfig --list
# chkconfig --list
 
注記: この出力に含まれるのは SysV サービスのみです。ネイティブな 
      systemd サービスは含まれません。SysV の設定データはネイティブな
        systemd 設定で上書きされる場合があります。
      systemd サービスを一覧表示する場合は 'systemctl list-unit-files' を使用します。
      特定のターゲットで有効になっているサービスを確認する場合は
      'systemctl list-dependencies [target]'を使用します。

システムを最新とし,hyper-v 対応を行い,古い kernel を削除し,自動更新を設定します.注意すべきところは以下の通り.

  1. CentOS8 になって大きく変わったところとして,標準のパッケージングマネージャーが yum から dnf に変わってますが基本的な使い方は全く同じで良さそう.
  2. CentOS8 出たばっかりだけど,かなり大量のパッケージがアップデートされま
  3. hypervkvpd は標準でインストールされているようです.
  4. package-cleanup は廃止の方向で,カーネルの削除等は全て dnf で行うになっているようです
    $ sudo dnf -y remove $(dnf repoquery --installonly --latest-limit=-1)
  5. 自動更新は yum-cron ではなくて dnf-automatic を使えば良さそうです(参考: https://fedoraproject.org/wiki/AutoUpdates#Fedora_22_or_later_versions).
  6. 自動更新は dnf-automatic.timer が起動されて1時間後から1日毎にかかるっぽい(参考:cat /etc/systemd/system/multi-user.target.wants/dnf-automatic.timer).
# dnf -y update
CentOS-8 - AppStream                            247 kB/s | 5.6 MB     00:23    
CentOS-8 - Base                                 1.4 MB/s | 5.3 MB     00:03    
CentOS-8 - Extras                               1.3 kB/s | 2.1 kB     00:01    
依存関係が解決しました。
================================================================================
 パッケージ               アーキテクチャー
                                  バージョン                      リポジトリ
                                                                          サイズ
================================================================================
Installing:
 kernel                   x86_64  4.18.0-80.7.1.el8_0             BaseOS  415 k
 kernel-core              x86_64  4.18.0-80.7.1.el8_0             BaseOS   24 M
 kernel-modules           x86_64  4.18.0-80.7.1.el8_0             BaseOS   20 M
Upgrading:
 bind-export-libs         x86_64  32:9.11.4-17.P2.el8_0.1         BaseOS  1.1 M
 iptables                 x86_64  1.8.2-9.el8_0.1                 BaseOS  582 k
 iptables-ebtables        x86_64  1.8.2-9.el8_0.1                 BaseOS   67 k
 iptables-libs            x86_64  1.8.2-9.el8_0.1                 BaseOS   97 k
 kernel-tools             x86_64  4.18.0-80.7.1.el8_0             BaseOS  565 k
 kernel-tools-libs        x86_64  4.18.0-80.7.1.el8_0             BaseOS  424 k
 kmod                     x86_64  25-11.el8_0.2                   BaseOS  127 k
 kmod-libs                x86_64  25-11.el8_0.2                   BaseOS   69 k
 libdnf                   x86_64  0.22.5-5.el8_0                  BaseOS  574 k
 libnfsidmap              x86_64  1:2.3.3-14.el8_0                BaseOS  121 k
 libsss_autofs            x86_64  2.0.0-43.el8_0.3                BaseOS   98 k
 libsss_certmap           x86_64  2.0.0-43.el8_0.3                BaseOS  123 k
 libsss_idmap             x86_64  2.0.0-43.el8_0.3                BaseOS  101 k
 libsss_nss_idmap         x86_64  2.0.0-43.el8_0.3                BaseOS  107 k
 libsss_sudo              x86_64  2.0.0-43.el8_0.3                BaseOS   96 k
 microcode_ctl            x86_64  4:20180807a-2.20190618.1.el8_0  BaseOS  2.0 M
 p11-kit                  x86_64  0.23.14-5.el8_0                 BaseOS  272 k
 p11-kit-trust            x86_64  0.23.14-5.el8_0                 BaseOS  139 k
 platform-python          x86_64  3.6.8-2.el8_0.0.1               BaseOS   79 k
 python3-hawkey           x86_64  0.22.5-5.el8_0                  BaseOS   86 k
 python3-libdnf           x86_64  0.22.5-5.el8_0                  BaseOS  618 k
 python3-libs             x86_64  3.6.8-2.el8_0.0.1               BaseOS  7.9 M
 python3-perf             x86_64  4.18.0-80.7.1.el8_0             BaseOS  522 k
 selinux-policy           noarch  3.14.1-61.el8_0.1               BaseOS  591 k
 selinux-policy-targeted  noarch  3.14.1-61.el8_0.1               BaseOS   15 M
 setup                    noarch  2.12.2-2.el8                    BaseOS  180 k
 sssd-client              x86_64  2.0.0-43.el8_0.3                BaseOS  159 k
 sssd-common              x86_64  2.0.0-43.el8_0.3                BaseOS  1.4 M
 sssd-kcm                 x86_64  2.0.0-43.el8_0.3                BaseOS  207 k
 sssd-nfs-idmap           x86_64  2.0.0-43.el8_0.3                BaseOS   94 k
 systemd                  x86_64  239-13.el8_0.5                  BaseOS  3.4 M
 systemd-libs             x86_64  239-13.el8_0.5                  BaseOS  551 k
 systemd-pam              x86_64  239-13.el8_0.5                  BaseOS  222 k
 systemd-udev             x86_64  239-13.el8_0.5                  BaseOS  1.3 M

トランザクションの概要
================================================================================
インストール     3 パッケージ
アップグレード  34 パッケージ
.....

# dnf -y install hypervkvpd
メタデータの期限切れの最終確認: 0:02:36 時間前の 2019年09月29日 12時42分50秒 に実施しました。
Package hypervkvpd-0-0.27.20180415git.el8.x86_64 is already installed.
依存関係が解決しました。
行うべきことはありません。
完了しました!

# reboot
# dns list installed kernel
kernel.x86_64                   4.18.0-80.el8                          @anaconda
kernel.x86_64                   4.18.0-80.7.1.el8_0                    @BaseOS
# dnf remove kernel-core-4.18.0-80.el8
# dnf install dnf-automatic
# vi /etc/dnf/automatic.conf
....
apply_updates = yes
....
# systemctl enable --now dnf-automatic.timer
# systemctl start dnf-automatic.timer

ここまで設定して,vhdx ファイルの容量は 2.25GB.とりあえず,ここまで.

EnvironmentServer
スポンサーリンク
Following hyt!
タイトルとURLをコピーしました