zoukankan      html  css  js  c++  java
  • 项目课PXE自动装机(二)

    一、PXE概述

             PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。PXE可以引导多种操作系统。

    二、PXE自动装机步骤

    1、准备CentOS 6安装源

    挂载光盘

    [root@localhost ~]# mount /dev/sr0 /media/cdrom/
    mount: block device /dev/sr0 is write-protected, mounting read-only

    创建FTP的共享目录,并把系统资源放进去

    [root@localhost ~]# mkdir -p /var/ftp/centos6
    [root@localhost ~]# cp -rp /media/cdrom/* /var/ftp/centos6/  -> -r:强制复制  -p:保持属性不变

    [root@localhost ~]# du -sh /var/ftp/  
    4.2G /var/ftp/

    2、安装TFTP服务

    yum库安装TFTP

    [root@localhost ~]# yum -y install tftp-server

    打开TFTP配置文件

    [root@localhost ~]# vim /etc/xinetd.d/tftp

    配置完成保存退出

    开启tftp服务并加入开启自启

    [root@localhost ~]# /etc/init.d/xinetd start  ->xinetd=tftp

    [root@localhost ~]# chkconfig tftp on

    3、准备linux内核分发文件

    [root@localhost ~]# cd /var/ftp/centos6/isolinux/  ->内核引导文件

     

    [root@localhost isolinux]# cp vmlinuz initrd.img /var/lib/tftpboot/  ->将内核引导文件复制到tftp目录

    安装引导程序

    [root@localhost isolinux]# yum -y install syslinux

    [root@localhost isolinux]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/  ->准备引导文件
    [root@localhost isolinux]# cp /var/ftp/centos6/isolinux/isolinux.cfg /var/lib/tftpboot/  ->准备启动文件
    [root@localhost isolinux]# ls /var/lib/tftpboot/

    修改权限和启动菜单配置

    [root@localhost isolinux]# cd /var/lib/tftpboot/

    [root@localhost tftpboot]# chmod 644 isolinux.cfg   ->修改权限,为了文件安全

    [root@localhost tftpboot]# vim isolinux.cfg

    配置完成保存退出

    [root@localhost tftpboot]# pwd  ->当前路径
    /var/lib/tftpboot
    [root@localhost tftpboot]# mkdir pxelinux.cfg ->创建一个文件
    [root@localhost tftpboot]# mv isolinux.cfg pxelinux.cfg/default  ->把isolinux.cfg移到pxelinux.cfg下并改名default(内核引导过程)

     4、安装并启动DHCP服务

    [root@localhost tftpboot]# yum -y install dhcp

    [root@localhost tftpboot]# cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcp/  ->复制dhcp配置模板

    [root@localhost tftpboot]# cat /etc/dhcp/dhcpd.conf.sample > /etc/dhcp/dhcpd.conf  ->重定向配置模板到配置文件

    [root@localhost tftpboot]# vim /etc/dhcp/dhcpd.conf  ->进入配置文件

    配置完成保存退出

    [root@localhost tftpboot]# /etc/init.d/dhcpd start  ->启动dhcp服务

    [root@localhost tftpboot]# netstat -anpu | grep 67  ->检dhcp是否监听端口

     

    5、安装ftp测试dhcp和ftp

    服务端:

    [root@localhost tftpboot]# yum -y install vsftpd  ->还需要装一个服务端的vsftp服务

    [root@localhost tftpboot]# /etc/init.d/vsftpd start  ->启动vsftp服务

    [root@localhost tftpboot]# netstat -antup | grep vsftpd  ->查看vsftp是否监听端口

     重点:

    SElinux是否关闭

    查看SELinux状态:/usr/sbin/sestatus -v      #如果SELinux status参数为enabled即为开启状态

    1.临时关闭(不用重启机器)

    setenforce 0       ->设置SELinux 成为permissive模式
                               ->setenforce 1 设置SELinux 成为enforcing模式

    2.修改配置文件需要重启机器

    修改/etc/selinux/config 文件

    将SELINUX=enforcing改为SELINUX=disabled

    reboot  ->重启

    防火墙是否关闭

    查看防火墙状态:service iptables status

    1.暂时关闭防火墙: service iptables stop 

    2.禁止防火墙在开机时启动:chkconfig iptables off 

       设置防火墙在开机时启动:chkconfig iptables on

    客户端:

    断开本地dhcp分发

     挂载光盘

    [root@localhost ~]# mount /dev/sr0 /media/cdrom/

     安装客户端ftp

    [root@localhost ~]# yum -y install ftp

    测试ftp连接服务端

    连接成功,能够读取服务端数据。

    6.新建虚拟机进行安装

    1.调整BIOS,以便从网络引导

    虚拟机 -> 电源 ->打开电源时进入固件

     

     6.实现kickstart无人值守装机

     安装kickstart

    [root@localhost ftp]# yum -y install system-config-kickstart

    安装桌面模式(因为这里开始使用的就是mini模式)

    [root@localhost ftp]# yum groupinstall "Desktop"

    [root@localhost ftp]# init 5  ->切换桌面

    桌面模式命令 system-config-kickstart  或者下面这两种方式都能打开kickstart设置

    想安装图形环境的可以不用管

    将应答文件部署在客户机可以访问的位置

    [root@localhost ~]# cp /root/ks.cfg /var/ftp/  ->把应答部署文件复制给ftp目录
    [root@localhost ~]# chmod 777 /var/ftp/ks.cfg  ->修改部署文件的权限(程序用户ftp能拥有读写权限)

    修改启动菜单文件,调用应答文件

    [root@localhost ~]# vim /var/lib/tftpboot/pxelinux.cfg/default

    配置完成保存退出

     

    都重启一下各个服务(确保服务都开启)

    /etc/init.d/dhcpd restart
    /etc/init.d/xinetd restart 
    /etc/init.d/vsftpd restart

    安装时还是会出现一个小卡顿(这个界面需要手动ok)

    解决方法:

     [root@localhost ~]# vim /var//ftp/ks.cfg  ->进入应答部署文件

    配置完成保存退出

     7.验证无人值守安装

    8.总结

    SElinux是否关闭,防火墙是否关闭,配置文件的服务端ip,各个配置文件路径,各个服务是否开启,端口是否监听

  • 相关阅读:
    JavaScript的数据类型
    php字符串操作
    PHP快速入门
    JavaScript简介与使用方法
    《技术大牛的养成指南》--读书笔记
    Java并发编程-多线程
    分布式锁的实现方式和优缺点&Java代码实现
    Java操作Zookeeper
    排序二叉树、平衡二叉树、红黑树
    HashMap&Hashtable&LinkedHashMap&ConcurrentHashMap&Collections.synchronizedMap
  • 原文地址:https://www.cnblogs.com/wangyinuo/p/9929559.html
Copyright © 2011-2022 走看看