CentOS Stream 8
Sponsored Link

PXE Boot : ネットワークインストール (キックスタート)2021/06/24

 
キックスタートによるネットワークインストールの自動化の設定です。
インストール対象のクライアントコンピューターの台数が多い場合に便利です。
[1]
[2] キックスタートの設定です。
# パスワード生成

# 後で入力するのでメモしておく

# root や 他の一般ユーザーのパスワード設定用

[root@dlp ~]#
/usr/libexec/platform-python -c 'import crypt,getpass; \
print(crypt.crypt(getpass.getpass(), \
crypt.mksalt(crypt.METHOD_SHA512)))'
Password:
$6$WRwalxY/5EpHO0DI$qVymqI.....
[root@dlp ~]#
mkdir /var/www/html/ks

[root@dlp ~]#
vi /var/www/html/ks/centos-st8-ks.cfg
# 新規作成

# グラフィカルインストール
graphical

# インストール完了後に再起動
reboot

# インストールソース (AppStream)
repo --name="AppStream" --baseurl=http://10.0.0.30/centos-st8/AppStream
# インストールソース (Base)
url --url="http://10.0.0.30/centos-st8"

# インストールするパッケージ
# 下例は最小構成
%packages
@^minimal-environment
kexec-tools
%end

# キーボードレイアウト
keyboard --xlayouts='jp','us'

# システムのロケール
lang en_US.UTF-8

# ネットワーク設定
network  --hostname=localhost.localdomain

# 初回起動時のセットアップウィザード有効
firstboot --enable

ignoredisk --only-use=sda

# パーティションテーブルは初期化
clearpart --none --initlabel

# パーティションの設定
# [/boot/efi] は UEFI ブートのクライアントにのみ必要
part /boot --fstype="xfs" --ondisk=sda --size=1024
part /boot/efi --fstype="vfat" --ondisk=sda --size=512
part pv.278 --fstype="lvmpv" --ondisk=sda --size=30720
volgroup cs --pesize=4096 pv.278
logvol / --fstype="xfs" --grow --size=1024 --name=root --vgname=cs
logvol swap --fstype="swap" --size=5120 --name=swap --vgname=cs

# システムのタイムゾーン
timezone Asia/Tokyo --isUtc

# root パスワード
rootpw --iscrypted $6$WRwalxY/5EpHO0DI$qVymqI.....
# 一般ユーザーの追加とパスワード
user --name=cent --password=$6$WRwalxY/5EpHO0DI$qVymqI..... --iscrypted --gecos="cent"

# Kdump 有効
%addon com_redhat_kdump --enable --reserve-mb='auto'
%end

[root@dlp ~]#
chmod 644 /var/www/html/ks/centos-st8-ks.cfg

[3] BIOS ベースのネットワークインストールを設定している場合、以下のファイルを編集します。
[root@dlp ~]#
vi /var/lib/tftpboot/pxelinux.cfg/default
# 以下のように変更

default vesamenu.c32
prompt 1
timeout 60

display boot.msg

label linux
  menu label ^Install CentOS Stream 8
  menu default
  kernel centos-st8/vmlinuz
  append initrd=centos-st8/initrd.img ip=dhcp inst.ks=http://10.0.0.30/ks/centos-st8-ks.cfg
.....
.....
[4] UEFI ベースのネットワークインストールを設定している場合、以下のファイルを編集します。
[root@dlp ~]#
vi /var/lib/tftpboot/grub.cfg
# 以下のように変更

set timeout=30
menuentry 'Install CentOS 8' {
    linuxefi centos8/vmlinuz ip=dhcp inst.ks=http://10.0.0.30/ks/centos-st8-ks.cfg
    initrdefi centos8/initrd.img
}
[5] ネットワークブートが有効なクライアントコンピューターを起動すると、PXE サーバーのメニューの表示からインストールまで、全て自動で進行します。 インストール後の再起動も自動で行うため、クライアントコンピューターの電源を入れるのみで、通常起動まで全て完了します。 (以下はインストール完了後に通常起動した状態)
関連コンテンツ