zoukankan      html  css  js  c++  java
  • [无人值守安装操作系统]__RHEL6__FTP+TFTP+DHCP+Kickstart+PXE

    实验环境

    1.实验平台:VMware Workstation 10

    2.实验OS:RHEL6

    3.服务器A:

           (1) 10.0.10.158

           (2) DHCP/FTP/TFTP

           (3) 有可使用的yum源

           (4) 关闭防火墙和SELinux

    4.服务器B:

           (1) 为RHEL6被安装端

           (2) 设置为网络引导安装

           (3) 在VM中设置A和B连接在同一个LAN segement

    准备工作

    生成ks.cfg 文件需要system-config-kickstart 工具,而此工具依赖于X Windows。所以我们需要在服务器A安装X Windows 和Desktop(图形界面支持):

    # yum groupinstall Desktop
    # yum groupinstall "X Window System"
    # startx  ----->#可启动图形界面

    FTP的安装与配置

    # yum install vsftp*  -y   ------>#安装ftp
    # service vsftpd start     ------>#启动ftp服务
    # chkconfig vsftpd on      ------>#设置为开机自动启动

     注意:FTP的配置,一定要保证anonymous匿名用户可以登录!


    TFTP的安装与配置

    1.安装tftp服务

    # yum install tftp  -y
    # yum install tftp-server -y

    2.修改配置文件中13、14行的内容

    # vim /etc/xinetd.d/tftp 
      1 # default: off
      2 # description: The tftp server serves files using the trivial file transfer 
      3 #       protocol.  The tftp protocol is often used to boot diskless 
      4 #       workstations, download configuration files to network-aware printers, 
      5 #       and to start the installation process for some operating systems.
      6 service tftp
      7 {
      8         socket_type             = dgram
      9         protocol                = udp
     10         wait                    = yes
     11         user                    = root
     12         server                  = /usr/sbin/in.tftpd
     13         server_args             = -s /tftpboot   #修改
     14         disable                 = no             #修改
     15         per_source              = 11
     16         cps                     = 100 2
     17         flags                   = IPv4
     18 }
    

    3.重启xinetd服务,检查端口(xinetd本来就是开机自启的),则TFTP服务可正常启动了

    # /etc/init.d/xinetd  start
    # lsof -i:69
        COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
         xinetd  16111 root    5u  IPv4  76202      0t0  UDP *:tftp 

    DHCP的安装与配置

    1.安装DHCP,修改配置文件

    # yum install dhcp  -y
    # vim /etc/dhcp/dhcpd.conf
      ddns-update-style none;
      ignore client-updates;
      log-facility local7;
      default-lease-time 3600;
      max-lease-time 72000;
      subnet 10.0.10.0 netmask 255.255.255.0 {
          range 10.0.10.1  10.0.10.200;
          option routers 10.0.10.158;
          option subnet-mask 255.255.255.0;
       }
      filename "pxelinux.0";       ------>#这是网络引导必须有的配置
      next-server 10.0.10.158;     ------>#这是网络引导必须有的配置
      
    

    2.重启服务,设置为开机自启

    # service dhcpd restart
    # chkconfig dhcpd on

    配置Kicksart

    # mkdir /tftpboot    ------>#这对应了我们之前在xinetd.d/tftp配置文件中的设置(13行)
    # mkdir /tftpboot/pxelinux.cfg
    # yum  install  system-config-kickstart.noarch  –y  
    # cp /usr/share/syslinux/pxelinux.0 /tftpboot/  ------>#要安装system-config-kickstart.noarch才找得到syslinux这个目录的
    
    # mount /dev/sr0 /mnt    ------>挂载光盘到/mnt下,就可以拷贝光盘中需要的文件了
    # cp /mnt/isolinux/isolinux.cfg  /tftpboot/pxelinux.cfg/default
    # cp /mnt/images/pxeboot/initrd.img  /tftpboot/
    # cp /mnt/images/pxeboot/vmlinuz /tftpboot/
    # chmod 644 /tftpboot/pxelinux.cfg/default 
    
    # vim /tftpboot/pxelinux.cfg/default
         1	default linux     ------>#修改这里为linux,表示寻找18行的label linux
         2	#prompt 1
         3	timeout 600
         4	
         5	display boot.msg
         6	
         7	menu background splash.jpg
         8	menu title Welcome to Red Hat Enterprise Linux 6.4!
         9	menu color border 0 #ffffffff #00000000
        10	menu color sel 7 #ffffffff #ff000000
        11	menu color title 0 #ffffffff #00000000
        12	menu color tabmsg 0 #ffffffff #00000000
        13	menu color unsel 0 #ffffffff #00000000
        14	menu color hotsel 0 #ff000000 #ffffffff
        15	menu color hotkey 7 #ffffffff #ff000000
        16	menu color scrollbar 0 #ffffffff #00000000
        17	
        18	label linux
        19	  menu label ^Install or upgrade an existing system
        20	  menu default
        21	  kernel vmlinuz
        22	  append initrd=initrd.img ks=ftp://10.0.10.158/ks.cfg    ------>#修改这里(我们后面会生成ks.cfg这个文件的)------>如果要做成有人值守安装这行应该注释掉
        23	label vesa
        24	  menu label Install system with ^basic video driver
        25	  kernel vmlinuz
        26	  append initrd=initrd.img xdriver=vesa nomodeset
        27	label rescue
        28	  menu label ^Rescue installed system
        29	  kernel vmlinuz
        30	  append initrd=initrd.img rescue
        31	label local
        32	  menu label Boot from ^local drive
        33	  localboot 0xffff
        34	label memtest86
        35	  menu label ^Memory test
        36	  kernel memtest
        37	  append -
    

    制作无人值守安装文件

    1.在图形界面下,打开终端输入system-config-kickstart,弹出界面

    (1)基本配置:

        设置下默认安装的语言,时区,根口令,然后勾选下面的安装后重新引导

        

    (2).安装方法:

          选择执行新安装,配置ftp服务器的安装方法。

         

    (3).引导程序选项(漏截了盗个图)

         

    (4).分区信息

          根据需要规划分区大小

         

    (5).网络配置

         选择DHCP方式

        

    (6).验证

        

    (7).防火墙配置

          根据需求选择开启或关闭防火墙和SELinux

         

    (8).显示配置(再次盗图...)

         

    (9).软件包选择

         根据需求选择

         

    (10).预安装脚本和安装后脚本

             根据需求配置

            

    2.左上角file,点击保存,命令为ks.cfg

      


    最后一点步骤~

    1.记得我们的在/tftpboot/pxelinux.cfg/default文件的22行中写过:

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

       我们告诉了被安装机子要去哪里找这个安装文件,所以得把ks.cfg这个安装文件放到/var/ftp下,让它到时候可以去FTP服务器下载到这个安装文件

    # cp  /root/ks.cfg  /var/ftp

    2.记得我们在制作安装文件ks.cfg时,对于第(2)安装方法的配置吗。我们的安装源设置成了FTP方式,目录写了/pub

        所以,要把光盘挂到/var/ftp/pub下,被安装机子需要的安装光盘里面的内容,就是到这里去找的

    # mount  /dev/sr0  /var/ftp/pub

     补充

    1.可以查看一下安装文件ks.cfg的内容,会发现实质就是我们在制作过程中选择的那些设置

    #platform=x86, AMD64, or Intel EM64T
    #version=DEVEL
    # Firewall configuration
    firewall --disabled
    # Install OS instead of upgrade
    install
    # Use network installation
    url --url="ftp://10.0.10.158/pub"
    # Root password
    rootpw --iscrypted $1$4mwMdVVg$x40MwRz3xD13hzBGOIwUs0
    # System authorization information
    auth  --useshadow  --passalgo=md5
    # Use graphical install
    graphical
    firstboot --disable
    # System keyboard
    keyboard us
    # System language
    lang zh_CN
    # SELinux configuration
    selinux --disabled
    # Installation logging level
    logging --level=info
    # Reboot after installation
    reboot
    # System timezone
    timezone  Africa/Abidjan
    # Network information
    network  --bootproto=dhcp --device=eth0 --onboot=on
    # System bootloader configuration
    bootloader --location=mbr
    # Clear the Master Boot Record
    zerombr
    # Partition clearing information
    clearpart --all --initlabel
    # Disk partitioning information
    part /boot --fstype="ext4" --size=200
    part /home --fstype="ext4" --size=500
    part swap --fstype="swap" --size=1024
    part / --fstype="ext4" --grow --size=1
    
    %packages
    @additional-devel
    @base
    @basic-desktop
    @chinese-support
    @console-internet
    @desktop-debugging
    @desktop-platform
    @development
    @emacs
    @fonts
    @general-desktop
    @graphical-admin-tools
    @graphics
    @input-methods
    @internet-applications
    @internet-browser
    @kde-desktop
    @network-tools
    @nfs-file-server
    @office-suite
    @remote-desktop-clients
    @system-admin-tools
    @system-management
    @system-management-snmp
    @system-management-wbem
    @tex
    @x11
    git
    ftp
    tftp
    wget
    xsettings-kde
    -ibus-table-cangjie
    -ibus-table-erbi
    -ibus-table-wubi
    %end
    %post      
    chkconfig NetworkManager off          ------>#所以可以在其中添加一些脚本来实现一些自定义的设置                
    sed -i '/NM/s/yes/no/' /etc/sysconfig/network-scripts/ifcfg-eth0
    mkdir /myfile
    wget ftp://10.0.0.254/pub/service.txt -O /myfile
    chmod 600 /myfile/service.txt
    useradd user01
    echo "aixocm" | passwd --stdin user01
    %end
    

    2.实验过程遇到的错误

        见博文:http://www.cnblogs.com/snsdzjlz320/p/5630268.html

                 

  • 相关阅读:
    跨域
    关于DEDECMS自定义模型当中添加自定义字段后在后台添加内容后不显示解决方案
    js复制文本
    dedecms 织梦显示时间格式
    基本特效:饿了么丝滑无缝过度搜索栏的实现
    2016-wing的年度总结
    这交互炸了(四) :一分钟让你拥有微信拖拽透明返回PhotoView
    这交互炸了(三):闪屏页是像云一样消失的
    这交互炸了(二):爱范儿是如何让详情页缩小为横向列表的
    这交互炸了:饿了么是怎么让Image变成详情页的
  • 原文地址:https://www.cnblogs.com/snsdzjlz320/p/5629127.html
Copyright © 2011-2022 走看看