本帖最后由 田埂上的梦 于 2016-9-26 18:19 编辑
PXE网络装机 一、 实验拓扑图
二、 实验环境 VMware + CentOS 5.8 三、实验要求 1. 在IP地址192.168.1.100上搭建PXE,然后使用PXE安装系统 四、操作步骤 1. 修改IP地址、主机名\ [root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=static -->将dhcp改为static IPADDR=192.168.1.10 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 ONBOOT=yes HWADDR=00:0c:29:0f:cc:80 [root@localhost ~]# vim /etc/sysconfig/network NETWORKING=yes NETWORKING_IPV6=yes HOSTNAME=PXE -->名字随意改 [root@localhost ~]# service network reload -->重启网络服务
2. 搭建yum源(插入系统盘) [root@localhost ~]# mount /dev/cdrom /media/ mount: block device /dev/cdrom is write-protected, mounting read-only [root@localhost ~]# rpm -ivh /media/CentOS/vsftpd-2.0.5-24.el5.i386.rpm -->安装ftp [root@localhost ~]# cd /var/ftp/ -->进入ftp目录 [root@localhost ftp]# mkdir centos -->创建centos目录 [root@localhost ftp]# cp -rf /media/* centos/ -->将系统盘里面所有目录拷贝到centos目录 [root@localhost ftp]# umount /dev/cdrom -->卸载光盘. 挂载另外一张光盘 [root@localhost ftp]# mount /dev/cdrom /media/ mount: block device /dev/cdrom is write-protected, mounting read-only [root@localhost ftp]# cp -rf /media/* centos/ -->将系统盘里面所有目录拷贝到centos目录 [root@localhost ftp]# vim /etc/yum.repos.d/CentOS-Base.repo --> [base] -->仓库类别 name=CentOS-$releasever - Base -->仓库名称 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ -->URL访问路径 gpgcheck=1 -->验证软件包的签名 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 ->GPG公钥文件位置 改为: #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os baseurl=ftp://192.168.1.10/CentOS -->URL访问路径 这是要改的地方 或者填写本地路径:baseurl=file:///var/ftp/CentOS 网站路径:baseurl=http://XXXXXXXX [root@localhost ftp]# service vsftpd start -->开启ftp [root@localhost ftp]# yum -y clean all -->清空yum缓存 [root@yum 桌面]# iptables -F -->清除清空所有规则 [root@yum 桌面]# iptables -X -->删除自定义链
3. 安装并启用TFTP服务 [root@localhost ~]# yum -y install tftp-server [root@localhost ~]# vim /etc/xinetd.d/tftp …………/省略部分信息 { socket_type = dgram protocol = udp -->TFTP采用UDP传输协议 wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /tftpboot -->指定TFTP根目录 disable = no -->将YES改为NO per_source = 11 cps = 100 2 flags = IPv4 } [root@localhost ~]# umount /dev/cdrom -->卸载第二张盘
4. 准备Linux内核、初始化镜像文件 [root@localhost ~]# mount /dev/cdrom /media/ -->挂载第一张盘 mount: block device /dev/cdrom is write-protected, mounting read-only [root@localhost ~]# cd /media/images/pxeboot/ [root@localhost pxeboot]# cp vmlinuz initrd.img /tftpboot/
5. 准备PXE引导程序、启动菜单文件 [root@localhost pxeboot]# yum -y install syslinux -->安装syslinux [root@localhost ~]# rpm -ql syslinux |grep pxelinux.0 -->查找pexlinux.0的位置 /usr/lib/syslinux/pxelinux.0 [root@localhost ~]# cp /usr/lib/syslinux/pxelinux.0 /tftpboot/ [root@localhost ~]# mkdir /tftpboot/pxelinux.cfg [root@localhost ~]# vim /tftpboot/pxelinux.cfg/default default auto -->指定默认入口名称 prompt 1 -->1表示等待用户控制 label auto -->默认安装 kernel vmlinuz append initrd=initrd.img devfs=nomount ramdisk_size=8192 label linux text -->文本安装 kernel vmlinuz append text initrd=initrd.img devfs=nomount ramdisk_size=8192 label linux rescue -->救援模式 kernel vmlinuz append rescue initrd=initrd.img devfs=nomount ramdisk_size=8192 label用户定义并分隔启动项, kernel和append用来定义引导参数
6. 安装并启用DHCP服务 [root@localhost ~]# yum -y install dhcp -->利用yum安装dhcp [root@PXE ~]# cp -rf /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf cp:是否覆盖“/etc/dhcpd.conf”? Y [root@PXE ~]# vim /etc/dhcpd.conf -->修改dhcp主配置文件 subnet 192.168.0.0 netmask 255.255.255.0 -->所处网段. 将0改为1 option routers 192.168.1.1; -->网关 range dynamic-bootp 192.168.1.128 192.168.1.254; -->dhcp所分配的地址 next-server 192.168.1.10; -->指定TFTP服务器地址(手动添加) filename "pxelinux.0"; -->指定PXE引导程序的文件名(手动添加) [root@localhost ~]#service dhcpd start -->开启dhcp服务 [root@localhost ~]#service xinetd start -->开启TFTP服务 新建一个CentOS 32位, 将网卡和PXE设置在同一网卡上.
7. 实现无人值守安装 [root@localhost ~]#yum -y install system-config-kickstart -->安装无人值守软件 打开程序-->系统工具-->kickstart
配置完后需保存 [root@PXE ~]# cp ks.cfg /var/ftp/centos/ -->修改无人值守自动应答文件 [root@PXE ~]# vim /tftpboot/pxelinux.cfg/default prompt 1 -->将1改为0 label auto kernel vmlinuz append ks=ftp://192.168.1.10/centos/ks.cfg initrd=initrd.img devfs=nomount ramdisk_size=8192 -->添加ks引导参数以指定ks.cfg应答文件的URL路径(红色字体需要手动添加) 新建CentOS 32位,网卡和PXE一样. 启动后无人值守PXE网络装机.
上等干货在此。
BY:90root
|