一.實驗一:搭建PXE Serverlinux
服務器IP爲192.168.10.253,能夠給ios
192.168.10.0/24安裝RHEL5.9vim
分別給每臺客戶端分配主機名,格式以下(1-服務器
100)stationx.tarena.com 網絡
192.168.10.xapp
安裝所須要的軟件包存放在/data/iso/rhel5.9dom
前期準備:ide
設置網絡參數測試
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 //查看網卡配置前面寫vim表明修改該配置spa
# Intel Corporation 82545EM GigabitEthernet Controller (Copper)
DEVICE=eth0 //設備名,默認的不建議修改
BOOTPROTO=none //類型,此類型爲通用
HWADDR=00:0C:29:6F:36:09 //本機MAC地址
ONBOOT=yes
NETMASK=255.255.255.0 //子網掩碼
IPADDR=192.168.10.253 //ip地址
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=yes
[root@localhost ~]# service network restart //重啓該服務
配置主機名
[root@localhost ~]# vim/etc/sysconfig/network //修改該配置
[root@localhost ~]# hostnameserver01.tarena.com //更名主機名
[root@localhost ~]# cat/etc/sysconfig/network //查看配置
NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=server01.tarena.com //主機名可在這修改
實驗步驟:
配置DHCP
[root@localhost ~]# rpm -q dhcp //檢測是否安裝
package dhcp is not installed //表明沒有安裝此軟件
[root@localhost ~]# yum -y install dhcp //YUM庫安裝軟件
[root@server01 ~]# rpm -q dhcp //檢測是否安裝軟件
dhcp-3.0.5-31.el5_8.1 //表明安裝了此軟件
[root@localhost ~]# vim /etc/dhcpd.conf //修改dhcp主配置文件
[root@localhost ~]# cat /etc/dhcpd.conf //查看配置
ddns-update-style interim;
ignore client-updates;
subnet 192.168.10.0 netmask 255.255.255.0 { //第一個是網段,後面是子網
option routers 192.168.10.254; //網關
option subnet-mask 255.255.255.0; //子網
option domain-name "tarena.com"; //域名
option domain-name-servers 192.168.10.253; //dns
range dynamic-bootp 192.168.10.1 192.168.10.200; //容許的使用的網段
default-lease-time 21600;
max-lease-time 43200;
host ns {
next-server marvin.redhat.com;
hardware ethernet12:34:56:78:AB:CD; //指定機器的MAC地址
fixed-address 207.175.42.254; //指定機器的固定ip
}
filename"pxelinux.0"; //啓用此服務,此服務得先安裝
}
[root@localhost ~]# service dhcpd restart //重啓服務
配置DNS
[root@server01 ~]# rpm -q bind bind-chrootcaching-nameserver //檢測是否安裝
package bind is not installed
package bind-chroot is not installed
package caching-nameserver is not installed //表明沒有安裝
[root@server01 ~]# yum -y install bindbind-chroot caching-nameserver //安裝軟件
[root@server01 ~]# rpm -q bind bind-chrootcaching-nameserver //檢測是否安裝
bind-9.3.6-20.P1.el5_8.5
bind-chroot-9.3.6-20.P1.el5_8.5
caching-nameserver-9.3.6-20.P1.el5_8.5 //表明已安裝此軟件
[root@server01 ~]# cd/var/named/chroot/etc/ //切換到該目錄
[root@server01 etc]# ls //查看
localtime named.caching-nameserver.conf named.rfc1912.zones rndc.key
[root@server01 etc]# cp -pnamed.caching-nameserver.conf named.conf //複製該模板-p保留原有權限
[root@server01 etc]# vim named.conf //編輯該模板
15 listen-on port 53 { 192.168.10.253; }; //本機ip
27 allow-query { any; };
28 allow-query-cache { any; };
37 match-clients { any; };
38 match-destinations { any; }; //any本機的意思
[root@server01 etc]# vimnamed.rfc1912.zones //編輯該文件
50 zone "tarena.com" IN { //域名
51 type master;
52 file "tarena.com.zone"; //存放正向解析文件的名字
53 allow-update { none; };
54};
55
56zone "10.168.192.in-addr.arpa" IN { //反向解析ip反寫
57 type master;
58 file "192.168.10.arpa"; //存放反向解析文件的名字
59 allow-update { none; };
[root@server01 etc]# cd/var/named/chroot/var/named/ //切換到該目錄
[root@server01 named]# ls //查看目錄表
data localhost.zone named.ca named.local slaves
localdomain.zone named.broadcast named.ip6.local named.zero
[root@server01 named]# cp -p named.localtarena.com.zone //複製該模版 命名爲配置列表上的名字
[root@server01 named]# vim tarena.com.zone //編輯該文件
$TTL 86400
@ IN SOA localhost. root.localhost. (
2014061801 ; Serial //更新的版本自定義的,能夠寫日期沒更新一次後面加一
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400) ; Minimum
IN NS server01.tarena.com
server01 IN A 192.168.10.253 //正向解析
$GENERATE 1-100 station$ IN A 192.168.10.253 //連續的解析
[root@server01 named]# cp -ptarena.com.zone 192.168.10.arpa //複製剛纔的文件這樣修改起來方便
[root@server01 named]# vim 192.168.10.arpa //編輯該文件
$TTL 86400
@ IN SOA localhost. root.localhost. (
2014061801 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400) ; Minimum
IN NS server01.tarena.com //反向解析反着寫
253 IN PTR server01.tarena.com
$GENERATE 1-100 $ IN PTR station$.tarena.com.
[root@server01 named]# service namedrestart //重啓
把軟件包存放
[root@server01 ~]# mkdir -p/data/iso/rhel5.9 //建立目錄加-p遞歸沒有的也順路給建立了
[root@server01 ~]# cp -rfp /misc/cd/*/data/iso/rhel5.9/ //複製掛載的光盤到該目錄下*表明全部的
配置TFTP
[root@server01 ~]# rpm -q tftp-server //檢查是否安裝了此軟件
tftp-server-0.49-2 //表示存在
[root@server01 ~]# vim /etc/xinetd.d/tftp //編輯TFTP的主配置文件
14 disable = no
[root@server01 ~]# service xinetd restart //重啓該服務
[root@server01 ~]# rpm -q syslinux //檢查是否安裝了此軟件
syslinux-4.02-7.2.el5
[root@server01 ~]# rpm -ql syslinux | greppxelinux.0 //過濾查看該軟件的位置
/usr/share/syslinux/gpxelinux.0
/usr/share/syslinux/pxelinux.0
[root@server01 ~]# mkdir/tftpboot/pxelinux.cfg //建立目錄
[root@server01 ~]#cp/data/iso/rhel5.9/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default //複製該文件
[root@server01 ~]# cp /data/iso/rhel5.9/isolinux/vmlinuz/tftpboot/ //複製
[root@server01 ~]# cp/data/iso/rhel5.9/isolinux/initrd.img /tftpboot/
[root@server01 ~]# cp/usr/share/syslinux/pxelinux.0 /tftpboot/
配置HTTP共享
[root@server01 ~]# rpm -q httpd //檢測是否安裝此軟件
httpd-2.2.3-74.el5
[root@server01 ~]# vim/etc/httpd/conf/httpd.conf //編輯該軟件主配置
265 ServerName www.tarena.com:80 //域名後面是端口號
281 DocumentRoot"/data/iso/rhel5.9/" //http的網頁顯示的路徑
[root@server01 ~]# service httpd restart //重啓
測試
新建一個試驗機都在vmnet1裏,開啓時進入bios模式。並安裝看用戶名是否改變成
Ip跟用戶名的序號是同樣的。
總結:
實驗一告訴咱們安裝系統時不用一個一個機器去安裝系統,只要都連在一個網路里就能夠用一個服務器安裝整個網路中的電腦的系統。Dhcp地址池的範圍在範圍dns解析時要同樣否則客戶機的ip跟名字不同。
二.實驗二:經過Kickstart實現無人值守安裝(接着實驗一)
1. 安裝無人值守的設置
[root@server01 ~]# rpm -qsystem-config-kickstart //檢測是否安裝此軟件
package system-config-kickstart is notinstalled //表示沒有安裝
[root@server01 ~]# yum -y installsystem-config-kickstart //Yum庫安裝
[root@server01 ~]# rpm -qsystem-config-kickstart //檢測是否安裝此軟件
system-config-kickstart-2.6.19.9-2.el5 //表示安裝
[root@server01 ~]# system-config-kickstart //啓動該軟件後會出現一個配置器,這個就是在手動安裝系統時出現的配置,選擇好後保存默認會在root 下
[root@server01 ~]# ls //查看
anaconda-ks.cfg Desktop install.log install.log.syslog ks.cfg
[root@server01 ~]# cp ks.cfg/data/iso/rhel5.9/ //複製
[root@server01 ~]# cp ks.cfg/data/iso/rhel5.9/ //複製
[root@server01 ~]# cd/tftpboot/pxelinux.cfg/ //切換
[root@server01 pxelinux.cfg]# ls //查看
default
[root@server01 pxelinux.cfg]# vim default //編輯該文件由於該文件是隻讀的權限因此在編輯好後wq! 強制保存並退出
label linux //
kernel vmlinuz
append initrd=initrd.img ks=http://192.168.10.253/ks.cfg //後面加一段這個
[root@server01 ~]# vim/data/iso/rhel5.9/ks.cfg //在ks.cfg 文件添加下面的內容隨便放,不過我實驗時放在最後是不行的,因此建議放在中間,30 是序號不用寫
30 key --skip
[root@server01 ~]# service httpd restart
總結:
實驗三真正實現了無人值守安裝的操做。不過前提是前面的配置正確就能夠無問題是用。
命令有的是空格顯示的不算清楚。如出錯能夠查看是否忘了空格,沒有的話請幫我指出哪裏出錯謝謝。