• centos7/rhel7下配置PXE+Kickstart自动安装linux系统


    应用场景:临时安装一个系统或者批量安装linux系统,无需人工介入选择下一步,减少在安装系统上的时间浪费,提高工作效率。

          DHCP + TFTP + Syslinux + FTP + Kickstart

    系统环境:centos7桌面版(RHEL7适用);  //已经关闭 Selinux和 Firewall

         说明之所以选择桌面版是因为后面运行kickstart时需要有类似windows下的对话框弹出,后面详细说明

    配置步骤:

      1. 安装DHCP服务

        ~]#yum install -y dhcp

        安装好之后配置dhcp,添加内容如下:

        ~]#vim /etc/dhcp/dhcpd.conf

          allow booting;
          allow bootp;
          ddns-update-style interim;
          ignore client-updates;
          subnet 158.158.41.0 netmask 255.255.255.0 {               //根据自己网络环境定义子网
              option subnet-mask        255.255.255.0;
              range dynamic-bootp        158.158.41.210 158.158.41.250;    
              default-lease-time         36000;    
              max-lease-time           72000;    
              next-server             158.158.41.200;          //这台主机的IP
              filename              "pxelinux.0";
          }

        保存后,启动服务并加入开机启动:

        ~]#systemctl start dhcpd

        ~]#systemctl enable dhcpd

          

      2. 安装TFTP服务

        ~]#yum install -y tftp-server 

        ~]#yum install -y xinetd      //tftp由xinetd管理,没有就装上该服务

        ~]#vim /etc/xinetd.d/tftp    //修改配置文件,将disable的值yes改为no

          

        保存后,启动服务并加入开机启动:

        ~]#systemctl start xinetd

        ~]#systemctl enable xinetd

          

      3. 安装syslinux服务

        ~]#yum install -y syslinux

        将引导相关文件复制到tftp目录以供客户端下载:(前提:光盘或者镜像文件挂载到/media/cdrom)

          ~]#cd /var/lib/tftpboot

          tftpboot]#cp /usr/share/syslinux/pxelinux.0 .

          tftpboot]# cp /media/cdrom/images/pxeboot/{vmlinuz,initrd.img}  .    //点号“.”不能忘

          tftpboot]# cp /media/cdrom/isolinux/{vesamenu.c32,boot.msg}  .

        先在当前目录新建一个目录pxelinux.cfg:

          tftpboot]# mkdir pxelinux.cfg

        复制相关文件到该目录下并更名为default:

          tftpboot]# cp /media/cdrom/isolinux/isolinux.cfg  pxelinux.cfg/default

        接着编辑引导模板文件:

          tftpboot]# vim pxelinux.cfg/default

          

          

      4. 安装FTP服务

        ~]#yum install -y vsftpd

        启动ftp服务并加入开机启动:

          ~]#systemctl start vsftpd

          ~]#systemctl enable vsftpd

          

        接着,将光盘里的内容全部copy到安装FTP时生成的目录/var/ftp/中去:(前提:光盘或者镜像文件挂载到/media/cdrom

          

      5. 安装system-config-kickstart服务

        ~]#yum install -y system-config-kickstart

        安装好之后会生成命令“system-config-kickstart”,直接执行:

          ~]#system-config-kickstart    //这里为了跳出对话框(配置更加直观),才使用的桌面版centos7

          

          

          

          

          

          

          

        

        以上的这些根据自己需求更改,调整好之后就是为了得到上文中提到的一个ks.cfg文件:

          

          

        查看一下/var/ftp/pub/目录:

          

       至此,安装和配置完成。

      6. 测试自动安装系统

        新建了另外一台虚机,打开电源启动:    //默认模式是DHCP ,去寻找dhcp服务器

         

      从之前搭建的DHCP服务器获取到IP后,就一系列的获取到了系统安装文件(ftp://158.158.41/...)和自动配置文件(ks.cfg文件):

        

      下面就是系统根据ks.cfg文件自动选择(包括时区,语言,分区,root密码,selinux,防火墙...),并且直到安装完毕后自动重启

      结束.

        

  • 相关阅读:
    C#编程语言详解(第2版) 11.3 类和结构的区别
    .Net程序员如何快速成长之我见
    封装 JMail 4.4 的 POP3 为 .Net 组件 (.dll 程序集),实现 "邮件(附件) 到达" 等 "事件,c#接收邮件
    POJ1163The Triangle
    hdoj_1231&&hdoj_1003最大连续子序列
    数组名++操作导致的_BLOCK_TYPE_IS_VALID
    《windows程序设计》第二章学习心得
    error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartup
    Windows环境下Unicode编程总结
    已知顺序表L递增有序,写一算法,将X插入到线性表的适当位置,以保持线性表的有序
  • 原文地址:https://www.cnblogs.com/ding2016/p/6807033.html
Copyright © 2020-2023  润新知