1 views

実現する機能

2009年から稼働している我が家のWebServerですが、DVD-Driveがとうとう壊れてしまいました。OSも言うことを聞かなくなってきたので、3階のPC(テストサーバー)にPXE(Preboot eXecution Environment)サーバーを構築して、1階のWebServerにネットワークブートでOSを自動でインストールし直しました。この作業で丸一日潰れたので、次回からの作業を短縮するために、簡単セットアップの作成方法を備忘録を残しています。

事前準備

PXE(Preboot eXecution Environment)サーバーの構築など、事前作業の内容はこちらを参照。

キックスタートインストールの設定

(1)以下はGNOME端末を用いての手順。
以下の黒背景部分はGNOME端末を表示しています。紫色はキーボードから入力するコマンド(コピペした方が楽ですが、コマンドは覚えられません)、緑はコマンドや処理内容の説明、白は自動表示する部分、赤は注意書きです。

#ファイルの存在を確認
合計 5936
[tu@ufuso ~]$ sudo ll /root/
-rw-------. 1 root root    1467 10月 28 06:28 anaconda-ks.cfg ← このファイル
-rw-------. 1 root root    1366 10月 28 06:28 original-ks.cfg
-rw-r--r--. 1 root root 6067266 10月 28 09:33 rainloop-latest.zip

 ← 実際のinstall設定内容を表示させ編集
[tu@ufuso ~]$ sudo vi /root/anaconda-ks.cfg

#version=DEVEL ← ベータ版?
# System authorization information ← シャドーパスワードを使用
auth --enableshadow --passalgo=sha512
# Install OS instead of upgrade ← Install
install
# Use network installation ← Install OSのURL
url --url="http://192.168.24.240/centos7/"
autostep
# Use graphical install ← 「firstboot」を可にするとソフトの追加が必要
graphical
firstboot --disable
ignoredisk --only-use=sda
# Keyboard layouts ← 日本語を選択
keyboard --vckeymap=jp106 --xlayouts='jp','us'
# System language ← 英語を選択
lang en_US.UTF-8

# Network information ← OSをInstallされるPCのIP設定
network  --bootproto=static --device=enp2s0 --hostname=ufuso.dip.jp --ip=192.168.24.241 --gateway=192.168.24.1 --nameserver=192.168.24.1 --netmask=255.255.255.0 --noipv6 --activate
# Halt after installation ← Install後PCは待機
halt
# Root password ← 作成したrootのPasswordを入力
rootpw --iscrypted $6$uQXJSHqD4ohcrPWt$hPK2qbtqguWO2W.aDlbgok8kEabqrPQft8nXLew9OmiRK1SKpwLml4KXSiipEucWLRhU38MSl5Ko2UbiaqGs4.
# System services ← 追加又は除くソフトの設定
services --disabled="chronyd"
# System timezone ← 日本時間に設定
timezone Asia/Tokyo --isUtc --nontp
# User ← User名の登録と作成したPasswordの入力。「gecos」は備考欄?
user --name=tu --password=$6$EznKJ7DbHvFd.2Lx$.RVqBUO.xkX5IuofgukKCb0kTOFk010Wr2A3klVWvTS1ZFKnoVRXsNvrJlEJz7d6fp4ULMagI/wvWM4lC84HI. --iscrypted --gecos="tu"
# System bootloader configuration
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel
# Disk partitioning information
part /boot --fstype="xfs" --ondisk=sda --size=500
part pv.132 --fstype="lvmpv" --ondisk=sda --size=51200
volgroup VolGroup --pesize=4096 pv.132
logvol /  --fstype="xfs" --size=20480 --name=root --vgname=VolGroup
logvol swap  --fstype="swap" --size=4096 --name=swap --vgname=VolGroup

# ひとつの%にひとつの%endを記述のこと
%packages
@@development
kexec-tools

%end
# kdumpの設定
%addon com_redhat_kdump --enable --reserve-mb='auto'

%end

#ユーザのパスワードを登録
[tu@ufuso ~]$ python -c 'import crypt,getpass; \
              print(crypt.crypt(getpass.getpass(), \
              crypt.mksalt(crypt.METHOD_SHA512)))'
Password:  ← ユーザーのパスワードを作成入力
$6$EznKJ7DbHvFd.2Lx$.RVqBUO.xkX5IuofgukKCb0kTOFk010Wr2A3klVWvTS1ZFKnoVRXsNvrJlEJz7d6fp4ULMagI/wvWM4lC84HI.
 ← 忘れないように記録のこと

#編集したanaconda-ks.cfgファイルをcentos7-ks01.cfgにリネイム
[tu@ufuso ~]$ sudo mv //var/www/html/ks/centos7-ks.cfg /var/www/html/ks/centos7-ks01.cfg

#centos7-ks.cfgファイルをcentos7-ks.cfgにコピー
[tu@ufuso ~]$ sudo cp /root/anaconda-ks.cfg /var/www/html/ks/centos7-ks.cfg

#pxelinuxという名称でOSやインストーラなどをネットワーク経由で起動する
ファイルを格納するフォルダを作成
[tu@ufuso ~]$ sudo mkdir /var/lib/tftpboot/pxelinux.cfg

#ブートローダファイル(pxelinux.0)をtftpbootフォルダにコピー
[tu@ufuso ~]$ sudo cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

(2)DVDの使えない古いサーバーをrebootして、インストールが全自動で完了したらOK。PCが停止したら再起動して、下記画面の「2)Boot from local drive」をクリックのこと。CentOSが起動したら、rootでログインできたら成功。セキュリティの問題があるのでアップデートまでは終えておくこと。

以上です。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください