PXE+DHCP+Apache+Kickstart無人でCentOS 5をインストールする.5
10741 ワード
1、原理
1)まず、linuxをインストールするシステムの起動手順を理解します.
BIOS=>ブートメディア=>インストール環境用linuxカーネル(vmlinuz)およびドライバモジュール(initrd.img)=>インストーラ(ananonda)=>インストールメディアの検索=>インストーラによるインストールメディアから必要なインストールファイルの取得=>インストール構成の完了(一般構成、IPTABLES、SELinux)=>再起動=>システムへのアクセス
ここで、ガイド媒体は、CDROM、Hard Disk、Uディスク、NIC(通称NIC)を含む
ここでは、NICをブートメディアとしてlinuxをインストールする方法に重点を置きます.
2)NICからブートとしてlinuxをインストールする方法
NICがアンブートメディアとして機能するには、Preboot Execution Environment(プリスタート実行環境)というモジュール、略称PXEが必要です.(参考:http://zh.wikipedia.org/wiki/実行環境の事前起動)
PXEの機能は,IP,TCP,UDP,TFT Pなどのプロトコルでリモートサーバに接続する.PXEファームウェア上で事前に定義されたAPIを実行します.
ここで重要なのは、PXEモジュールをインストールサーバに接続する方法です.
ネットワークに接続するには、まずIPが必要です.しかし、NICのPXEモジュールは、ユーザに静的IPをカスタマイズさせる機能はなく、DHCPプロトコルでしかIPを取得できない.そこで、私たちのインストール環境にDHCPサービスを提供できるサーバーが必要です.
PXEモジュールをサーバーにインストールした後、インストール用のプログラム(vmlinuz、initrd.imgなど)をインストール対象機器に転送する必要があります.TFT Pプロトコルを選択します.
以上の条件を満たすと、インストール対象のマシンでインストールプログラムを起動できます.
3)kickstartとは?
Kickstartは無人のインストール方式です.主にRed HatシリーズおよびRed Hatのリリース・バージョンに基づく自動インストール・ツール・セット(http://en.wikipedia.org/wiki/Kickstart_(Linux))に使用されます.
その動作原理は、インストール中に典型的に人工的に記入する必要がある各種パラメータを記録し、ksという名前を生成することである.cfgのファイル.
表示/root/anaconda-ks.cfgファイル、このファイルはlinuxをインストールした後、インストーラが残したネイティブ構成に基づくkickstartインストールスクリプトです.
System-config-kickstartこれはkickstartの構成ツールです
4)PXE+KickStartインストールを実行するために必要な設備は以下の通りである.
1.DHCPサーバ2、TFT Pサーバ3、KickStartが生成するks.cfgプロファイル4、NFS、HTTPまたはFTPサーバ(ここではHTTPサーバを使用)5、PXEサポートNIC付きホスト
2、操作
1)CDをインストールサーバーに掛ける
2)HTTPサーバーをインストールし、ディスクの内容をサイトディレクトリにコピーする
3)tftp-serverをインストールし、tftpサービスを有効にし、xinetdプロセスを開始する
4)PXEイニシエータの構成
5)DHCPサーバーのインストール
6)KickStartのインストールと構成
7)設定済みのKickStartのks.cfgは/var/www/htmlに保存
8)修正/tftpboot/pxelinux.cfg/defaultファイル
9)クライアント再起動インストール
1)まず、linuxをインストールするシステムの起動手順を理解します.
BIOS=>ブートメディア=>インストール環境用linuxカーネル(vmlinuz)およびドライバモジュール(initrd.img)=>インストーラ(ananonda)=>インストールメディアの検索=>インストーラによるインストールメディアから必要なインストールファイルの取得=>インストール構成の完了(一般構成、IPTABLES、SELinux)=>再起動=>システムへのアクセス
ここで、ガイド媒体は、CDROM、Hard Disk、Uディスク、NIC(通称NIC)を含む
ここでは、NICをブートメディアとしてlinuxをインストールする方法に重点を置きます.
2)NICからブートとしてlinuxをインストールする方法
NICがアンブートメディアとして機能するには、Preboot Execution Environment(プリスタート実行環境)というモジュール、略称PXEが必要です.(参考:http://zh.wikipedia.org/wiki/実行環境の事前起動)
PXEの機能は,IP,TCP,UDP,TFT Pなどのプロトコルでリモートサーバに接続する.PXEファームウェア上で事前に定義されたAPIを実行します.
ここで重要なのは、PXEモジュールをインストールサーバに接続する方法です.
ネットワークに接続するには、まずIPが必要です.しかし、NICのPXEモジュールは、ユーザに静的IPをカスタマイズさせる機能はなく、DHCPプロトコルでしかIPを取得できない.そこで、私たちのインストール環境にDHCPサービスを提供できるサーバーが必要です.
PXEモジュールをサーバーにインストールした後、インストール用のプログラム(vmlinuz、initrd.imgなど)をインストール対象機器に転送する必要があります.TFT Pプロトコルを選択します.
以上の条件を満たすと、インストール対象のマシンでインストールプログラムを起動できます.
3)kickstartとは?
Kickstartは無人のインストール方式です.主にRed HatシリーズおよびRed Hatのリリース・バージョンに基づく自動インストール・ツール・セット(http://en.wikipedia.org/wiki/Kickstart_(Linux))に使用されます.
その動作原理は、インストール中に典型的に人工的に記入する必要がある各種パラメータを記録し、ksという名前を生成することである.cfgのファイル.
表示/root/anaconda-ks.cfgファイル、このファイルはlinuxをインストールした後、インストーラが残したネイティブ構成に基づくkickstartインストールスクリプトです.
System-config-kickstartこれはkickstartの構成ツールです
4)PXE+KickStartインストールを実行するために必要な設備は以下の通りである.
1.DHCPサーバ2、TFT Pサーバ3、KickStartが生成するks.cfgプロファイル4、NFS、HTTPまたはFTPサーバ(ここではHTTPサーバを使用)5、PXEサポートNIC付きホスト
2、操作
1)CDをインストールサーバーに掛ける
[root@host /]# mount /dev/cdrom /mnt
2)HTTPサーバーをインストールし、ディスクの内容をサイトディレクトリにコピーする
[root@host /]# yum -y install httpd*
[root@host /]# cp -rf /mnt/* /var/www/html
3)tftp-serverをインストールし、tftpサービスを有効にし、xinetdプロセスを開始する
[root@host /]# rpm -ivh tftp-server-0.49-2.el5.centos.x86_64.rpm
# xinetd
[root@host /]# vim /etc/xinetd.d/tftp
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot
disable = no # disable yes no
per_source = 11
cps = 100 2
flags = IPv4
}
# xinetd
[root@host /]# service xinetd restart
4)PXEイニシエータの構成
# tftpboot
[root@host /]# mkdir -p /tftpboot
# pxelinux.0 tftpboot
[root@host /]# cp /usr/lib/syslinux/pxelinux.0 /tftpboot/
# images/pxeboot/initrd.img vmlinuz tftpboot
[root@host /]# cp /mnt/images/pxeboot/initrd.img /tftpboot/
[root@host /]# cp /mnt/images/pxeboot/vmlinuz /tftpboot/
# isolinux/*.msg tftpboot
[root@host /]# cp /mnt/isolinux/*.msg /tftpboot/
# tftpboot pxelinux.cfg
[root@host /]# mkdir pxelinux.cfg
# isolinux isolinux.cfg pxelinux.cfg , default
[root@host /]# cp /mnt/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default
5)DHCPサーバーのインストール
# DHCP
[root@host /]# rpm -ivh /mnt/CentOS/dhcp-3.0.5-23.el5.x86_64.rpm
[root@host /]# cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf
#
[root@host /]# vim /etc/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
next-server 192.168.1.109;#PXE IP
filename "/pxelinux.0";
subnet 192.168.1.0 netmask 255.255.255.0 {
# --- default gateway
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option nis-domain "domain.org";
option domain-name "domain.org";
option domain-name-servers 192.168.1.1;
option time-offset -18000; # Eastern Standard Time
# option ntp-servers 192.168.1.1;
# option netbios-name-servers 192.168.1.1;
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
# option netbios-node-type 2;
range dynamic-bootp 192.168.1.128 192.168.1.254;
default-lease-time 21600;
max-lease-time 43200;
# we want the nameserver to appear at a fixed address
#host ns {
# next-server marvin.redhat.com;
# hardware ethernet 12:34:56:78:AB:CD;
# fixed-address 207.175.42.254;
#}
}
[root@host /]# service dhcpd start
6)KickStartのインストールと構成
[root@host /]# yum install system-config-kickstart
# gnome KickStart
[root@host /]# system-config-kickstart
# gnome ,
[root@host /]# yum -y groupinstall "X Window System"
[root@host /]# yum -y groupinstall 'GNOME Desktop Environment'
7)設定済みのKickStartのks.cfgは/var/www/htmlに保存
8)修正/tftpboot/pxelinux.cfg/defaultファイル
default ks #
prompt 1
timeout 6
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
label linux
kernel vmlinuz
append initrd=initrd.img
label text
kernel vmlinuz
append initrd=initrd.img text
label ks
kernel vmlinuz
append ks initrd=initrd.img http://192.168.1.109/ks.cfg #
label local
localboot 1
label memtest86
kernel memtest
append -
9)クライアント再起動インストール