精华内容
下载资源
问答
  • Cobbler离线安装配置、批量安装操作系统步骤说明以及问题汇总 本次安装测试基于Centos7.2 minimal系统在VMware是模拟物理机安装的操作试验。 目录: 一、Cobbler简介 二、Cobbler安装前准备 三、Cobbler离线...

    Cobbler离线安装配置、批量安装操作系统步骤说明以及问题汇总

    本次安装测试基于Centos7.2 minimal系统在VMware是模拟物理机安装的操作试验。

    目录:

    一、Cobbler简介

    二、Cobbler安装前准备

    三、Cobbler离线安装

    四、检测Cobbler

    五、Cobbler的配置文件修改设置

    六、Cobbler的系统镜像文件的挂载和系统的导入

    七、VMware上测试cobbler

    八、PXE默认启动项修改

    九、Cobbler-web概述

    附录:cobbler安装配置出现的问题汇总 

    一、Cobbler简介

    Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等。

    Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用。

    Cobbler是较早前的kickstart的升级版,优点是比较容易配置,还自带web界面比较易于管理。

    Cobbler模型的各个组件之间的关系如下:

    摘自https://github.com/cobbler/cobbler/wiki/How%20We%20Model%20Things

    二、Cobbler安装前准备

    安装Cobbler之前先查看一下基础环境:

    #cat/etc/redhat-release    (查看系统版本)

    #uname-r   (内核版本)

    #getenforce     (检测selinux是否关闭,必须要关闭)

    关闭selinux方法:

    #vim/etc/selinux/config

    如上,“SELINUX”参数有“enforcing、permissive、disabled”,将selinux关闭,需要将参数至为“disabled”即可,然后“# reboot”系统。

    还需要关闭防火墙:

    # systemctlstop firewalld    (关闭防火墙)

    # iptables-L               (查看是否关闭)

    查看本机的IP:

    注:若是在线安装,则需要使用到epel源,yum源替换成阿里源或是网易源也比较快点。

    # curl-o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo  (替换yum源为阿里源)

    # curl-o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo  (添加epel源)

    以上就是准备工作,主要就是关闭防火墙,查看主机IP。

     

    三、Cobbler离线安装

    cobbler在线安装很简单。只需:

    # yuminstall httpd dhcp tftp python-ctypes cobbler xinetd cobbler-web

    下面是离线安装所需要安装以及更新的rpm包(见附件一):

    首先进入到"/updates"文件夹下,先更新该目录下的所有rpm包,然后返回上一级目录,安装所有的rpm包,如下:

    #rpm -U *.rpm

    #rpm -ivh *.rpm

    以上离线安装完,但是还需要修改完配置文件才能使用。

     

    四、检测Cobbler

    先启动apache和cobbler服务,且设为开机启动:

    #systemctl enable xinetd && systemctl start xinetd

    #systemctl enable httpd.service && systemctl start httpd.service

    #systemctl enable cobblerd.service && systemctl start cobblerd.service

    查看apache和cobbler服务是否正确启动:

    #systemctl status httpd.service cobblerd.service

    确定都启动了,不存在假启动的话,下面可以进行cobbler检测:

    #cobbler check

    针对以上检测出来的问题,解决如下:

    1)       The 'server' field in/etc/cobbler/settings must be set to something other than localhost, orkickstarting features will not work. This should be a resolvable hostname or IP for the boot server asreachable by all machines that will use it.

    解决方法:修改/etc/cobbler/settings,将server对应的IP改为cobbler安装主机的IP,即将server: 127.0.0.1改成server: 192.168.139.153,切记切记,server: 后面有空格!!

     

    2)       For PXE to be functional,the 'next_server' field in /etc/cobbler/settings must be set to something otherthan 127.0.0.1, and should match the IP of the boot server on the PXE network.

    解决方法:修改/etc/cobbler/settings,将next_server对应的IP改为cobbler安装主机的IP,即将server: 127.0.0.1改成server: 192.168.139.153

     

    3)       change 'disable' to 'no'in /etc/xinetd.d/tftp

    解决方法:将/etc/xinetd.d/tftp中disable对应值改成no。

     

    4)       some network boot-loadersare missing from /var/lib/cobbler/loaders, you may run 'cobbler get-loaders' todownload them, or, if you only want to handle x86/x86_64 netbooting, you mayensure that you have installed a *recent* version of the syslinux packageinstalled and can ignore this message entirely. Files in this directory, should you want to support all architectures,should include pxelinux.0, menu.c32, elilo.efi, and yaboot. The 'cobblerget-loaders' command is the easiest way to resolve these requirements.

    解决方法:执行cobbler get-loaders,此时是在线安装,本文使用离线安装

    get-loaders的文件见“附件二”。具体步骤见下一节。

     

    5)       enable and startrsyncd.service with systemctl

    解决方法:执行systemctl enable rsyncd;systemctl start rsyncd

     

    6)       debmirror package is notinstalled, it will be required to manage debian deployments and repositories

    解决方法:debian的包,可以不下载,不影响使用cobbler。

     

    7)       The default password usedby the sample templates for newly installed machines (default_password_cryptedin /etc/cobbler/settings) is still set to 'cobbler' and should be changed, try:"openssl passwd -1 -salt 'random-phrase-here' 'your-password-here'"to generate new one

    解决方法:给密码加盐,把生成的密码串添加到/etc/cobbler/settings里。具体步骤见下一节。

     

    8)       fencing tools were notfound, and are required to use the (optional) power management features.install cman or fence-agents to use them

    解决办法:电源管理工具,下载fence-agents

    yum-y install fence-agents

    暂时不安装,也不影响cobbler的使用。

     

    以上检测出来的问题,除了6和8不做处理,其他的问题在下面给出具体解决步骤。

     

    五、Cobbler修改配置文件

    首先修改"/etc/cobbler/settings"和" /etc/xinetd.d/tftp"俩文件:

    # sed-i 's/server: 127.0.0.1/server: 172.16.1.202/' /etc/cobbler/settings       (解决问题1)

    # sed-i 's/next_server: 127.0.0.1/next_server: 172.16.1.202/' /etc/cobbler/settings (解决问题2)

    # sed -i 's/manage_dhcp: 0/manage_dhcp: 1/' /etc/cobbler/settings

    # sed -i 's/pxe_just_once: 0/pxe_just_once: 1/' /etc/cobbler/settings

    #sed -ri "/default_password_crypted/s#(.*: ).*#\1\"`openssl passwd -1-salt 'cobbler' 'cobbler'`\"#" /etc/cobbler/settings                                                       (解决问题7,这里设置了密码为"cobbler",此处就是按装系统完的密码)

    # sed -i 's#yes#no#' /etc/xinetd.d/tftp  (解决问题3)

    或是直接修改settings和tftp文件:

    “# vim/etc/cobbler/settings”

    server: 主机IP (在384行)

    next_server:主机IP(在272行)

    manage_dhcp:1  (在242行)

    pxe_just_once:1 (在292行)

    default_password_crypted:(加盐的密码)(在101行)

    生成加盐的密码(这个设置密码为'cobbler'):

    #openssl passwd -1 -salt 'cobbler' 'cobbler'

    将该加盐的密码全复制拷贝到settings文件default_password_crypted处:

    修改" /etc/xinetd.d/tftp"文件:

    # vim/etc/xinetd.d/tftp

    将disable的参数至为“no”,如下:

    下面修改cobbler配置的dhcp模板:

    #vim /etc/cobbler/dhcp.template

    需要修改的是其路由、域名、子网、IP分配以及网段。

    查看路由、域名:

    然后修改dhcp.template文件,如图红框标出:

    下面解决问题5,同步服务开启,并设置开机启动:

    #systemctl enable rsyncd && systemctl start rsyncd

    下面解决问题4,由于需要执行cobbler get-loaders,在线载入资源,本文离线状态下已经准备好了资源lib包,见“附件二”:

    这些文件都应该存放在“/var/lib/cobbler/loaders”

    只需要将这些文件拷贝过去,同名覆盖即可。

    上述问题基本解决,下面重启服务,再检测一次:

    #systemctl restart tftp.socket

    #systemctl restart xinetd.service

    #systemctl restart httpd.service

    #systemctl restart cobblerd.service

    #systemctl restart rsyncd

    然后再运行cobbler监测:

    #cobbler check

    下面就是cobbler同步:

    #cobbler sync

    同步之后,无任何问题,最后显示"***TASK COMPLETE****"。

    六、Cobbler的系统镜像文件的挂载和系统的导入

    先将系统的镜像文件拷贝到“/opt/”目录下(目录自己随意),本次选用的是centos7.2的Minimal版本,如下:

    然后将该iso挂载,然后查看挂载:

    #mount -t iso9660 -o loop /opt/CentOS-7-x86_64-Minimal-1511.iso /mnt/

    #df -h

    挂载成功。

    系统数据导入:

    #cobbler import --path=/mnt/ --name=centos7.2-Minimal --arch=x86_64

    无报错,则系统数据导入成功。

    可以查看“/var/www/cobbler/ks_mirror/centos7.2-Minimal-x86_64/”下导入的数据是否存在:

    列出导入后的信息配置:

    #cobblerlist

    #cobbler profile report(可以查看更详细的配置信息)

    从该信息看出,kickstart的启动是使用了sample_end.ks,进入目录下查看:

    #ll /var/lib/cobbler/kickstarts/

    若要定制化安装系统,可以上传自己写的ks文件。

    默认的“sample_end.ks”已经满足安装的需求。本次不上传,不修改。

    下面将新安装完的系统的网卡名改为eth0:

    #cobbler profile edit --name=centos7.2-Minimal-x86_64 --kopts='net.ifname=0biosdevname=0'

    下面是验证cobbler:

    #cobbler validateks

    至此,安装配置导入系统数据以及验证完成。下面就是用VMware创建一台空白的机器测试。

     

    七、VMware上测试cobbler

    首先在VMware上建立一块空白系统的硬盘,如下:

    创建完成之后开启此虚机。

    一系列之后,系统就安装完成了。

     

    八、PXE    默认启动项修改

    默认的情况下PXE的启动项是Local(如下图)。

    但是根据需求,无需人工干预,自动安装,这时候,只需要将local从启动项删除即可。方法如下:

    首先找到PXE加载的菜单选项在哪,路径“/var/lib/tftpboot/pxelinux.cfg”下找到“default”文件,内容如下:

    如上,可以看出MENU菜单有俩个选项。这里删除“LABEL local”的内容,并修改“ONTIMEOUT”值为我们想要的启动项即可,如下:

    如上图,只留下了“LABELcentos7.2-Minimal-x86_64”这一个启动项,“ONTIMEOUT ”改为了“centos7.2-Minimal-x86_64”,“MENUTITLE”可以修改成自定义内容。

    修改后保存即可,不要重启cobblerd服务,也不要执行“cobbler sync”同步。修改后的PXE启动页面如下:

    默认的20秒超时一过就可以进入该选项进行自动安装。这样就可以做到了无人工干预的自动无人值守安装需求。

     

    九、Cobbler-web概述

    访问https://192.168.139.156/cobbler_web即可登陆Cobbler-web页面管理。(注意是https不是http)

    用户名和密码就是之前在settings设置的“cobbler”和“cobbler”。

    cobbler-web页面说明:

     

     

    附录:cobbler安装配置出现的问题汇总

    l       问题一:访问cobbler_web页面,不成功。“Forbidden You don't have permission to access /cobbler_web/on this server.”,如图:

    查看httpd日志:

    #cat /var/log/httpd/error_log

    原因是“SSL connection required”,是访问的不对,应该使用https头:

     

    l       问题二:新建虚机开启时候,出现TFTP open timeout!

    这时候是cobbler的服务器的防火墙没关闭。关闭防火墙:

    #systemctl stop firewalld.service

    #iptables -L

     

    l       问题三:运行"cobbler sync"时候报错如下:

    此时查看message,找出具体的原因:

    #tailf -100 /var/log/messages

    这是IP分配的范围错误,该范围不在所属的同一网段,这就是dhcp模板配置错误,重新修改:

    #vim /etc/cobbler/dhcp.template

    改成如上图所示同一网段即可。

     

    l       问题四:新机器启动之后会报错如下图所示:

    " Tryingto allocate 1255 pages for VMLINUZ

    [Linux-EFI,setup=0x10a3,size=0x4e6cb0] 

          [Initrd, addr=0x69d81000,size=0x24b96a0] "

    由于本次安装的是IBM X服务器,参考IBM官方论坛给出的意见:

    A.     Press F12 key when the IBM splash screen is shown duringsystem boot.

    B.      Select Legacy Only option and press Enter.

    C.      The operating system will boot and install in traditionallegacy boot mode.

    意思就是:

    从新启动机器,出现选择提示时,按F12键,进入boot启动选择。将Legacy Only 选项选中,再选择启动选项ok。

    然后重新启动服务器就可以实现Linux系统自动安装了。

     

    l       问题五:新机器启动后找不到操作系统,“Operating System not found”,如下图所示:

    系统找寻不到,这时候到cobbler服务器上查看挂载的系统还在么。

    #df -h

     

    之前挂载的系统不见了。现在重现挂载系统:

     

     

    展开全文
  • 在网络中实现批量安装操作系统

    千次阅读 2017-11-15 18:15:00
    在网络中实现批量安装操作系统 作者:许本新 一说到安装操作系统,大家也许都要说这有什么难的呢?但是我如果说在三个小时内完成500台或更多的计算机系统的安装呢?也许你会回答,怎么可能呢?还有这种事情吗?不错今天我...

    在网络中实现批量安装操作系统

    作者:许本新

    一说到安装操作系统,大家也许都要说这有什么难的呢?但是我如果说在三个小时内完成500台或更多的计算机系统的安装呢?也许你会回答,怎么可能呢?还有这种事情吗?不错今天我就告诉你怎么样批量的安装操作系统。
    关于批量的安装操作系统需要哪些注意哪些事情,我先交代一下。首先就是计算机的要求,批量安装的操作系统必须是同型号、同品牌的计算机。目前在组建计算机网络的时候使用的计算机一般都能满足这一要求。其次就是首先我们要把计算机的网络要连接好,因为这里我要说的是借助网络来批量的安装操作系统。另外我们还需要一些软件:Symantec Ghost8企业版和一台已经安装有服务器版本操作系统的计算机、和一台安装有新操作系统的样机。
    条件具备了,那现在我们就来看看怎么样制作吧。
    一、        制作服务器
                 NOS(网络操作系统系统)上安装Symantec Ghost8企业版(如图一)
     
                                        图一
           选择“Install Symantec Ghost Corporate Edition”然后选择“Install Consol and Standard Tools(如图二)
    图二
           之后安装向导一步步安装,基本上没有什么问题。安装完成后在考试菜单中会有(图三)
    图三
    一、        安装客户端程序
               服务器安装完成后,我们就可以在样机上安装客户端了(样机是一台崭新系统的计算机,也是要让其它电脑都具有的系统),样机客户端的安装是通过网络完成的,不过也可以直接用光盘安装客户端程序,在这里我都是通过网络来完成的。
          具体操作:
    1、  打开服务器的“控制台”。(图四)
     
     
    图四
     
    1、  将样机添加到“控制台”(要求样机和服务器要在同一个网段)
     在图四中我们找到“Tools”在下拉菜单中选择“Remote Client Install”进行远程安装客户端。(图五)
     
     
    图五
     
    在图五中我们选择左边右下角的黑色的“add”按钮,然后在跳出的对话框中输入相应的信息。(图六)
     
    图六
     
    在图六中输入的样机的“workgroup\skypc”表示“工作组\计算机NETBIOS名”,下面两个框中是样机的用户名和密码。然后点“OK”。(图七)
     
     
    图七
     
    在图七中我们可以看见样机的计算机名是\\skypc,现在我们就可以选中它,然后选择“install”按钮就可以将客户端程序安装到远程的样机上了。安装结束后,我们可以到样机中打开“添加\删除程序”看见客户端程序(图八)。
     
    图八
     
    一、       拽镜像
      到次为止服务器和客户端都已经安装完毕了,那接下来我们就要想办法把样机的操作系统以“.gho”的文件保存的服务器中来,然后我们就可以再把这个镜像文件再分发给,其它计算机了。
    1、创建任务和其它相关设置(图九)
     
    图九
     
    在上图九中我们选择“New Image Create Task”进入图十
     
    图十
     
    在图十中我们在“Create task definition ”中输入“定义创建任务”名字可以随便写,然后在下面“source machine”选择样机然后点“OK”。如图十
     
    图十一
     
    然后在“image name”通过browse给这次做的镜像起个名字及选择gho文件保存的位置。然后点击“确定”。然后再选择“镜像名”点“OK”。最后在图十四中点“确定”。
    (如图十二和图十三)
     
    图十二
     
    图十三
     
    图十四
     
    1、 拽镜像文件
    图十五中选择“Tasks”可以在右边的窗口中看见我们刚刚创建的“123”任务,这个时候我们选择“123”并右击再选择“Execute Task”,然后会出现(图十六)选择“是”,在后面的窗口中选择“OK”。之后客户端重新启动进入PCDOSPCDOS是包含的ghost客户端程序中的)中,可以看见平常我们制作镜像的窗口(图十七)。
     
    图十五
    图十六
     
     
     
    图十七
    等进程结束,镜像也就拽完成了,在这要注意的是,千万不能强制中断镜像的托拽进程.
    等这一步完成后,我们就可以进行分发镜像了.
    一、       分发镜像
      1、服务器设置
    分发前的准备工作,首先我们要在每台即将分发的计算机上安装上MAXDOS;第二要在你的服务器上安装好一台DHCP服务器,以为分发镜像是在MAXDOS环境下完成的,所以要有一个能够给MAXDOS分发IP地址的软件这这我选择的是DHCP服务。关于DHCP服务器的建设请参考我blog中的另外一篇DHCP服务器架设的文章。
    一切准备中就绪后我们到服务器上启动 “服务器”也就是“Ghost Cast Server”(如图十八)。并在相关框中书写好,在前面创建的有关镜像信息。然后点击“Accept Clients”按钮。这些做好后我们就可以到每台客户端上设置了。
                              图十八
       2、客户端设置
           将需要安装操作系统的计算机的部进入MAXDOS界面。然后在当前目录下(一般是A>中输入ghost 按“enter”键进入ghost界面。如图十九
    图十九
    然后选择“OK”然后我们选择“Ghost Cast”后再选择“Directed Broadcast”,接着进入
    图二十
     
    图二十
     
    在接下来的界面中我们输入任务名称,而“server Ip addreass”就不用写了,直接按“OK,这个时候我们就可以看见ghost界面中出现了恢复镜像的进程条了,但是没有任何反应,那是因为我们还要到服务器中选择好请求镜像的计算机,然后轻轻的点击“send”,就OK了。整个操作如果有什么问题可以直接在我的blog中或到BBS windows这来找我,给你提供帮助。



          本文转自xubenxin  51CTO博客,原文链接:http://blog.51cto.com/windows/15845,如需转载请自行联系原作者




    展开全文
  • 多种方式批量安装操作系统

    万次阅读 2017-06-01 15:24:28
    Cobbler自动化批量安装系统 cobbler+Koan介绍  Cobbler作为一个预备工具,使部署Red Hat/Centos/Fedora系统更容易,同时也支持Suse和Debian系统的部署。 它提供以下服务集成:  * PXE服务...

    Cobbler自动化批量安装系统


    cobbler+Koan介绍

               Cobbler作为一个预备工具,使部署Red Hat/Centos/Fedora系统更容易,同时也支持Suse和Debian系统的部署。

    它提供以下服务集成:

                             * PXE服务支持

                             * DHCP服务管理

                             * DNS服务管理

                             * Kickstart服务支持

                             * yum仓库管理

                   Cobbler客户端Koan支持虚拟机安装和操作系统重新安装。


    PXE+Kickstart实现无人值守批量安装Linux

    Kickstart+HTTP+DHCP+TFTP全自动批量安装部署


    Ghost网络克隆系统

    VHD快速还原系统(夏软)


    自动化集成部署udeployer 批量统一安装一键部署

    微软Server自带WDS 自动化部署安装 windows系统(windows部署服务)
    https://wenku.baidu.com/view/98f99d8ca45177232e60a2bd.html

    利用RIS在网络中实现批量操作系统的安装


    基于PXE自动化批量安装Linux操作系统


    直接利用raid阵列的特性进行批量同步系统(其实效率挺高的)


    利用第三方软件进行实时批量化安装系统

    批量安装操作系统_网络远程部署操作系统_sccm部署操作系统 - 卓豪OS Deployer http://www.zohocorp.com.cn/manageengine/products/os-deployer/features-benefits.html


    基于云计算平台的校本化的批量安装操作系统 (云主机+云容器)—去操作系统化


    【参考资料】

    1、Cobbler自动化批量安装系统服务搭建详解http://xuding.blog.51cto.com/4890434/1745454

    2、基于AutoYaST自动化安装SuSE实践  ttp://blog.csdn.net/wsgzao/article/details/46119819

    3、Netflix如何在上万台机器中管理微服务?http://www.yunweipai.com/archives/18980.html

    展开全文
  • CentOS7 PXE安装批量安装操作系统

    千次阅读 2017-02-12 21:12:38
    1、Environment  CentOS7 Server Version CentOS7 node7, IP Address 192.168.121.17 ...(1)安装需要的软件包 [root@node7 ~]# yum -y install tftp-server httpd dhcp syslinux (2)配置DHCP: [root@node7 ~]#

    1、Environment 

    CentOS7 Server Version

    CentOS7 node7, IP Address 192.168.121.17


    2、步骤如下:

    (1)安装需要的软件包

    [root@node7 ~]# yum -y install tftp-server httpd dhcp syslinux

    (2)配置DHCP:

    [root@node7 ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
    [root@node7 ~]# cat /etc/dhcp/dhcpd.conf 
    # dhcpd.conf
    #
    # Sample configuration file for ISC dhcpd
    #
    
    # option definitions common to all supported networks...
    option domain-name "galaxy.com";
    option domain-name-servers 114.114.114.114;
    
    default-lease-time 600;
    max-lease-time 7200;
    
    # Use this to enble / disable dynamic dns updates globally.
    #ddns-update-style none;
    
    # If this DHCP server is the official DHCP server for the local
    # network, the authoritative directive should be uncommented.
    #authoritative;
    
    # Use this to send dhcp log messages to a different log file (you also
    # have to hack syslog.conf to complete the redirection).
    log-facility local7;
    
    # No service will be given on this subnet, but declaring it helps the 
    # DHCP server to understand the network topology.
    
    
    #192.168.121.17是node7的IP地址,range表示的地址池
    subnet 192.168.121.0 netmask 255.255.255.0 {
        range 192.168.121.20 192.168.121.200;
        option routers 192.168.121.17;
        filename "pxelinux.0";
        next-server 192.168.121.17;
    }
    
    # This is a very basic subnet declaration.
    
    #subnet 10.254.239.0 netmask 255.255.255.224 {
    #  range 10.254.239.10 10.254.239.20;
    #  option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org;
    #}
    
    # This declaration allows BOOTP clients to get dynamic addresses,
    # which we don't really recommend.
    
    #subnet 10.254.239.32 netmask 255.255.255.224 {
    #  range dynamic-bootp 10.254.239.40 10.254.239.60;
    #  option broadcast-address 10.254.239.31;
    #  option routers rtr-239-32-1.example.org;
    #}
    
    # A slightly different configuration for an internal subnet.
    #subnet 10.5.5.0 netmask 255.255.255.224 {
    #  range 10.5.5.26 10.5.5.30;
    #  option domain-name-servers ns1.internal.example.org;
    #  option domain-name "internal.example.org";
    #  option routers 10.5.5.1;
    #  option broadcast-address 10.5.5.31;
    #  default-lease-time 600;
    #  max-lease-time 7200;
    #}
    
    # Hosts which require special configuration options can be listed in
    # host statements.   If no address is specified, the address will be
    # allocated dynamically (if possible), but the host-specific information
    # will still come from the host declaration.
    
    #host passacaglia {
    #  hardware ethernet 0:0:c0:5d:bd:95;
    #  filename "vmunix.passacaglia";
    #  server-name "toccata.fugue.com";
    #}
    
    # Fixed IP addresses can also be specified for hosts.   These addresses
    # should not also be listed as being available for dynamic assignment.
    # Hosts for which fixed IP addresses have been specified can boot using
    # BOOTP or DHCP.   Hosts for which no fixed address is specified can only
    # be booted with DHCP, unless there is an address range on the subnet
    # to which a BOOTP client is connected which has the dynamic-bootp flag
    # set.
    #host fantasia {
    #  hardware ethernet 08:00:07:26:c0:a5;
    #  fixed-address fantasia.fugue.com;
    #}
    
    # You can declare a class of clients and then do address allocation
    # based on that.   The example below shows a case where all clients
    # in a certain class get addresses on the 10.17.224/24 subnet, and all
    # other clients get addresses on the 10.0.29/24 subnet.
    
    #class "foo" {
    #  match if substring (option vendor-class-identifier, 0, 4) = "SUNW";
    #}
    
    #shared-network 224-29 {
    #  subnet 10.17.224.0 netmask 255.255.255.0 {
    #    option routers rtr-224.example.org;
    #  }
    #  subnet 10.0.29.0 netmask 255.255.255.0 {
    #    option routers rtr-29.example.org;
    #  }
    #  pool {
    #    allow members of "foo";
    #    range 10.17.224.10 10.17.224.250;
    #  }
    #  pool {
    #    deny members of "foo";
    #    range 10.0.29.10 10.0.29.230;
    #  }
    #}
    [root@node7 ~]# systemctl start dhcpd.service


    (3)配置tftp-server服务
    [root@node7 ~]# cat /etc/xinetd.d/tftp #基本不用修改配置文件
    # default: off
    # description: The tftp server serves files using the trivial file transfer \
    #	protocol.  The tftp protocol is often used to boot diskless \
    #	workstations, download configuration files to network-aware printers, \
    #	and to start the installation process for some operating systems.
    service tftp
    {
    	socket_type		= dgram
    	protocol		= udp
    	wait			= yes
    	user			= root
    	server			= /usr/sbin/in.tftpd
    	server_args		= -s /var/lib/tftpboot
    	disable			= yes
    	per_source		= 11
    	cps			= 100 2
    	flags			= IPv4
    }
    [root@node7 ~]# cat /usr/lib/systemd/system/tftp.service 
    [Unit]
    Description=Tftp Server
    Requires=tftp.socketDocumentation=man:in.tftpd[Service]ExecStart=/usr/sbin/in.tftpd -s /var/lib/tftpbootStandardInput=socket[Install]Also=tftp.socket
    
    启动tftp-server服务:
    [root@node7 ~]# systemctl start tftp.socket
    如果UDP的69号端口启动,说明已经启动了tftp服务
    
    设定PXE相关的文件:
    cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
    cp /usr/share/syslinux/{chain.c32,mboot.c32,menu.c32,memdisk} /var/lib/tftpboot/
    cp /media/cdrom/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/	#基于pxe安装使用的光盘上的文件(自己本地挂载光盘即可)或者是yum仓库里
    mkdir /var/lib/tftpboot/pxelinux.cfg/
    vim default  #default的文件内容如下
    default menu.c32		#加载时显示的默认菜单控制的程序
      prompt 5			#显示提示符时间
      timeout 30			#超时时长
      MENU TITLE CentOS 7 PXE Menu			#标题为CentOS7 PXE Menu
    
      LABEL linux			#指明下面菜单项的label
      MENU LABEL Install CentOS 7 x86_64		#菜单的label
      KERNEL vmlinuz		#指明kernel文件
      APPEND initrd=initrd.img inst.repo=http://192.168.121.17/centos7 ks=http://192.168.121.17/centos7.cfg		#附加给kernel的参数,inst.repo可以是教室的ftp服务器,或者把光盘当做yum仓库,把它作为一个网站的访问就可以了


    
    (4)接下来在Vmware 下面挂载光盘

    mkdir -pv /media/cdrom
    mount -r /dev/cdrom /media/cdrom
    mkdir -pv /var/www/html/centos7/
    mount --bind /media/cdrom /var/www/html/centos7

    配置kickstart文件:该kickstart文件是CentOS7 最小化安装的一部分+system-config-kickstart 命令创建的kickstart文件(强烈建议在desktop centos7 上面操作system-config-kickstart命令)的合集

    [root@node7 html]# pwd
    /var/www/html
    [root@node7 html]# ls
    centos7  centos7.cfg
    [root@node7 html]# cat centos7.cfg 
    #platform=x86, AMD64, or Intel EM64T
    #version=DEVEL
    # Install OS instead of upgrade
    install
    # Keyboard layouts
    keyboard 'us'
    # Root password
    rootpw --iscrypted $1$1Yz7yBap$ULm/SsQw.7sOa73ZgXgOH1    #密码是123456,只不过此处是加密的文件
    # System timezone
    timezone Asia/Shanghai
    # Use network installation
    url --url="http://192.168.121.17/centos7"    #根据自己的环境进行设定
    # System language
    lang en_US
    # Firewall configuration
    firewall --disabled
    # System authorization information
    auth  --useshadow  --passalgo=sha512
    # Use graphical install
    graphical
    firstboot --disable
    # SELinux configuration
    selinux --disabled
    
    # Network information
    network  --bootproto=dhcp --device=eno16777736
    # Halt after installation
    halt
    # System bootloader configuration
    bootloader --location=none
    # Clear the Master Boot Record
    zerombr
    # Partition clearing information
    clearpart --all --initlabel
    # Disk partitioning information    #分区设定
    part /boot --fstype="ext4" --size=500
    part / --fstype="ext4" --size=102400
    
    
    %packages    #最小化安装
    @^minimal
    @core
    kexec-tools
    
    %end
    
    %addon com_redhat_kdump --enable --reserve-mb='auto'
    
    %end

    最后创建一个新的虚拟机,然后设定VMware 的网卡,设定为192.168.121.17为同一个网络段,可以设定为同一个交换机段即可:


    最后的效果如下:


    不过到此时 可能是VMware的问题,始终界面打开是黑屏不知道为何,在BIOS设定中也没有找到相关的VT选项,物理机应该是没有问题的。

    
    
    展开全文
  •  Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等。  Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler...
  • ZTP配置ZTP(Zero Touch Provisioning)是指新出厂或空配置设备上电启动时采用的一种自动加载版本文件(包括系统软件、配置文件、License文件、补丁文件、自定义文件)的功能。 目的在部署网络设备时,设备硬件安装...
  • 批量无人值守安装操作系统

    千次阅读 2017-07-23 16:05:48
    还是比较好应付,如果一次是几十、几百台,就比较麻烦了,因此,实际生产环境中都用采用批量无人值守的安装方式来安装操作系统,所以今天来详细介绍下,通过利用kickstart+PXE+dhcp+nfs组合的方式批量安装操作系统。...
  • 批量安装Windows系统

    千次阅读 2020-02-11 12:52:54
    今天我们利用Windows server 2019自带的WDS通过网络来批量安装系统。 一、Windows服务 1)WDS WDS(Windows Deployment Services) 中文名:Windows部署服务 主要应用于大中型网络中的计算机操作系统的批量化部署...
  • Cobbler自动化批量安装Linux操作系统

    千次阅读 2019-04-13 13:50:05
    Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等。 Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web...
  • 批量网刻安装操作系统之PXE网络克隆图文教程

    万次阅读 多人点赞 2019-01-15 11:15:29
     最近工作中需要给几百台PC安装XP\win7操作系统,同时需要安装系统驱动和一些办公软件。刚开始是使用U盘制作的XP\win7启动盘安装,效率极低,因为中间需要人监控安装进度以待安装好系统后再挨个安装驱动程序和软件...
  • 远程批量自动安装中标麒麟操作系统的方法1 安装方法及过程2 系统安装服务器搭建2.1 DHCP服务器搭建2.2 TFTP服务器搭建2.3 FTP服务器搭建3 相关技术原理3.1 WOL技术3.2 PXE技术3.3 KickStart技术 1 安装方法及过程 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 85,944
精华内容 34,377
关键字:

批量安装操作系统