精华内容
下载资源
问答
  • 使用pxe方式安装系统, 实验环境 vmware虚拟机两台 一个为服务器用于安装tftp,dhcp,apache2服务 dhcp的虚拟机网络为192.168.10.100/24 服务器主机的系统IP地址为192.168.10.2 allinone为pxe服务器有两块网卡...

    使用pxe方式安装系统,

    实验环境

    vmware虚拟机两台 一个为服务器用于安装tftp,dhcp,apache2服务

    dhcp的虚拟机网络为192.168.10.100/24 服务器主机的系统IP地址为192.168.10.2

    allinone为pxe服务器有两块网卡eth0为(vnet3)192.168.10.2/24 eth1用来 连接internet使用nat

    首先创建192.168.10.0/24网络由于服务器allinone开启了dhcp服务所以关闭vmware上的dhcp服务如图创建vnet3


    配置虚拟机allinone的网络/etc/networking/interfaces

    auto eth0
    iface eth0 inet static
    address 192.168.10.2
    netmask 255.255.255.0

    在allinone中安装apache,dhcp,tftp等服务

    apt-get install apache2 tftpd-hpa dhcp3-server

    /etc/default/tftpd-hpa如下


    修改/etc/dhcp/dhcpd.conft添加如下内容

    option domain-name "mydomain";
    ddns-update-style none;
    server-name "bootserver";
    allow booting;
    allow bootp;
    subnet 192.168.10.0 netmask 255.255.255.0 {
            filename "pxelinux.0";
        	range 192.168.10.100 192.168.10.200;
    	next-server 192.168.10.2;
    }
    修改/etc/xinetd.d/tftp,尤其要注意server_args参数为tftp的主目录

    service tftp
    {
               socket_type                = dgram
               protocol                   = udp
               wait                       = yes
               user                       = root
               server                     = /usr/sbin/in.tftpd
               server_args                = -s /var/lib/tftpboot
               disable                    = no
               per_source                 = 11
               cps                        = 100 2
               flags                      = IPv4
    }
    将下载好的虚拟机ubuntu.iso挂载到/var/www/ubuntu下

    sudo mount -o loop ubuntu.iso /var/www/ubuntu

    将 /var/www/ubuntu/install/netboot/里的文件都拷到/var/lib/tftpboot/里

    cp /var/ubuntu/install/netboot/* /var/lib/tftpboot/


    重启apache服务器访问http://192.168.10.2/ubuntu

    出现如下画面则表示服务器端安装成功


    参考链接http://forum.ubuntu.org.cn/viewtopic.php?t=196261

    http://blog.sina.com.cn/s/blog_6340cd9c01015zif.html

    http://blog.csdn.net/lvbook/article/details/5445984

    http://zhumeng8337797.blog.163.com/blog/static/100768914201131361455361/

    转载于:https://my.oschina.net/u/2322146/blog/406222

    展开全文
  • linux服务器PXE安装

    2017-11-15 15:41:00
    linux服务器PXE同时安装(可以通过一台Linux服务器同时安装Linux操作系统。) 首先在已有的Linux服务器上面安装pxe服务 安装环境:RedHat Linux 2.6.18-128.el5 一、安装DHCP服务: rpm -ivh /mnt/Server/dhcp-3.0.5...
    linux服务器PXE同时安装(可以通过一台Linux服务器同时安装Linux操作系统。)
    首先在已有的Linux服务器上面安装pxe服务
    安装环境:RedHat Linux  2.6.18-128.el5
    一、安装DHCP服务:
     rpm -ivh /mnt/Server/dhcp-3.0.5-18.el5.i386.rpm
    然后配置DHCP服务器:
     cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf
    在编辑/etc/dhcpd.conf配置文件:如下
     
    如上图在ignore -updates;下面添加两行:如下图
    (其中192.168.0.100为pxe服务器也就是本机ip地址)然后重启DHCP服务:service dhcpd  restart即可。
    二、安装tftp服务:
    rpm -ivh /mnt/Server/tftp-server-0.42-3.1.i386.rpm
     rpm -ivh /mnt/Server/tftp-0.42-3.1.i386.rpm
    进入tftp目录:cd     /tftpboot/  然后拷贝Linux 安装光盘里的文件:如下几步操作:
    1、cp  /mnt/isolinux/*       /tftpboot/
    2、在/tftpboot/里面创建目录:mkdir pxelinux.cfg
    3、紧接着重命名:mv isolinux.cfg  pxelinux.cfg/default
    4、再拷贝:cp /usr/lib/syslinux/pxelinux.0      /tftpboot/
    最后一步:启动tftp服务:chkconfig  tftp on
    service xinetd  restart  即可。(呵呵 至此tftp配置完毕。别急慢慢看!)
     
     
    三、创建NFS文件共享:
    1、创建安装目录:mkdir    /redhatinstall并把光盘里面的所有文件拷贝到该目录下:
    命令: cp /mnt/*       /redhatinstall/          -rf  (这儿需要一会时间;必须加-rf 参数)
    2、添加共享目录:echo " /redhatinstall    *(rw) " >/etc/exports
    3、重启nfs服务:service     nfs      restart  即可
    (哈哈  服务器安装到此完毕:)
     
     
    最后就是应用啦(我们现在开始安装新的Linux服务器系统安装:)
    正常安装就行了:在选择安装方式的时候选择NFS即可:
     
     
    然后下一步配置ip 可以自动分配,也可以手动。
    最后选择安装服务器的ip和安装目录:分别填入:
    192.168.0.100
    /redhatinstall
    安装至完成。
     
     
     


     

     
     本文转自 wgkgood 51CTO博客,原文链接:http://blog.51cto.com/wgkgood/268992
     


    展开全文
  • PXE是在没有软驱、硬盘、CD-ROM的情况下引导计算机的一种...TFTP服务器:用来提供启动文件的下载简单说来,PXE服务器就是DHCP服务器+TFTP服务器。网络启动过程大概是这样的(可能并不严谨):客户端发送动态获得IP地址...

    PXE是在没有软驱、硬盘、CD-ROM的情况下引导计算机的一种方式,也就是BIOS将使用PXE协议从网络引导。

    DHCP服务器:用来动态分配IP地址(同时分配子网掩码、网关、TFTP服务器地址、启动文件名、DNS服务器、时间服务器等等)。

    TFTP服务器:用来提供启动文件的下载

    简单说来,PXE服务器就是DHCP服务器+TFTP服务器。网络启动过程大概是这样的(可能并不严谨):客户端发送动态获得IP地址的广播包到 网络上,DHCP服务器在收到该广播包后,发送给客户端分配IP地址的回应包,客户端收到回应包后设置自己的IP地址,然后从DHCP服务器获得启动服务 器的IP地址(DHCP服务器066选项,这就是TFTP服务器的IP地址)及启动文件名(DHCP服务器067选项,这里的启动文件名就是 pxelinux.0或者支持pxe的grub4dos的grldr,当然,也可以是startrom.n12或者使用3com Image Edit创建的pxe启动菜单文件,总之,它应该是一种由pxe启动规范规定的固定格式的可执行文件),然后客户端到联系启动服务器(TFTP服务器)获 得启动文件并执行,这样基本上就完成了pxe启动过程。

    在Unix或者Linux系统下,DHCP服务器和TFTP服务器一般都是分开设置的,两台服务器甚至可以在两台不同的机器上,其实 Windows下的设置也是一样的,但在Windows下,我们可以通过使用HaneWin DHCP服务器软件或TFTPD32一个软件就搞定(我个人推荐使用HaneWin DHCP服务器软件,但TFTPD32设置起来更简单一些,就是效率有些低),详细的设置方法请自己摸索,你只要知道,在设置PXE服务器时,要设置好 DHCP和TFTP两个服务器,其中DHCP服务器要设置启动服务器名和启动文件名。

    搭建环境:

    推送服务器:

    Ip:192.168.189.138

    系统:CentOS 5.8

    推送系统:RHEL 5.4

    1:配置dhcpd服务。

    如果没有安装dhcpd服务,请安装:

    # yum -y install dhcp.x86_64

    # vi /etc/dhcpd.conf

    option domain-name "766.com";

    default-lease-time 6000;

    max-lease-time 11400;

    authourtative;

    next-server 192.168.189.138;

    ddns-update-style ad-hoc;

    log-facility local7;

    subnet 192.168.189.0 netmask 255.255.255.0{

    range 192.168.189.150 192.168.189.195;

    option domain-name-servers 192.168.189.254;

    option domain-name "766.com";

    option netbios-name-servers 192.168.189.254;

    option routers 192.168.189.254;

    option broadcast-address 192.168.189.255;

    default-lease-time 6000;

    max-lease-time 11400;

    filename "/kickstart/ks.cfg";

    }

    option space PXE;

    class "PXE" {

    match if substring(optionvendor-class-identifier, 0, 9) = "PXEClient";

    optionvendor-encapsulated-options 01:04:00:00:00:00:ff;

    option boot-size 0x1;

    filename"pxelinux.0";

    option tftp-server-name "192.168.189.138";

    option vendor-class-identifier"PXEClient";

    vendor-option-space PXE;

    }

    2:开启tftp服务:

    如果没有tftp服务软件,请安装:

    # yum -y installtftp.x86_64

    # yum -y installxinetd.x86_64

    # yum -y installtftp-server.x86_64

    配置tftp

    # vi/etc/xinetd.d/tftp

    service tftp

    {

    socket_type            = dgram

    protocol              = udp

    wait                = yes

    user                = root

    server              = /usr/sbin/in.tftpd

    server_args            = -s /tftpboot

    disable              = no

    per_source            = 11

    cps                = 100 2

    flags                = IPv4

    }

    3:准备推送所需的文件与目录。

    把光盘或iso文件中的isolinux目录下的文件,拷贝到/tftpboot。

    把pxelinux.0文件拷贝到/tftpboot:

    # cp /usr/lib/syslinux/pxelinux.0 /tftpboot

    创建RHEL5.4目录,把initrd.img、vmlinuz两个文件拷贝进去:

    # mkdir -p /tftpboot/RHEL5.4

    # mv /tftpboot/initrd.img /tftpboot/RHEL5.4

    # mv /tftpboot/vmlinuz /tftpboot/RHEL5.4

    创建pxelinux.cfg目录,把isolinux.cfg文件拷贝进去,并改名default:

    # mv isolinux.cfg pxelinux.cfg/default

    修改default文件参数

    # vi /tftpboot/pxelinux.cfg/default

    default linux

    prompt 1

    timeout 600

    display boot.msg

    F1 boot.msg

    F2 options.msg

    F3 general.msg

    F4 param.msg

    F5 rescue.msg

    label RHEL5.4

    kernel RHEL5.4/vmlinuz

    append ksdevice=eth0 load_ramdisk=1 initrd=RHEL5.4/initrd.img noipv6

    配置boot.msg,添加加载选项:

    # vi /tftpboot/boot.msg

    Install RHEL5.4  ---> RHEL5.4

    4:提供安装镜像或者内容,这里使用nfs方式。

    把光盘镜像或内容拷贝到/home/RedHat下。

    使用nfs方式,把/home/redhat共享给192.168.189.0/24网段:

    # vi/etc/exports

    /home/redhat 192.168.189.0/24(rw,async,no_root_squash)

    5:启动各个所需服务,并测试安装。

    # service dhcpd start

    # service xinetd start

    # service nfs start

    启动计算机,F12,选择从网卡启动,正常的话则可进入安装引导界面:

    78bec98da3fe7a2f9478c252f1aa0e1c.png

    写入RHEL5.4,进入安装。

    选择安装介质获取方式,选择nfs:

    54b9d122e4f31321a37b0521d6db8fda.png

    填写服务器ip与介质路径:

    f49e1c6bd8210617ff023d27b6f0096b.png

    进入图形安装界面,说明可以安装了:

    46f2414dcdc6d114c0c8837b1fe5ea93.png

    使用ks文件实现全自动安装:

    使用system-config-kickstart创建ks文件模版(system-config-kickstart无法创建LVM,若要使用LVM,许在生成ks文件后,手动编辑)

    LVM配置:

    partpv.01 --size=10000 --grow

    volgroupvg-001 pv.01

    logvol/ --vgname=vg-001 --size=10000 --name=lv-001

    ks文件中指定了键盘,语言,安装方式,分区等配置。

    配置default文件,指定ks文件路径(可用nfs,ftp等方式):

    append ksdevice=eth0 load_ramdisk=1 initrd=RHEL5.4/initrd.img ks=nfs:192.168.189.138:/home/redhat/ks.cfg noipv6

    启动客户端,测试自动安装。

    0b1331709591d260c1c78e86d0c51c18.png

    展开全文
  • 1.1 pxe安装系统 pxe的大致过程如下图。 ​ 其中pxelinux.0为bootloader。pxelinux.cfg目录下的文件(一般使用默认的default文件)定义了安装操作系统前的菜单项,如kernel和Initrd的路径,kickstart的路径等。 ​ ...

    cobbler无人值守批量安装Linux系统

    1.1 pxe安装系统

    pxe的大致过程如下图。
    cobbler无人值守批量安装Linux系统 1.1 pxe安装系统

    ​ 其中pxelinux.0为bootloader。pxelinux.cfg目录下的文件(一般使用默认的default文件)定义了安装操作系统前的菜单项,如kernel和Initrd的路径,kickstart的路径等。

    ​ 首先客户端请求pxe服务器上的dhcp,dhcp上指定了next-server和filename,它们分别是tftpd的地址和pxelinux.0的路径;然后客户端请求tftpd获取pxelinux.0,执行pxelinux.0后将引导进入安装界面,随后获取pxelinux.cfg目录下的文件并读取其中的配置,从中获取kernel和initrd的路径所在,如果有定义kickstart项则还会去获取kickstart文件并读取配置;再然后客户端请求获取kernel和initrd文件,以展开内核并进入到根文件系统;最后客户端获取完成系统安装所需的其他文件,这些文件可以是在pxe的本地,也可以是互联网上等能获取到的地方。

    1.2 cobbler基本介绍

    ​ 百度百科:Cobbler 可以用来快速建立 Linux 网络安装环境,它已将 Linux 网络安装的技术门槛,从大专以上文化水平,成功降低到初中以下,连补鞋匠都能学会

    ​ cobbler可以看作是一个更多功能的pxe,它实现系统安装和pxe也差不多,需要的文件和过程大致都一样。

    ​ cobbler能自动管理dns/tftp/dhcp/rsync这四个服务(但似乎对tftp的管理有点bug,需要手动启动tftp),且cobbler依赖于httpd(pxe支持http/nfs/ftp)。

    ​ 基本的系统安装,cobbler只需生成一个distro和一个profile即可。

    ​ distro相当于一个镜像,它提供安装系统过程中所需的一切文件,如vmlinuz,initrd以及rpm包等。

    ​ profile的作用是为了自动修改pxelinux.cfg/default文件,每生成或修改一次profile,都会在default文件中修改或追加对应的label。

    ​ 除了distro/profile之外,cobbler还管理system/images/repositories等,但是用的很少。

    1.3 安装和配置cobbler

    本实验环境网络为NAT,当然这不重要,桥接仅主机都行

    关闭NAT的dhcp功能:让dhcp服务器给新机器分配IP

    1.3.0 机器初始化

    https://blog.51cto.com/14012942/2427695

    1.3.1 安装cobbler

    cobbler在epel源中提供。由于还依赖于httpd、dhcp,所以httpd和dhcp也应该装上。

    yum -y install cobbler cobbler-web pykickstart debmirror httpd dhcp

    ​ 其中cobbler-web是提供web管理界面的,pykicstart是检查kicstart文件语法错误的,debmirror是维护debian源的工具,此处用不上但有依赖关系,所以装上。

    安装后,在/etc/cobbler生成以下文件。

    [root@cobbler ~]# cd /etc/cobbler/
    
    [root@cobbler cobbler]# ls
    auth.conf         genders.template        named.template  secondary.template  zone.template
    cheetah_macros    import_rsync_whitelist  power           settings            zone_templates
    cobbler_bash      iso                     pxe             tftpd.template
    completions       ldap                    reporting       users.conf
    dhcp.template     modules.conf            rsync.exclude   users.digest
    dnsmasq.template  mongodb.conf            rsync.template  version

    cobbler无人值守批量安装Linux系统 1.1 pxe安装系统

    先启动httpd,再启动cobblerd。

    [root@cobbler cobbler]# systemctl start httpd.service && systemctl enable httpd.service
    [root@cobbler cobbler]# systemctl start cobblerd.service && systemctl enable cobblerd.service
    [root@cobbler cobbler]# netstat -tnlp
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
    tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      3656/sshd           
    tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      3784/master         
    tcp        0      0 127.0.0.1:25151         0.0.0.0:*               LISTEN      4217/python2        
    tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
    tcp6       0      0 :::80                   :::*                    LISTEN      4138/httpd          
    tcp6       0      0 :::22                   :::*                    LISTEN      3656/sshd           
    tcp6       0      0 ::1:25                  :::*                    LISTEN      3784/master         
    tcp6       0      0 :::443                  :::*                    LISTEN      4138/httpd    

    启动之后,首先执行cobbler check检查配置是否正确。根据提示修改相关的配置项。

    [root@cobbler ~]# cobbler check
    The following are potential configuration items that you may want to fix:
    
    1 : The 'server' field in /etc/cobbler/settings must be set to something other than localhost, or kickstarting features will not work.  This should be a resolvable hostname or IP for the boot server as reachable by all machines that will use it.
    2 : For PXE to be functional, the 'next_server' field in /etc/cobbler/settings must be set to something other than 127.0.0.1, and should match the IP of the boot server on the PXE network.
    3 : change 'disable' to 'no' in /etc/xinetd.d/tftp
    4 : Some network boot-loaders are missing from /var/lib/cobbler/loaders, you may run 'cobbler get-loaders' to download them, or, if you only want to handle x86/x86_64 netbooting, you may ensure that you have installed a *recent* version of the syslinux package installed 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 'cobbler get-loaders' command is the easiest way to resolve these requirements.
    5 : enable and start rsyncd.service with systemctl
    6 : comment out 'dists' on /etc/debmirror.conf for proper debian support
    7 : comment out 'arches' on /etc/debmirror.conf for proper debian support
    8 : The default password used by the sample templates for newly installed machines (default_password_crypted in /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
    9 : fencing tools were not found, and are required to use the (optional) power management features. install cman or fence-agents to use them
    
    Restart cobblerd and then run 'cobbler sync' to apply changes.

    第一和第二个问题:

    [root@cobbler ~]# sed -r '/^next_server/s/^.*$/next_server: 192.168.38.140/'  /etc/cobbler/settings -i
    [root@cobbler ~]# sed -ri '/^server/s/^.*$/server: 192.168.38.140/' /etc/cobbler/settings

    第三个问题:/etc/xinetd.d/tftp,改下

    [root@cobbler ~]# sed -ri '/disable/s/yes/no/' /etc/xinetd.d/tftp
    [root@cobbler ~]# systemctl restart tftp

    第四个问题:获取pxelinux.0和menu.c32文件(对于centos来说只需这两个文件),可以像pxe一样从syslinux包中手动复制到/var/lib/cobbler/loaders目录下,也可以执行cobbler get-loaders自动下载,但要求联网。

    [root@cobbler ~]# cobbler get-loaders

    第五个问题:有可能该问题不是如此的,而是说要将rsyncd.service使用给start且enable,只需systemctl enable rsyncd,systemctl start rsyncd(网上抄的,重启rsync服务就对了)。

    [root@xuexi cobbler]# vim /etc/xinetd.d/rsync
    disable=no
    [root@xuexi cobbler]# service xinetd start

    [root@cobbler ~]# systemctl start rsyncd && systemctl enable rsyncd

    第6、7个问题,注释掉/etc/debmirror.conf中相关项即可。

    [root@cobbler ~]# sed -ri '/^@arches/s/^/#/' /etc/debmirror.conf
    [root@cobbler ~]# sed -ri '/^@dists/s/^/#/' /etc/debmirror.conf

    第8个问题:

    [root@cobbler ~]# openssl passwd -1 -salt `openssl rand -hex 8` '123456'
    $1$0f145a6c$jYnj8pwZrHh5VcA4f52jD.
    [root@cobbler ~]# vim /etc/cobbler/settingsdefault_password_crypted: "$1$0f145a6c$jYnj8pwZrHh5VcA4f52jD."

    第九个问题和电源管理有关,不用管了。直接重启cobbler,然后cobbler sync。

    [root@cobbler ~]# cobbler check
    The following are potential configuration items that you may want to fix:
    
    1 : fencing tools were not found, and are required to use the (optional) power management features. install cman or fence-agents to use them
    
    Restart cobblerd and then run 'cobbler sync' to apply changes.
    [root@cobbler ~]# cobbler sync
        **cobbler sync命令**用于将tftpboot目录和/var/www/cobbler保持最新,当/var/lib/cobbler或者kickstart文件发生了变化,应该执行一次cobbler sync或者直接重启cobbler服务。

    1.3.2 配置dhcp和tftp

    如果在/etc/cobbler/setting中设置了manage_dhcp:1,表示由cobbler管理dhcp(默认为0即人为手动管理),则cobbler管理的dhcp的配置模板/etc/cobbler/dhcp.template会覆盖/etc/dhcp/dhcpd.conf中配置,所以应该修改dhcp.template。

    此处采用默认的不由cobbler管理dhcp

    [root@cobbler ~]# cat > /etc/dhcp/dhcpd.conf <<EOF
    ddns-update-style none;
    default-lease-time 259200;
    max-lease-time 518400;
    subnet 192.168.38.0 netmask 255.255.255.0 {
            range 192.168.38.10 192.168.38.100;
            option subnet-mask 255.255.255.0;
            option routers 192.168.38.2;
            option domain-name-servers 180.76.76.76;
            next-server 192.168.38.140;
            filename "pxelinux.0";
    }
    EOF
    [root@cobbler ~]# systemctl restart dhcpd && systemctl enable dhcpd

    ​ 关于tftp,在/etc/cobbler/settings中默认启用了由cobbler管理tftp,所以此处无需配置它。只要知道它的根目录为/var/lib/tftpboot即可。但是如果后面装系统的时候如果找不到tftp(应该是cobbler管理tftp的bug),则手动启动tftp即可。

    1.4 cobbler从本地光盘安装系统

    1.4.1 生成distro

    ​ 生成distro的方法有多种,可以从本地镜像导入生成,也可以根据网络上的资源生成。显然,从本地生成的效率是最好的。

    从本地导入的过程实际上是将系统镜像中的文件复制到/var/www/cobbler/目录(默认)下

    [root@cobbler ~]# mkdir /mnt -p
    [root@cobbler ~]# mount /dev/cdrom /mnt
    [root@cobbler ~]# cobbler import --name=CentOS7.6 --path=/mnt

    等待导入完成,则表示distro生成完成。

    [root@cobbler ~]# ls -l /var/www/cobbler/images/CentOS7.6-x86_64/
    total 57844
    -rw-r--r-- 3 root root 52584760 Nov 26  2018 initrd.img
    -rwxr-xr-x 3 root root  6639904 Nov  9  2018 vmlinuz
    [root@cobbler ~]# ls /var/www/cobbler/ks_mirror/CentOS7.6/      # 此目录完全来源于镜像
    CentOS_BuildTag  EULA  images    LiveOS    repodata              RPM-GPG-KEY-CentOS-Testing-7
    EFI              GPL   isolinux  Packages  RPM-GPG-KEY-CentOS-7  TRANS.TBL

    确保url路径http://192.168.38.140/cobbler/ks_mirror/CentOS7.6/是有效的。

    cobbler无人值守批量安装Linux系统 1.1 pxe安装系统

    1.4.2 提供kickstart文件

    以下是CentOS7的Kickstart内容。如果要改为适合CentOS6的内容,只需将keyboard项设置为"keyboard us",并修改下分区方式(如有必要的话)以及%post脚本段的内容即可。

    如何写kickstat:

    1.可以参考家目录的anaconda-ks.cfg

    2.使用图形化工具:system-config-kickstart(需要桌面环境)

    3.参考/var/lib/cobbler/kickstarts/下面的模板

    参考:http://ju.outofmemory.cn/entry/194801

    参考:https://www.cnblogs.com/f-ck-need-u/p/7342022.html

    kickstat中密码生成方法:

    md5:openssl passwd -1 '123456'
    
    sha256:CentOS6可以用grub-crypt --sha-256
    
    sha512:CentOS6中可以grub-crypt --sha-512
    
    也可以直接拷贝shadow中的密码:
    [root@localhost ~]# awk -F: '/^root/ {print $2}' /etc/shadow
    $6$TwMc7kHxAYSdICBU$yUVPcTo.SWi6FpWrZsx3.X.yjbrvqvgMxu0Jvqims55ZU6hQKPaR5DeQISwhcMBkmyVK/UJ1SFnpmu9E3S/Wu0

    ksvalidator 命令可以验证ks文件语法有没有问题

    ksvalidator /var/lib/cobbler/kickstarts/CentOS7.6.ks

    [root@cobbler mnt]# cat  /var/lib/cobbler/kickstarts/CentOS7.6.ks
    #version=DEVEL
    # System authorization information
    auth --enableshadow --passalgo=sha512
    # Install OS instead of upgrade
    install
    # Use network installation
    url --url=$tree
    # Use text mode install
    text
    # Firewall configuration
    firewall --disabled
    firstboot --disable
    # ignoredisk --only-use=sda   # 此项是CentOS7默认的项,但cobbler编译ks文件时不支持此语法,所以必须将此项注释掉
    # Keyboard layouts
    # old format: keyboard us
    # new format:
    keyboard --vckeymap=us --xlayouts='us'
    # System language
    lang en_US.UTF-8
    
    # Network information
    network  --onboot=yes --bootproto=dhcp --device=eth0 --noipv6
    network  --hostname=node1.xuexi.com
    # Reboot after installation
    reboot
    # Root password
    rootpw --iscrypted $6$TwMc7kHxAYSdICBU$yUVPcTo.SWi6FpWrZsx3.X.yjbrvqvgMxu0Jvqims55ZU6hQKPaR5DeQISwhcMBkmyVK/UJ1SFnpmu9E3S/Wu0
    # SELinux configuration
    selinux --disabled
    # Do not configure the X Window System
    skipx
    # System timezone
    timezone Asia/Shanghai
    # System bootloader configuration
    #bootloader --append="quiet crashkernel=auto" --location=mbr --boot-drive=sda
    bootloader --append="net.ifnames=0" --location=mbr
    # Clear the Master Boot Record
    zerombr
    # Partition clearing information
    clearpart --all --initlabel
    # Disk partitioning information
    part /boot --asprimary --fstype="xfs" --size=250
    part swap --fstype="swap" --size=2000
    part / --asprimary --fstype="xfs" --grow --size=5000
    
    # 如果是要LVM分区,则考虑以下分区
    # part /boot --fstype ext4 --size=100
    # part swap --fstype=swap --size=2048
    # part pv26 --size=100 --grow
    # volgroup VG00 --pesize=32768 pv26
    # logvol / --fstype ext4 --name=LVroot --vgname=VG00 --size=29984
    # logvol /data --fstype ext4 --name=LVdata --vgname=VG00 --size=100 --grow
    
    %post
    rm -f /etc/yum.repos.d/*
    cat >>/etc/yum.repos.d/my.repo<<eof
    [base]
    name=sohu
    baseurl=http://mirrors.sohu.com/centos/7/os/x86_64/
    gpgcheck=0
    enable=1
    [epel]
    name=epel
    baseurl=http://mirrors.aliyun.com/epel/7Server/x86_64/
    enable=1
    gpgcheck=0
    eof
    sed -i "s/rhgb //" /boot/grub2/grub.cfg
    sed -i "/UUID/d" /etc/sysconfig/network-scripts/ifcfg-eth0
    echo "DNS1=114.114.114.114" >> /etc/sysconfig/network-scripts/ifcfg-eth0
    echo "UseDNS no" >> /etc/ssh/sshd_config
    sed -i "s/GSSAPIAuthentication yes/GSSAPIAuthentication no/" /etc/ssh/ssh_config
    sed -i "s/^SELINUX=.*$/SELINUX=disabled/" /etc/sysconfig/selinux
    systemctl disable firewalld
    %end
    
    %packages
    @base
    @core
    @development
    @platform-devel
    kexec-tools
    lftp
    tree
    lrzsz
    
    %end
    
    %addon com_redhat_kdump --enable --reserve-mb='auto'
    
    %end

    上面的url也可以写成url --url="http://192.168.38.140/cobbler/ks_mirror/CentOS7.6/"。

    1.4.3 提供profile

    在导入镜像生成distro的过程中,会自动生成一个profile。

    [root@cobbler ~]# cobbler profile list
       CentOS7.6-x86_64

    该profile默认使用的kickstart是/var/lib/cobbler/kickstarts/sample_end.ks,所以需要修改此项。

    [root@cobbler mnt]# cobbler profile report CentOS7.6-x86_64
    Name                           : CentOS7.6-x86_64
    TFTP Boot Files                : {}
    Comment                        : 
    DHCP Tag                       : default
    Distribution                   : CentOS7.6-x86_64
    Enable gPXE?                   : 0
    Enable PXE Menu?               : 1
    Fetchable Files                : {}
    Kernel Options                 : {}
    Kernel Options (Post Install)  : {}
    Kickstart                      : /var/lib/cobbler/kickstarts/sample_end.ks
    Kickstart Metadata             : {}
    Management Classes             : []
    Management Parameters          : <<inherit>>
    Name Servers                   : []
    Name Servers Search Path       : []
    Owners                         : ['admin']
    Parent Profile                 : 
    Internal proxy                 : 
    Red Hat Management Key         : <<inherit>>
    Red Hat Management Server      : <<inherit>>
    Repos                          : []
    Server Override                : <<inherit>>
    Template Files                 : {}
    Virt Auto Boot                 : 1
    Virt Bridge                    : xenbr0
    Virt CPUs                      : 1
    Virt Disk Driver Type          : raw
    Virt File Size(GB)             : 5
    Virt Path                      : 
    Virt RAM (MB)                  : 512
    Virt Type                      : kvm
    [root@cobbler mnt]# cobbler profile edit --name=CentOS7.6-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS7.6.ks
    [root@cobbler mnt]# cobbler profile report CentOS7.6-x86_64 | grep kickstart -i
    Kickstart                      : /var/lib/cobbler/kickstarts/CentOS7.6.ks
    Kickstart Metadata             : {}

    对于centos7系列,则加上内核启动参数net.ifnames和biosdevname使得网卡名使用ethN系列而不使用enoXXXXXXX这样的随机名称。这个写在ks的文件中开机执行脚本那一段,修改/etc/default/grub也可以的

    [root@cobbler mnt]# cobbler profile edit --name=CentOS7.6-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS7.6.ks --kopts="net.ifnames=0 biosdevname=0"
    [root@cobbler mnt]# cobbler profile report CentOS7.6-x86_64 | grep -Ei 'kernel|kickstart'
    Kernel Options                 : {'biosdevname': '0', 'net.ifnames': '0'}
    Kernel Options (Post Install)  : {}
    Kickstart                      : /var/lib/cobbler/kickstarts/CentOS7.6.ks
    Kickstart Metadata             : {}

    当然,不使用自生成的profile,自己添加一个profile也可以,同时还可以设置profile选项,如"--kickstart"项。如下:其中"--distro"指定该profile是添加到哪个distro下的。

    [root@cobbler mnt]# cobbler profile remove --name=CentOS7.6-x86_64
    [root@cobbler mnt]# cobbler profile add --name=CentOS7.6-x86_64 --distro=CentOS7.6-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS7.6.ks
    [root@cobbler mnt]# cobbler profile list
       CentOS7.6-x86_64

    实际上,每添加一个profile都是在向/var/lib/tftpboot/pxelinux.cfg/default中添加一个label。

    [root@cobbler mnt]#  cat /var/lib/tftpboot/pxelinux.cfg/default   
    DEFAULT menu
    PROMPT 0
    MENU TITLE Cobbler | http://cobbler.github.io/
    TIMEOUT 200
    TOTALTIMEOUT 6000
    ONTIMEOUT local
    
    LABEL local
            MENU LABEL (local)
            MENU DEFAULT
            LOCALBOOT -1
    
    LABEL CentOS7.6-x86_64
            kernel /images/CentOS7.6-x86_64/vmlinuz
            MENU LABEL CentOS7.6-x86_64
            append initrd=/images/CentOS7.6-x86_64/initrd.img ksdevice=bootif lang=  text net.ifnames=0 biosdevname=0 kssendmac  ks=http://192.168.38.140/cblr/svc/op/ks/profile/CentOS7.6-x86_64
            ipappend 2
    
    MENU end

    也就是说,其实可以不用生成profile,自己手动编辑label也可以。

    默认使用的菜单背景图片是menu.c32,此处我改为vesamenu.c32,该背景图片是从syslinux包中提取的,背景图片而已,看个人喜好了。另外默认菜单等待时间是2秒,在自动安装的环境中,可以将其设置的短些。并且进入菜单默认停留在local,即从本地启动系统,但是此时系统还没装,所以要实现自动化,建议修改此项。

    以下是修改后的项。

    DEFAULT vemamenu
    DEFAULT menu
    PROMPT 0
    MENU TITLE Cobbler | http://cobbler.github.io/
    TIMEOUT 20
    TOTALTIMEOUT 6000
    ONTIMEOUT CentOS7.2-x86_64
    
    LABEL local
            MENU LABEL (local)
            LOCALBOOT -1
    
    LABEL CentOS7.2-x86_64
            kernel /images/CentOS7.2-x86_64/vmlinuz
            MENU DEFAULT
            MENU LABEL CentOS7.2-x86_64
            append initrd=/images/CentOS7.2-x86_64/initrd.img ksdevice=bootif lang=  text net.ifnames=0 biosdevname=0 kssendmac  ks=http://172.16.10.10/cblr/svc/op/ks/profile/CentOS7.2-x86_64
            ipappend 2
    
    LABEL CentOS7.2.1-x86_64
            kernel /images/CentOS7.2-x86_64/vmlinuz
            MENU LABEL CentOS7.2.1-x86_64
            append initrd=/images/CentOS7.2-x86_64/initrd.img ksdevice=bootif lang=  kssendmac text  ks=http://172.16.10.10/cblr/svc/op/ks/profile/CentOS7.2.1-x86_64
            ipappend 2
    
    MENU end

    在开始安装之前,要确保该ks路径是有效的且kickstart内容是正确的。有时候提供的Kickstart内容错误了,在制作成profile的时候不会报错,但实际上浏览器访问该ks路径的内容提示错误。例如,访问CentOS7.2.1-x86_64这个LABEL的kickstart文件,将其ks文件url地址http://172.16.10.10/cblr/svc/op/ks/profile/CentOS7.2.1-x86_64输入浏览器中。如果得到如下结果,则表示出错了,很大的可能是cobbler不支持kickstart中的某指令,这个需要慢慢检查。

    # This kickstart had errors that prevented it from being rendered correctly.
    # The cobbler.log should have information relating to this failure.

    查看下错误日志

    [root@cobbler ~]# cobbler sync
    [root@cobbler ~]# tail /var/log/cobbler/cobbler.log  -f
    Sat Sep  7 08:59:25 2019 - INFO | REMOTE generate_kickstart; user(?)
    Sat Sep  7 08:59:25 2019 - INFO | generate_kickstart
    Sat Sep  7 08:59:25 2019 - INFO | Exception occured: <type 'exceptions.UnicodeDecodeError'>
    Sat Sep  7 08:59:25 2019 - INFO | Exception value: 'ascii' codec can't decode byte 0xe6 in position 322: ordinal not in range(128)
    Sat Sep  7 08:59:25 2019 - INFO | Exception Info:
      File "/usr/lib/python2.7/site-packages/cobbler/remote.py", line 1052, in generate_kickstart
        return self.api.generate_kickstart(profile,system)
       File "/usr/lib/python2.7/site-packages/cobbler/api.py", line 680, in generate_kickstart
        return self.kickgen.generate_kickstart_for_profile(profile)
       File "/usr/lib/python2.7/site-packages/cobbler/kickgen.py", line 295, in generate_kickstart_for_profile
        return self.generate_kickstart(profile=g)
       File "/usr/lib/python2.7/site-packages/cobbler/kickgen.py", line 277, in generate_kickstart
        data = self.templar.render(raw_data, meta, None, obj)
       File "/usr/lib/python2.7/site-packages/cobbler/templar.py", line 116, in render
        data_out = self.render_cheetah(raw_data, search_table, subject)
       File "/usr/lib/python2.7/site-packages/cobbler/templar.py", line 201, in render_cheetah
        t = Template(source=raw_data, searchList=[search_table], compilerSettings={'useStackFrame':False})
       File "DynamicallyCompiledCheetahTemplate.py", line 58, in __init__
       File "_etc_cobbler_cheetah_macros.py", line 58, in __init__
       File "/usr/lib64/python2.7/site-packages/Cheetah/Template.py", line 1259, in __init__
        self._compile(source, file, compilerSettings=compilerSettings)
       File "/usr/lib64/python2.7/site-packages/Cheetah/Template.py", line 1553, in _compile
        keepRefToGeneratedCode=True)
       File "/usr/lib/python2.7/site-packages/cobbler/template_api.py", line 127, in compile
        return Cheetah.Template.Template.compile(*args, **kwargs)
       File "/usr/lib64/python2.7/site-packages/Cheetah/Template.py", line 740, in compile
        settings=(compilerSettings or {}))
       File "/usr/lib64/python2.7/site-packages/Cheetah/Compiler.py", line 1575, in __init__
        source = unicode(source)

    解决:参考:https://blog.csdn.net/qq_34284638/article/details/86493535

    发现是ks文件中有些中文的注释,删掉后,重新cobber sync即可

    修改kickstart文件后,需要重新编译profile加载新的kickstart文件。只需使用cobbler profile edit --name=XXXXX --kickstart=YYYYY即可重新编译XXXXX这个profile,或者执行cobbler sync命令。直到浏览器中能获取到kickstart的内容时才算成功。

    或者,使用cobbler profile getks --name=XXXXX命令获取名为XXXXX的profile的ks内容。

    总之,必须要保证能正确获取到ks内容。

    同理,加上CentOS6到cobbler里面:

    [root@cobbler ~]# mkdir /data/iso -p
    [root@cobbler ~]# mkdir /CentOS6.10-mini
    [root@cobbler ~]# cd /data/iso/
    [root@cobbler iso]# wget https://mirrors.huaweicloud.com/centos/6/isos/x86_64/CentOS-6.10-x86_64-minimal.iso
    [root@cobbler iso]# echo '/data/iso/CentOS-6.10-x86_64-minimal.iso  /CentOS6.10-mini iso9660 defaults 0 0' >> /etc/fstab
    [root@cobbler iso]# mount -a
    [root@cobbler ~]# cobbler import --name=CentOS6.10-mini --path=/CentOS6.10-mini
    [root@cobbler iso]# vim /var/lib/cobbler/kickstarts/CentOS6.10-mini.ks 
    [root@cobbler iso]# ksvalidator /var/lib/cobbler/kickstarts/CentOS6.10-mini.ks 
    [root@cobbler iso]# cobbler profile remove --name=CentOS6.10-mini-x86_64
    [root@cobbler iso]# cobbler profile add --name=CentOS6.10-mini-x86_64 --distro=CentOS6.10-mini-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS6.10-mini.ks
    #确认下
    

    1.4.4 开始安装

    准备一个新的机器开机就会自动进入菜单,2-3秒超时后自动进行安装,安装完成后自动重启,重启时自动从本地启动。

    所以,除了对新机器进行开机,其他的一切完完全全是全自动的。

    建议在真正开始安装前,将dhcpd/rsyncd/tftp/cobbler等给重启一遍,防止中间改过哪些地方忘记重启而导致装机时出错。

    [root@cobbler ~]# systemctl restart dhcpd httpd cobblerd tftp
    [root@cobbler ~]# systemctl enable  dhcpd httpd cobblerd tftp

    1.5 比pxe+kickstart好的地方

    仅就cobbler基本功能而言,它跟pxe的能力基本是一样的,只是提供了更多花哨的功能。

    但cobbler能够使用变量,能够通过几个命令自动完成文件复制,修改等繁琐的动作,另外它提供了api接口,常用的是它的图形界面。在这一点上,它还是不错的。

    1.6 让新机器自动执行脚本

    有些时候新机器上要进行很多配置,在kickstart的%post段也可以配置,但是这里能进行的配置是有限的。

    可以在cobbler服务端写好要执行的脚本,然后在新机器上将脚本使用scp复制过去,但是scp复制需要确认和输入密码,所以需要在kickstart的选包部分指定安装expect包,然后使用expect进行非交互scp。

    最后在%post段直接执行此脚本即可。

    cobbler无人值守批量安装Linux系统 1.1 pxe安装系统

    cobbler无人值守批量安装Linux系统 1.1 pxe安装系统

    cobbler无人值守批量安装Linux系统 1.1 pxe安装系统

    出问题的地方总结:

    1、要关掉NAT的dhcp

    2、ks文件中别有中文注释

    3、开始安装前重启下httpd,tftp,dhcpd,cobblerd

    4、ks文件中的url别写url --url=$tree,写成http连接:url --url="http://192.168.38.140/cobbler/ks_mirror/CentOS7.6/"

    5、CentOS7机器的内存为1G时安装失败

    6、安装CentOS7 mini安装包步骤都找不到,所以全部放到post里,安装后yum装包

    7、ks文件中的rootpw可以通过shadow文件来获取

    8、如果无特殊情况,一定要将/var/lib/tftpboot/pxelinux.cfg/default 默认启动项设置为local

    9、CentOS6也出现了上图的问题:you have specified that the group base should be installed,解决方法:参考:https://www.fangc.xyz/detail/pxean-zhuang-you-have-specifie/ ,但是,这个报了个小错误(报这个错误的原因是我这个镜像太mini了,没有base包,我把ks文件中的url换成网络源就可以了)

    [root@cobbler iso]# vim  /var/lib/cobbler/kickstarts/CentOS6.10-mini.ks
    %packages --nobase
    %end
    
    [root@cobbler iso]# ksvalidator /var/lib/cobbler/kickstarts/CentOS6.10-mini.ks 
    Ignoring deprecated option on line 30:  The --nobase option has been deprecated and no longer has any effect.  It may be removed from future releases, which will result in a fatal error from kickstart.  Please modify your kickstart file to remove this option.

    最后测试下ubuntu

    [root@cobbler ~]# cd /data/iso/
    [root@cobbler iso]# wget https://mirrors.huaweicloud.com/ubuntu-releases/bionic/ubuntu-18.04.3-live-server-amd64.iso
    [root@cobbler iso]# mkdir /ubuntu18.04-mini
    [root@cobbler iso]# echo '/data/iso/ubuntu-18.04.3-live-server-amd64.iso  /ubuntu18.04-mini iso9660 defaults 0 0' >> /etc/fstab 
    [root@cobbler iso]# mount -a
    [root@cobbler iso]# cobbler import --name=ubuntu18.04-mini --path=/ubuntu18.04-mini
    #失败告终,暂未解决,生成distro就报错了
    cobber官方文档:https://cobbler.github.io/manuals/2.8.0/
    

    附件

    CentOS7.6.ks

    [root@cobbler ~]# cat /var/lib/cobbler/kickstarts/CentOS7.6.ks
    #version=DEVEL
    # System authorization information
    auth --enableshadow --passalgo=sha512
    # Install OS instead of upgrade
    install
    # Use network installation
    url --url="http://192.168.38.140/cobbler/ks_mirror/CentOS7.6/"
    # Use text mode install
    text
    # Firewall configuration
    firewall --disabled
    firstboot --disable
    # ignoredisk --only-use=sda   
    # Keyboard layouts
    # old format: keyboard us
    # new format:
    keyboard --vckeymap=us --xlayouts='us'
    # System language
    lang en_US.UTF-8
    
    # Network information
    network  --onboot=yes --bootproto=dhcp --device=eth0 --noipv6
    network  --hostname=node1.xuexi.com
    # Reboot after installation
    reboot
    # Root password
    rootpw --iscrypted $6$TwMc7kHxAYSdICBU$yUVPcTo.SWi6FpWrZsx3.X.yjbrvqvgMxu0Jvqims55ZU6hQKPaR5DeQISwhcMBkmyVK/UJ1SFnpmu9E3S/Wu0
    # SELinux configuration
    selinux --disabled
    # Do not configure the X Window System
    skipx
    # System timezone
    timezone Asia/Shanghai
    # System bootloader configuration
    #bootloader --append="quiet crashkernel=auto" --location=mbr --boot-drive=sda
    bootloader --append="net.ifnames=0" --location=mbr
    # Clear the Master Boot Record
    zerombr
    # Partition clearing information
    clearpart --all --initlabel
    # Disk partitioning information
    part /boot --asprimary --fstype="xfs" --size=250
    part swap --fstype="swap" --size=2000
    part / --asprimary --fstype="xfs" --grow --size=5000
    
    # part /boot --fstype ext4 --size=100
    # part swap --fstype=swap --size=2048
    # part pv26 --size=100 --grow
    # volgroup VG00 --pesize=32768 pv26
    # logvol / --fstype ext4 --name=LVroot --vgname=VG00 --size=29984
    # logvol /data --fstype ext4 --name=LVdata --vgname=VG00 --size=100 --grow
    
    %post
    mkdir /etc/yum.repos.d/backup
    cd /etc/yum.repos.d/
    mv *.repo backup/
    cat >>/etc/yum.repos.d/my.repo<<eof
    [base]
    name=sohu
    baseurl=http://mirrors.aliyun.com/centos/7/os/x86_64/
    gpgcheck=0
    enable=1
    [epel]
    name=epel
    baseurl=http://mirrors.aliyun.com/epel/7Server/x86_64/
    enable=1
    gpgcheck=0
    eof
    sed  -ri '/GRUB_CMDLINE_LINUX/ s/^(.*quiet)"$/\1 net.ifnames=0"/'  /etc/default/grub
    sed -i "/UUID/d" /etc/sysconfig/network-scripts/ifcfg-ens33
    sed -i "/DEVICE/d" /etc/sysconfig/network-scripts/ifcfg-ens33
    echo "DNS1=114.114.114.114" >> /etc/sysconfig/network-scripts/ifcfg-ens33
    echo "UseDNS no" >> /etc/ssh/sshd_config
    sed -i "s/GSSAPIAuthentication yes/GSSAPIAuthentication no/" /etc/ssh/ssh_config
    sed -i "s/^SELINUX=.*$/SELINUX=disabled/" /etc/sysconfig/selinux
    systemctl disable firewalld
    yum install lftp lrzsz vim tree  -y
    %end
    
    %packages
    %end
    
    %addon com_redhat_kdump --enable --reserve-mb='auto'
    
    %end

    kickstart模版: https://www.lanzous.com/i6293oj 密码:20mx

    CentOS6.10-mini.ks

    [root@cobbler iso]# cat /var/lib/cobbler/kickstarts/CentOS6.10-mini.ks
    # Kickstart file automatically generated by anaconda.
    
    #version=DEVEL
    install
    text
    reboot
    url --url="http://192.168.38.140/cobbler/ks_mirror/CentOS6.10-mini/"
    lang en_US.UTF-8
    keyboard us
    network --onboot yes --device eth0 --bootproto dhcp --noipv6
    rootpw  --iscrypted $6$TwMc7kHxAYSdICBU$yUVPcTo.SWi6FpWrZsx3.X.yjbrvqvgMxu0Jvqims55ZU6hQKPaR5DeQISwhcMBkmyVK/UJ1SFnpmu9E3S/Wu0
    firewall --disabled
    authconfig --enableshadow --passalgo=sha512
    selinux --disabled
    timezone Asia/Shanghai
    bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
    # The following is the partition information you requested
    # Note that any partitions you deleted are not expressed
    # here so unless you clear all partitions first, this is
    # not guaranteed to work
    clearpart --all
    zerombr
    
    part /boot --fstype=ext4 --size=1024
    part / --fstype=ext4 --size=100000
    part /data --fstype=ext4 --size=50000
    part swap --size=2048
    
    %packages --nobase
    %end
    
    %post
    mkdir /etc/yum.repos.d/backup
    cd /etc/yum.repos.d/
    mv *.repo backup/
    cat >/etc/yum.repos.d/my.repo <<EOF
    [base]
    name=base
    baseurl=http://mirrors.aliyun.com/centos/6/os/x86_64/
    gpgcheck=0
    enable=1
    [epel]
    name=epel
    baseurl=http://mirrors.aliyun.com/epel/6/x86_64/
    enable=1
    gpgcheck=0
    EOF
    yum install -y vim wget curl lrzsz
    %end
    展开全文
  • PXE(预启动执行环境)工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP协议下载一个启动软件包到本机...
  • 环境PXE网段:172.25.151.0/24PXE网关:172.25.151.1PXE服务器地址:172.25.151.254PXE服务器系统 : ubuntu 16.04DHCP地址池:172.25.151.240~172.25.151.253PXE安装镜像IOS:ubuntu-16.04.4-server-amd64挂载目录:...
  • Ubuntu PXE安装服务器部署

    万次阅读 2018-10-14 20:18:29
    Ubuntu PXE安装服务器部署 通过PXE自动进行服务器操作系统的安装是大规模服务器运维过程中的必要手段,本文档详细描述PXE服务器的部署和配置。 PXE自动服务器安装原理(以下内容来自互联网) PXE(Pre-boot ...
  • Linux--pxe安装系统

    2019-05-22 10:24:38
    一.pxe安装系统简介 PXE(预启动执行环境)工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP协议下载...
  • Linux之pxe安装系统

    2019-11-18 23:04:01
    PXE (Preboot excute Environment)是由 Intel 公司开发的最新技术,工作于 Client/Server 的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配...
  • PXE (Preboot excute Environment)是由 Intel 公司开发的最新技术,工作于 Client/Server 的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配...
  • 通过PXE给Dell R630服务器安装操作系统前言一、服务器基础配置二、服务器PXE配置1、网卡设置为PXE启动2、设置启动顺序3、*重启服务器三、安装操作系统四、基础部署1、ssh服务2、selinux和iptables3、修改IP地址五、...
  • 原理: PXE是在没有软驱、硬盘、CD-ROM的情况下引导计算机的一种方式,也就是BIOS将使用PXE协议从网络引导。 ...安装环境:虚拟机CentOS7.0中搭建PXE服务器 使用模式:仅主机模式 1.安装与...
  • Linux下搭建PXE服务器安装Linux系统

    万次阅读 2014-05-16 22:08:22
    PXE服务器安装与配置 原理: PXE是在没有软驱、硬盘、CD-ROM的情况下引导计算机的一种方式,也就是BIOS将使用PXE协议从网络引导。 DHCP服务器:用来动态分配IP地址(同时分配子网掩码、网关、TFTP服务器地址、启动...
  • mysql opxe_PXE安装系统

    2021-01-27 17:28:52
    环境:centos7配置PXE服务器yum install -y tftp-server dhcp-server httpd httpd-devel system-config-kickstart通过kickstart软件:制作ks应答文件,图形化的工具配置http服务:将光盘镜像挂载在访问目录下,便于...
  • cobbler PXE 安装系统时出现的问题 1、安装包未找到。解决方法:ios镜像里没有软件包,换掉该软件包的ios镜像,或者在ks.cfg 文件里删去或注释掉%packages 里指定安装的软件包。 2、No space left on device。...
  • V1.51解压到F盘把文件夹名改为deepinGHOST打开TestIP.exe切换到网克服务配置和DHCP如图1所示 图1 服务器发射端DHCP设置设置DHCP服务器网段与本地IP同一网段引导目录就是deepin.pxe和gcdos.sys所在的目录如图2所示 ...
  • linux--pxe 安装系统

    2017-12-14 09:30:27
    PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端...
  • 用户如无法正常为服务器在线安装操作系统,请参考...看不到DHCP相关关键字可能原因:未接入网络解决办法:通过DCIM安装操作系统需要下载镜像并通过PXE启动安装程序,因此服务器必须联网。出现这种情况请检查网线是否...
  • 这种机制让计算机的启动可以不依赖本地数据存储设备(如硬盘)或本地已安装的操作系统。2.所需服务DHCP、TFTP 和FTPDHCP:来给PXE客户机自动分配TCP/IP设置(包括IP地址、子网掩码、网关、DNS等)。告知PXE客户机“TFTP...
  • 一、 PXE安装系统 PXE介绍 PXE   Preboot Excution Environment 预启动执行环境   Intel公司研发   基于Client/Server的网络模式,支持远程主机通过网络从远端服务器下载映像,并由此支持通过网络启动...
  • PXE支持系统安装

    2017-10-08 20:49:12
    PXE支持系统安装在企业中经常会用到的一种自动安装系统的方法就是pxe安装,他是怎么实现的呢。PXE全称Preboot Excution Environment中文翻译:预启动执行环境,是由Intel公司研发基于Client/Server 的网络模式,支持...
  • 前言: Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理机和虚拟机的操作系统PXE是Preboot Execution Environment的缩写,字面上的意思是开机前的执行环境,它采用了C/S网络...
  • pxe无人值守安装系统,实现批量安装服务器 必须起dhcp服务器 一、配置yum源:先安装http软件包,将iso挂给http服务器下面的文件夹 、创建http的yum源: [root@host2 html]# vim /etc/fstab /dev/cdrom /var/...
  • PXE批量安装系统

    2020-11-29 22:10:49
    PXE批量安装Win10系统 应用场景 企业同时批量采购多台员工办公主机,每台主机硬件配置相同,并且要求每个主机的软件环境一致,为降低管理员任务量,通过PXE批量部署多台主机系统安装。 实验环境(Vmware) 至少准备...
  • PXE 安装linux服务器

    2015-07-21 13:41:45
    最近遇到一个问题,公司内部的服务器由于比较老,光驱坏了,也不支持U盘启动,所以没办法,只能用pxe安装操作系统。网上教程很多,但是不够清晰,下来我来写一下我的安转过程。A.安装dhcp服务器yuminstalldhcp vim...
  • pxe安装centos系统

    2016-02-23 12:06:01
    环境:系统:centos7.1平台:VirtualBox虚拟机所安装系统:centos6.7、centos7.1大体的过程:1、由dhcp为客户机分配地址,并提供客户机启动所需的文件和tftp服务器地址。2、客户机自动从tftp下载bootloader第一...
  • PXE安装linux系统

    2012-08-31 10:56:35
    PXE称为网络批量部署安装,且可支持多版本选择安装,方便...一、安装dhcp为其它计算机需要安装操作系统分配IP要求可以正常分配ip并且指定TFTP服务器 安装tftp为了通过网络传输启动文件,存放系统安装所需要的引导文...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,978
精华内容 791
关键字:

服务器pxe安装系统