Linux pxe+kickstart的安装
2017-12-03 21:27:34 0

    相信每一位在机房工作的同仁们少不了的就装系统,少量还好当一天装个十几个二十台还是同一个系统那真是够了,可能大家会说pe里面可是克制镜像,做系统时候直接还原还是很快的,但是一个型号的机房不可能只有一个型号的设备啊,况且机房是接受托管的。那么不同型号的设备如何省时省力呢?
    那就一起来来了解下pxe+kickstart
    PXE+Kickstart无人值守安装操作系统,PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/严格来说,PXE 并不是一种安装方式,而是一种引导方式。Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。
    PXE+Kickstart安装
安装过程:

一、关闭了selinux iptables
 vim /etc/sysconfig/selinux
更改成 SELINUX=disabled
service iptables stop
chkconfig iptables off

二、配置yum源以及用yum安装
 yum install -y httpd* tftp-server-* xinetd-* system-config-kickstart-* syslinux dhcp*
挂载Linxu iso镜像
 mount /dev/cdrom   /mnt
cp -rf   /mnt/*   /var/www/html/
 
三、配置tftp加载文件

开机启动:
 vi /etc/xinetd.d/tftp
disable                 = no 
#disable的直由yes变为no
加载FTP文件:
 mkdir /tftpboot/
cd /tftpboot/
cp /usr/lib/syslinux/pxelinux.0 /tftpboot  实验时候lib下没有syslinux目录正确cp /usr/share/syslinux/pxelinux.0 /tftpboot
cp /var/www/html/images/pxeboot/initrd.img   /tftpboot
cp /var/www/html/images/pxeboot/vmlinux   /tftpboot
cp /var/www/html/images/pxeboot/vmlinux   /tftpboot
mkdir pxelinux.cfg
cp /var/www/html/isolinux/isolinux.cfg   /tftpboot/pxelinux.cfg/default
四、配置dhcp文件
 vim /etc/dhcp/dhcpd.conf
 # # DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.sample
ddns-update-style interim;
ignore client-updates;
subnet 192.168.100.0 netmask 255.255.255.0 {
option routers 192.168.100.1;
option subnet-mask 255.255.255.0;
range 192.168.100.100 192.168.100.200;
next-server 192.168.100.60;
filename "pxelinux.0";
allow booting;
allow bootp;
}
 
五、配置KickSyack自动安装配置文件
图形界面配置:
 #system-config-kickstart
Could not open display because no X server is running.报错信息  由于是最小化的系统  没有桌面
yum groupinstall "Desktop"
yum groupinstall chinese-support
#startx
#system-config-kickstart
Shell配置:参考代码区进行修改。
  
六、后续工作重启服务以及开机启动
 service httpd restart 
service xinetd restart
service dhcpd restart
chkconfig httpd on
chkconfig xinetd on
chkconfig dhcpd on
代码:
 [root@wh-kickstart-100-60 ~]# vim /tftpboot/pxelinux.cfg/default
 default linux
prompt 0
timeout 10
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 ks=http://192.168.100.60/ks.cfg  ksdevice=eth0 (ksdevice单网卡可以不写 多网卡必须要有 不然会卡在配置网卡界面)
label text
  kernel vmlinuz
  append initrd=initrd.img text
label ks
  kernel vmlinuz
  append ks initrd=initrd.img
label local
  localboot 1
label memtest86
  kernel memtest
  append -

 [root@wh-kickstart-100-60 ~]# vim /etc/dhcp/dhcpd.conf
 #
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.sample  
#
ddns-update-style interim;
ignore client-updates;
subnet 192.168.100.0 netmask 255.255.255.0 {
option routers 192.168.100.1;
option subnet-mask 255.255.255.0;
range 192.168.100.100 192.168.100.200;
next-server 192.168.100.60;
filename "pxelinux.0";
allow booting;
allow bootp;
}

 [root@wh-kickstart-100-60 ~]# vim /var/www/html/ks.cfg 
 #platform=x86, AMD64, or Intel EM64T
# System authorization information
auth  --useshadow  --enablemd5
# System bootloader configuration
bootloader --location=mbr
# Partition clearing information
clearpart --none
# Use graphical install
graphical
# Firewall configuration
firewall --enabled
# Run the Setup Agent on first boot
firstboot --disable
# System keyboard
keyboard us
# System language
lang en_US
# Installation logging level
logging --level=info
# Use network installation
url --url=http://192.168.100.60/
# Network information (网络配置需要注意的:要么自动获取  预设固定ip的话 要设置和环境一个网段的ip)
network --bootproto=dhcp --device=eth0 --onboot=on
#Root password
rootpw --iscrypted $1$vraKvWxT$xevNz205XcKgz8pnf43BV1
# SELinux configuration
selinux --disabled
# System timezone
timezone  Asia/Shanghai
# Install OS instead of upgrade
install
# X Window System configuration information
xconfig  --defaultdesktop=GNOME --depth=8 --resolution=640x480
# Disk partitioning information
part / --bytes-per-inode=4096 --fstype="ext3" --size=4096
part /boot --bytes-per-inode=4096 --fstype="ext3" --size=100
part swap --bytes-per-inode=4096 --fstype="swap" --size=1024
part /home --bytes-per-inode=4096 --fstype="ext3" --grow --size=1
%packages
@gnome-desktop

DHCP介绍:
ddns-update-style interim:这个是动态获取IP地址啦。必须放在第一项哇。
ignore client-updates:服务端与客户端传输相关
Subnet:获取IP段,要配置正确。
Routers:是路由地址
Range:dhcp分配IP段。
next-server:是tftp地址。
Allow booting bootp:放行传输和协议。
    希望这些对IDC工作的各位有所帮助,更多内容请关注:小刀网络

相关信息推荐