zoukankan      html  css  js  c++  java
  • PXE 实现自动装机

    搭建 PXE 远程安装服务器

    image_1cqg00g0os9b1pop122e98o19ef9b.png-255kB

    1.把光盘源放在/var/ftp/centos6

    因为远程装机对放服务器得读取你的光盘源才能安装
    mkdir -p /var/ftp/centos6
    cd /var/ftp/centos6
    cp -rp /media/cdrom/* .
    2.安装tftp并修改配置文件然后启动服务

    yum -y install tftp-server
    image_1cqg0hmps1af1p231bld16p19599o.png-224.2kB
    打开tftp配置文件
    vim /etc/xinetd.d/tftp
    wait的行改成no
    disable的行改成no
    image_1cqg0r84n1cs0ekloem17gh1sl5b5.png-38.6kB
    启动服务
    /etc/init.d/xinetd start
    chkconfig tftp on
    3.准备 Linux 内核、初始化镜像文件

    image_1cqg0ulkht7t108eq1j1mra19l3c2.png-132.2kB

    cd /var/ftp/centos6/isolinux
    cp vmlinuz initrd.img /var/lib/tftpboot(这是tftp服务端的目录,远程给客户端分发装机配置文件就从这个目录分发,所以要复制到这里来)
    4.准备 PXE 引导程序、启动菜单文件

    image_1cqg174ptltr1v9ov4v14ja1ulcv.png-204.6kB
    image_1cqg17gsk1qroupcddfks31goedc.png-159.1kB
    image_1cqg17s031q8v7lctgb1gp9u44dp.png-216.9kB

    准备引导程序:
    yum -y install syslinux
    cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot

    准备启动菜单
    cp /var/ftp/centos6/isolinux/isolinux.cfg /var/lib/tftpboot
    cd /var/lib/tftpboot
    复制的这四个文件是装机的引导文件和内核文件
    chmod 644 isolinux.cfg
    为了安全,改一下权限
    vim isolinux.cfg

    第一行是名字 改成default linux
    第二行prompt 1 改成 0 不进行交互
    因为那么多机子要是交互的话忙不过来。
    第三行timeout超时时间可以注释掉
    label vesa 改成 label text
    append 后面加个单词text
    label rescue模块里的append后面加个单词rescue
    保存退出!
    cd /var/lib/tftpboot
    mkdir pxelinux.cfg
    mv isolinux.cfg ./pxelinux.cfg/default
    把这个文件移动到刚刚新建的目录里然后改个名字默认的意思
    5.安装并启动DHCP服务

    image_1cqg23ushn4b21u160pubg1tvnel.png-211.5kB
    yum -y install dhcp
    cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcp/
    cd /etc/dhcp
    cat dhcpd.conf.sample > dhcpd.conf

    vim ~/dhcpd.conf
    1.option domain-name “example.org
    双引号里面随便改 名字

    2.option domain-name-servers ns1.example.org, ns2.example.org;
    把这行改成option domain-name-servers 192.168.200.2;
    因为是nat模式所以网关改成这个才能上网

    3.default-lease-time 600;改成21600秒

    4.max-lease-time 7200;改成43200

    5.subnet 10.254.239.0 netmask 255.255.255.224 {这行声明改成subnet 192.168.200.0 netmask 255.255.255.0 {

    6.把range 10.254.239.10 10.254.239.20;改成range 192.168.200.10 192.168.200.200;(这是分发范围)

    7.把网关地址option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org;改成
    option routers 192.168.200.2;
    然后在插两行
    (1)next-server 192.168.200.99;(写的是PXE服务端的IP 因为,得让他们客户端找到pxe)
    (2)filename “pxelinux.0”;(要这个pxe引导文件)

    8.删除掉后面的行 保存退出就OK了

    9./etc/init.d/dhcpd start
    启动服务

    6、新建虚拟机进行验证

    yum -y install vsftpd
    /etc/init.d/vsftpd start
    客户端要yum -y install ftp

    image_1cqg3umjc19dr1d9l122uvhum17f2.png-69.3kB
    image_1cqg3vfq329ov971edo11fchk0gf.png-90.1kB
    image_1cqg4026s1ta812ieirdn7342ags.png-41.4kB
    image_1cqg40e9utr1ig913ahn6hblfh9.png-113kB
    image_1cqg40mntr5h119fcgp10b2sf4hm.png-82.4kB
    image_1cqg4207mi67ba1ivkpqb1u8uj3.png-20.7kB
    写上PXE服务端的IP和光盘源目录
    image_1cqg42ih8vs31ia91n6vnsv4s4k0.png-51.2kB
    (3)其余过程与本地安装相同(略)

    虽然能远程装机,但是还是需要交互

    三、实现 kickstart 无人值守安装

    1、创建应答文件
    image_1cqg7246ljiu1o3f9dei7hhvcld.png-90kB
    在PXE服务端安装这个(服务端有桌面模式)
    yum -y groupinstall Desktop(安装桌面模式)
    yum -y install system-config-kickstart
    通过这个东西生成自动安装脚本
    setenforce 0 必须关了 否则不J8行
    image_1cqgi7e861ntg1dka1bq36bg1fio9.png-241.5kB

    image_1cqgi7pvb6vmsc17j41hkkfcpm.png-133.6kB

    image_1cqgi83pa3mrs0aamgp1j2th13.png-90.8kB
    image_1cqgi8iplfcem3j1im618umq1b1g.png-64.7kB

    image_1cqgi8rune2h1n8e9fgafh1tft1t.png-157.8kB
    image_1cqgi99dvj7h967j5cijk1ing2a.png-96.6kB

    image_1cqgi9i7k16f7q6716eo13gh1mt02n.png-77.5kB
    image_1cqgi9v3ljdidh31qj91h3fi4t34.png-134.2kB
    web服务器
    image_1cqgiadcf1qto1vbi16i31o431ep73h.png-131.9kB
    image_1cqgibd5l1tfkt9alr15au1rh44q.png-94.2kB

    四、实现批量自动装机(PXE 与 kickstart 的结合使用)

    1、将应答文件部署在客户机可以访问的位置
    image_1cqgidon11c8154d1ak91pdrjdh5a.png-288.7kB
    image_1cqgie4b01u6j1poj1oc13lqu295n.png-186.6kB
    image_1cqgieekj1obv1po3kqj1fpn147r64.png-146.6kB
    image_1cqgieq405ng1fp86bv1op81m5171.png-141.1kB
    image_1cqgif6s71uvf1t8or0cfo4ibi7e.png-156.9kB

    五、实现不同网段的不同装机

    image_1cqgigecs1foq168d11h81dpc3788.png-235.9kB
    image_1cqgigm4mkk967485dnpf1i9e8l.png-345.3kB
    image_1cqgih233vjnljr1rd4klg1q8092.png-119.7kB
    image_1cqgihq0j1ouu33u46lv7m1uik9f.png-194.3kB
    image_1cqgii4cp1s3nk2bh31h1jklp9s.png-122.2kB
    image_1cqgiieke1vdgtcf1opsskc18qa9.png-189.1kB

  • 相关阅读:
    the most beautiful media player on the linux platform.
    python IDE 集合
    cassandra java 兼容性问题及其解决方法
    记github上搭建独立域名的免费博客的方法过程
    淘宝购物数据统计分析
    python ipython spyder
    python 实验环境
    golang显示支持的os和arch列表
    命令行设置代理
    vscode远程调试备注
  • 原文地址:https://www.cnblogs.com/A6666/p/9911444.html
Copyright © 2011-2022 走看看