• PXE自动装机


    PXE自动装机

    因为自动装机没有IP地址需要使DHCP分发一个IP地址

    TFTP就是FTP的一个变种

     

    PXE自动装机需要桌面模式

    假如不是桌面模式安装的PXE需要安装桌面模式软件包

    yum groupinstall "Desktop"

     

    PXE搭建流程

     

    准备CentOS6安装源

    mount /dev/sr0 /media/cdrom

    mkdir -p /var/ftp/centos6

    cd /var/ftp/centos6

    cp -rp /media/cdrom/* .

    image_1cqt781r71fopfbgelieuh1qfj9.png-55.1kB

    image_1cqt794lh13d42vu1ggr4qkurum.png-32.5kB

    image_1cqt7cmf21dgak1pg4j1ps15cb13.png-8.3kB

     

    安装TFTP服务

    yum -y install tftp-server

    image_1cqt7f5qte810oifhptkd13tk1g.png-11.2kB

     

    修改配置文件

    vim /etc/xinetd.d/tftp

     
    1. wati=no --->无需等待,同一时刻可以有多个客户端连接(修改为no)
    2. server args = -/var/lib/tftpboot --->tftp服务的根目录不需要修改
    3. disable=no --->开启tftp服务(修改为no)

    image_1cqt7gibq1i5s68e1jpu1s819bj1t.png-38.4kB

     

    完成后启动服务和开机启动

    /etc/init.d/xinetd start

    chkconfig tftp on

    image_1cqt7ib6jkd4d7d18ib14pmu272a.png-13.4kB

     

    准备Linux内核,初始化镜像文件

    cd /var/ftp/centos6/isolinux

    cp vmlinuz initrd.img /var/lib/tftpboot

    image_1cqt7lig1pdq5pc675lm6svd2n.png-30.1kB

     

    准备引导程序

    yum -y install syslinux

    cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot

    image_1cqt7ngl3n8117shjv41lut12qt34.png-24.3kB

     

    准备启动菜单

    cp /var/ftp/centos6/isolinux/isolinux.cfg /var/lib/tftpboot

    cd /var/lib/tftpboot

    chmod 644 isolinux.cfg

    image_1cqt7pbvg1m7u1vki1k6rb4h1e43h.png-29.7kB

     

    修改启动菜单配置文件

    vim isolinux.cfg

     
    1. default linux --->主机名
    2. prompt 0 --->手动添加不进行交互
    3. #timeout --->超时时间注释掉就可以
    4. label vesa --->修改为label text
    5. 第二个字段append initrd --->修改成append text initrd
    6. 第三个字段append initrd --->修改成append rescue initrd

    cd /var/lib/tftpboot

    mkdir pxelinux.cfg

    mv isolinux.cfg pxelinux.cfg/default

    image_1cqtd26sm18e7qt1qap1qabhmq2q.png-70.9kB

    image_1cqt80aprsko4du1cpb1gqq1344b.png-32.8kB

     

    配置文件详解

    initrd.img --->初始化镜像文件

    pxelinux.0 --->PXE引导程序

    vmlinuz --->Linux内核

     

    安装并启动DHCP服务

    yum -y install dhcp

    cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcp

    cat dhcpd.conf.sample > dhcpd.conf

    vim /etc/dhcp/dhcpd.conf

     
    1. #名字随便起
    2. option domain-name "sl";
    3. #DNS服务器的IP地址
    4. option domain-name-servers 192.168.200.2;
    5. #最小租约时间
    6. default-lease-time 21600;
    7. #最大租约时间
    8. max-lease-time 43200;
    9. #日志
    10. log-facility local7;
    11. #subnet代表声明分发IP网段
    12. #range代表分发IP范围
    13. #routers代表路由也是网关ip
    14. #next-server代表找PXE服务的IP
    15. #filename代表要什么文件
    16. subnet 192.168.200.0 netmask 255.255.255.0 {
    17. range 192.168.200.100 192.168.200.200;
    18. option routers 192.168.200.2;
    19. next-server 192.168.200.76;
    20. filename "pxelinux.0";
    21. }

    /etc/init.d/dhcpd start

    ss -antup | grep 67

    yum -y install vsftpd

    /etc/init.d/vsftpd start

    image_1cqt88eah1b4q1hcv1mhrp161a2t4o.png-34.3kB

    image_1cqtal2b71jov1h0lvjf1ot31ipv9.png-74.2kB

    image_1cqt8edb01eo41n8s8v9o7j92b55.png-30.6kB

    image_1cqtap90df1i1n77r1u1uen124nm.png-55.3kB

     

    新建虚拟机进行验证

    编辑-虚拟网络编辑器-更改设置-NAT模式=使用本地DHCP取消勾选

    文件-新建虚拟机

    网络适配器-自定义=NAT模式

    进入界面选择English-us-URL-OK

    ftp://192.168.200.76/centos6

    image_1cqtb0drh1ahficnnh21kmr15fv13.png-104.7kB

    image_1cqtb34mp4cf1msn1s13gv11slu1g.png-37.5kB

    image_1cqtd3sh72pm1mr3mcue5d1g7t3t.png-15.4kB

    image_1cqtd6kh91lga1v7fgsk1hpdf2r4a.png-14.3kB

     

    实现kickstart无人值守安装

    yum -y install system-config-kickstart

    应用程序-系统工具-kickstart

    image_1cqteif1nr681um713ut10vj14jb9.png-61kB

    image_1cqtek387194v18tj1f5111l5b6bm.png-123.1kB

     

    kickstart配置程序

     

    基本配置(Basic Configuration)

    设置语言,键盘,时区,Root密码,安装完毕后重启,在文本模式中执行安装(默认为图形化模式)

    image_1cqtevj151no4pooo0of8r1fg913.png-78.4kB

     

    安装方法(Installation Method)

    执行新安装(Perform new installation)

    FTP 
    FTP服务器192.168.200.66 
    FTP目录centos 6

    image_1cqtfh69lau116inreo1ctk13cg1t.png-62.9kB

     

    分区信息(Partition Information)

    添加-挂载点=/boot-文件系统类型=ext4-固定大小=200-确定

    image_1cqtflrva11i21taa39988qm6a2a.png-51.8kB

    添加-文件系统类型=交换-固定大小=2048-确定

    image_1cqtfnensvd41m4j1ah7i65kbm2n.png-50.8kB

    添加-挂载点=/-文件系统类型=ext4-使用磁盘上全部未用空间-确定

    image_1cqtfqkpm11aoa51amb1vvr5a434.png-50.6kB

    清除主引导记录-删除所有现存分区-初始化磁盘标签

    image_1cqtfti33pnplu7fembgq1v1e6h.png-51.4kB

     

    网络配置(Network Configuration)

    添加网络设备-网络设备=eth0-网络类型=dhcp-确定

    image_1cqtfvimhrb1v344im1aj415036u.png-65kB

     

    防火墙设置(Firewall Configuration)

    Linux安全增强版=禁用-安全级别=禁用防火墙

    image_1cqtg271skia1tsvfb31dl92ff7b.png-48.5kB

     

    显示配置(Display Configuration)

    安装图形环境=取消勾选

    image_1cqtg4avsdt311om7m2q4615g97o.png-40.4kB

     

    软件包选择(Package Selection)

    Web服务=PHP支持

    image_1cqtg7ho51lbcl89eklbb1rgn85.png-67.4kB

    语言支持=中文支持

    image_1cqtgbk2k14kc1000a2h1705spt8i.png-81.8kB

    数据库=MySQL数据库

    image_1cqtgehtg1b93i911q1t1km11mpv9h.png-67.8kB

     

    安装后脚本(Post-Installation Script)

    使用解释器=/bin/bash

    在下面键入您的%post脚本 
    脚本内容

    这里只是演示作用,正常不写脚本的话Use an interpreter选项不需要打勾。

    image_1cqtgfp4gcbf1kvtkifci4husa1.png-56.7kB

     

    完成后保存(file)

    文件=保存

    image_1cqtghkhh1p9419rp14bl1sm61os5ae.png-9.2kB

    名称=ks.cfg-保存于文件夹=root-保存

    image_1cqtgidfc32u9tu2ob1it81et6ar.png-16.8kB

     

    复制配置文件和权限

    cp ks.cfg /var/ftp

    chmod 777 /var/ftp/ks.cfg

    image_1cqtgo1cuc5r14qrg42r3512cidn.png-33kB

     

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

    vim /var/lib/tftpboot/pxelinux.cfg/default

    append initrd=initrd.img ks=ftp://192.168.200.76/ks.cfg

    image_1cqtgval01gub1el64sv6tc1sade4.png-54.3kB

     

    无人值守安装时,遇到内核过旧如何让它不提示

    cd /var/ftp

    vim ks.cfg

    在第三行下面添加 
    unsupported_hardware

    image_1cqth3hnh1apoqa31ev4tqqnmbeh.png-14.1kB

     

    测试阶段

    image_1cqth909k184jro41tv4g7g1iqieu.png-24kB

    image_1cqthbpc1dgj14d4uqndv11aksfb.png-11.3kB

    image_1cqthceqv1k4d1168fdu181c1qv3fo.png-13kB

  • 相关阅读:
    o gdb
    net -t struct ifreq
    file -x stat()-fstat()-lstat()
    I/O -x fcntl()
    I/O -x dup() dup2()
    14条---注意点
    user -x userid
    err -x perror() strerror()
    苹果电脑挂载NTFS移动硬盘
    ASP.NET Core之EF Core学习笔记
  • 原文地址:https://www.cnblogs.com/666boke/p/9946121.html
Copyright © 2020-2023  润新知