设为首页 收藏本站
查看: 684|回复: 0

[经验分享] PXE+KickStart+Nginx(http)+DHCP无人值守安装Centos6.6系统

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-4-27 09:14:33 | 显示全部楼层 |阅读模式
  PXE+KickStart+Nginx(http)+DHCP无人值守安装Centos6.6系统1.1 什么是PXE
PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。

严格来说,PXE 并不是一种安装方式,而是一种引导方式。进行 PXE 安装的必要条件是在要安装的计算机中必须包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 PXE Client。PXE 协议可以使计算机通过网络启动。此协议分为 Client端和 Server 端,而PXE Client则在网卡的 ROM 中。当计算机引导时,BIOS 把 PXE Client 调入内存中执行,然后由 PXE Client 将放置在远端的文件通过网络下载到本地运行。运行 PXE 协议需要设置 DHCP 服务器和 TFTP 服务器。DHCP 服务器会给 PXE Client(将要安装系统的主机)分配一个 IP 地址,由于是给 PXE Client 分配 IP 地址,所以在配置 DHCP 服务器时需要增加相应的 PXE 设置。此外,在 PXE Client 的 ROM 中,已经存在了 TFTP Client,那么它就可以通过 TFTP 协议到 TFTP Server 上下载所需的文件了.              
1.2 什么是Kickstart
Kickstart是一种无人值守的安装方式。它的工作原理是在安装过程中记录典型的需要人工干预填写的各种参数,并生成一个名为ks.cfg的文件。如果在安装过程中(不只局限于生成Kickstart安装文件的机器)出现要填写参数的情况,安装程序首先会去查找Kickstart生成的文件,如果找到合适的参数,就采用所找到的参数;如果没有找到合适的参数,便需要安装者手工干预了。所以,如果Kickstart文件涵盖了安装过程中可能出现的所有需要填写的参数,那么安装者完全可以只告诉安装程序从何处取ks.cfg文件,然后就去忙自己的事情。等安装完毕,安装程序会根据ks.cfg中的设置重启系统,并结束安装.

1.3 PXE+Kickstart 无人值守安装操作系统完整过程如下
wKiom1U7ZMnw8o-VAAE6dWAy8oQ986.jpg
第一步:PXE ClientDHCP服务器发送请求
首先,将支持PXE的网络接口卡(NIC)的客户端BIOS设置为网络启动,通过PXE BootROM(自启动芯片)会一UDP协议发送一个广播请求,向网络中的DHCP服务器申请一个IP地址信息.
第二步:DHCP服务器提供信息
DHCP服务器收到客户端请求,验证是否来自PXE Client的请求,验证通过后向客户端回响应信息,包括:客户端IP地址,TFTP Server、pxelinux.0文件名.
第三步:PXE客户端请求下载启动文件
客户端请求传送启动所需文件,包括pxelinux.0、pxelinux. cfg/default、vmlinuz、initrd.img等文件.
第四步:Boot Install Server响应客户端请求并传送文件
TFTP服务器收到客户端请求后,彼此间进行通信应答,确定启动参数,BootROM由TFTP通信协议从Boot Server下载启动安装程序所必需文件(pxelinux.0pxelinux.cfg/default).default文件下载完成后,会根据
该文件中定义的引导顺序,启动Linux安装程序的引导内核.
第五步:请求下载Kickstart配置文件
客户端通过pxelinux.cfg/default文件成功的引导Linux运行是因为制订了Kickstart配置文件信息所以当一vmlinuz、initrd.img组成的系统运行成功后系统确定你通过什么安装介质来安装Linux如果是通过网络安装(NFS、FTP、HTTP)则会在这个时候初始化网络,并请求下载Kickstart配置文件.刚才PXE不是已经获取过IP地址了吗?为什么现在还需要一次因为现在已经进入了有vmlinuz、initrd.img等文件组成的系统中了,由于PXE的网络配置并不能传递给这个系统,所以才会进行两次获取IP地址过程.
第六步:客户端安装操作系统
将ks.cfg文件下载后,通过该文件找到OS Sserver,并按照该文件的配置请求下载安装过程需要的文件,OS Server和客户端建立连接后,将开始传输文件,客户端将开始安装操作系统,安装完成后,将会根据ks.cfg文件设置来重启或关机注意:安装完成后开机一定要将BIOS修改会从硬盘启动,不然的话又会重复的自动安装操作系统.

1.4 系统环境试验环境:Vmware Workstation11
网络模式:NAT模式
DHCP、TFTP、HTTP、等服务在同一台服务其IP:10.0.0.132
[iyunv@PXE ~]# uname -a
Linux PXE 2.6.32-504.12.2.el6.x86_64 #1 SMP Wed Mar 11 22:03:14 UTC2015 x86_64 x86_64 x86_64 GNU/Linux
[iyunv@PXE ~]# cat /etc/redhat-release
CentOS release 6.6 (Final)
[iyunv@PXE ~]# uname -r
2.6.32-504.12.2.el6.x86_64
[iyunv@PXE ~]# uname -m
x86_64
[iyunv@PXE ~]# uname -n
PXE
[iyunv@PXE ~]# /etc/init.d/iptables stop
iptables: Setting chains to policy ACCEPT: filter     [ OK  ]
iptables: Flushing firewall rules:                              [  OK ]
iptables: Unloading modules:                                 [  OK ]
[iyunv@PXE ~]# vim /etc/sysconfig/selinux
SELINUX=disabled
1.5 准备工作生成ks.cfg文件需要system-config-kickstart 工具,而此工具依赖于X Windows,所以我们需要安装X Windows 和Desktop 并重启系统.
[iyunv@PXE ~]# yum -y groupinstall "X Window System"
安装gnome(6.2中Desktop就是gnome)
[iyunv@PXE ~]# yum groupinstall "Desktop"
安装gnome(6.0以下的系统)
[iyunv@PXE ~]# yum -y groupinstall 'GNOME Desktop Environment'
如果需要中文界面我们需要安装中文语言
[iyunv@PXE ~]# yum groupinstall "Chinese Support"
最关键的一步了启动gnome
[iyunv@PXE ~]# startx


1.6 无人值守安装配置过程1.6.1 配置PXE网络安装的说明及步骤顺序
  • 创建/data/sys目录用于Nginx web目录,用于存放linux系统的安装文件.
  • 配置TFTP服务器,用于提供客户端PXE引导所必须的启动文件
  • 配置DHCP,用于给客户端提供IP地址及其它信息
  • 配置kickstart用于自动应答操作系统安装
  • 安装Pcre
  • 安装Nginx及配置
  • 使用网卡的PXE功能引导客户机



1.6.2 创建/data/sys目录并挂载系统镜像创建/data/sys目录,并将光盘内容拷贝到共享目录中
[iyunv@PXE ~]# mkdir –p  /data/sys
把光盘放入光驱,也可以把系统ISO文件传到服务器下面解压

wKiom1U7ZvHSum4KAAIXsU9WHJg323.jpg
wKioL1U7aFPiNB99AAD9awQwJa0569.jpg


挂载镜像到mnt目录下,再将系统镜像里边的内容拷贝到共享目录/data/sys/中去.
[iyunv@PXE ~]# mount /dev/cdrom /mnt/
mount: block device /dev/sr0 iswrite-protected, mounting read-only
拷贝文件的过程时间略长请大家耐心等待.稍安勿躁!
[iyunv@PXE ~]# cp -a /mnt/* /data/sys/
特别提示:如果使用虚拟机做实验,只需要在vm里使用ISO文件即可.

1.6.3 安装TFTP及Xinetd服务
在安装PXE过程中,客户机通过TFTP协议从TFTP服务器下载引导文件并执行,因此,需要配置TFTP服务器和PXE的引导配置完成这个过程.
如果在yum安装之前执行下面的操作,可以把yum安装的rpm包保存下来
[iyunv@PXE ~]# sed -i's#keepcache=0#keepcache=1#g' /etc/yum.conf
[iyunv@PXE ~]# yum -y installtftp-server* xinetd
[iyunv@PXE ~]# tree /var/cache/yum/
/var/cache/yum/
`-- x86_64
   `-- 6
       |-- base
       |   |-- packages
        |   |  |-- tftp-server-0.49-7.el6.x86_64.rpm
        |  |   `--xinetd-2.3.14-39.el6_4.x86_64.rpm
配置tftp服务
TFTP服务使用xinetd服务管理,编辑/etc/xinetd.d/tftp文件,将文件中disable的参数由yes改为no.
[iyunv@PXE ~]# vim /etc/xinetd.d/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 由原来的yes改为no
       per_source        = 11
       cps              = 100 2
       flags             = IPv4
}
wKioL1U7aTbDY4RsAAFUfm6shXU603.jpg
配置完后重启xinetd服务使tftp服务器生效!
[iyunv@PXE ~]# /etc/init.d/xinetd start   
Starting xinetd:              [  OK  ]
[iyunv@PXE ~]# chkconfig --level 3 xinetd on
[iyunv@PXE ~]# chkconfig --list xinetd
xinetd   0:off   1:off  2:off   3:on    4:on   5:on    6:off


1.6.4 配置支持PXE引导启动程序   PXE启动映像文件由syslinux软件提供,CentOS Linux光盘已提供,也可以到syslinux主页http://www.syslinux.org/wiki/index.php/The_Syslinux_Project下载rmp包安装.只要安装了syslinux(默认没有安装),就会生成一个pxelinux.o文件,将这个文件复制到TFTP默认路径即可!
syslinux是一个功能强大的引导加载程序,而且兼容各种介质,更加确切地说:SYSLINUX是一个小型的Linux操作系统,它的目的是简化首次安装Linux的时间,并建立修护或其它特殊用途的启动盘.
[iyunv@PXE ~]# yum -y install syslinux
复制pxelinux.0引导文件文件至/var/lib/tftpboot/ 文件夹中
[iyunv@PXE ~]# cp /usr/share/syslinux/pxelinux.0/var/lib/tftpboot/
[iyunv@PXE ~]# ll /var/lib/tftpboot/
total 28
-rw-r--r--. 1 root root 26759 Apr 2414:32 pxelinux.0
用于网络启动的内核文件
将CentOS安装光盘目录中的images/pxeboot/{vmlinuz,initrd.img}启动文件复制到某个安装目录,比如/var/lib/tftpboot/
内核文件
[iyunv@PXE ~]# cp/data/sys/images/pxeboot/vmlinuz /var/lib/tftpboot/
驱动文件
[iyunv@PXE ~]# cp/data/sys/images/pxeboot/initrd.img /var/lib/tftpboot/
下面的这个.msg可以不做,在这里我没有复制
[iyunv@PXE ~]# cp/data/sys/isolinux/*.msg /var/lib/tftpboot/
[iyunv@PXE ~]# mkdir -p /var/lib/tftpboot/pxelinux.cfg
[iyunv@PXE ~]# cp /data/sys/isolinux/isolinux.cfg/var/lib/tftpboot/pxelinux.cfg/default
[iyunv@PXE ~]# cat /var/lib/tftpboot/pxelinux.cfg/default
default vesamenu.c32
默认启动的是"labeltext"中标记的内核
default text
显示boot提示符,为"0"时则不提示将会直接启动default参数中指定的内容.
prompt 1
在用户输入之前的超时时间,单位为 1/10 秒
timeout 6
显示某个文件的内容,注意文件的路径.默认是在/var/lib/tftpboot/ 目录下。也可以指定位类似'/install/boot.msg'这样的,路径+文件名.
display boot.msg
menu background splash.jpg
menu title Welcome to CentOS 6.6!
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffffff #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ff000000 #ffffffff
menu color hotkey 7 #ffffffff #ff000000
menu color scrollbar 0 #ffffffff #00000000

label linux
  menu label ^Install orupgrade an existing system
  menu default
  kernel vmlinuz
  append initrd=initrd.img
label vesa
  menu label Install systemwith ^basic video driver
  kernel vmlinuz
  append initrd=initrd.img xdriver=vesanomodeset
label rescue
  menu label ^Rescue installedsystem
  kernel vmlinuz
  append initrd=initrd.imgrescue
label local
  menu label Boot from ^localdrive
  localboot 0xffff
label memtest86
  menu label ^Memory test
  kernel memtest
  append –
label指定你在 'boot:' 提示符下输入的关键字,比如boot: linux[ENTER],这个会启动'label linux' 下标记的kernel和initrd.img 文件
label text
  kernel vmlinuz
告诉系统,从哪里获取ks.cfg文件
  append initrd=initrd.imgks=http://10.0.0.132/ks.cfg

1.7 安装及配置DHCP服务
在PXE安装过程中,PXE客户机主要通过DHCP服务获取IP地址、PXE引导文件名称,然后在客户机上通过TFTP协议从TFTP服务器下载引导文件并执行,从而启动系统安装程序执行后,接着下载并安装程序启动安装.
1.7.1 Yum方式安装DHCP服务[iyunv@PXE ~]# yum -y install dhcp*
1.7.2 配置DHCP在/etc/dhcpd.conf中增加tftp-server需要推送给客户端的启动文件(bootstrap):filename “pxelinux.0”;因为tftp的默认目录是/var/lib/tftpboot,所以文件的绝对路径是:/var/lib/tftpboot/pxelinux.0;
另外需要指定next-server参数,告诉客户端在获取到pxelinux.0文件后去哪里获取其余的启动文件:next-server 10.0.0.132
[iyunv@PXE ~]# cat/etc/dhcp/dhcpd.conf     
# DHCP Server Configuration file.
#  see /usr/share/doc/dhcp*/dhcpd.conf.sample
#  see 'man 5 dhcpd.conf'
ddns-update-style interim;
ignore client-updates;
PXE文件名
filename "pxelinux.0";
TFTP服务器地址
next-server 10.0.0.132;
DNS地址
option domain-name-servers202.106.0.20,8.8.8.8;
分配IP地址网段
subnet 10.0.0.0 netmask 255.255.255.0 {
      网关
      option routers       10.0.0.132;
      掩码
      option subnet-mask  255.255.255.0;
      DHCP地址池
      range dynamic-bootp 10.0.0.136 10.0.0.146;
      default-lease-time 21600;
      max-lease-time 43200;
}
1.7.3 创建DHCP服务日志文件启动DHCP服务,并设置开机自启动[iyunv@PXE ~]# touch /var/log/dhcpd.log
[iyunv@PXE ~]# chmod 600 /var/log/dhcpd.log
[iyunv@PXE ~]# /etc/init.d/dhcpd restart
Starting dhcpd:           [  OK  ]
[iyunv@PXE ~]# chkconfig dhcpd on
[iyunv@PXE ~]# chkconfig --list dhcpd
dhcpd   0:off   1:off  2:on    3:on    4:on   5:on    6:off
1.8 Kickstart安装配置
通常安装操作系统过程中,需要大量得和服务器进行交互操作,为了减少这个交互过程可以使用kickstart。使用kickstart,只需事先定义好一个kickstart自动应答配置文件ks.cfg(通常存放在服务器上),并让安装程序知道该配置文件的位置,在安装过程中安装程序就可以自动从该文件中读取kickstart配置文件,无论使用那种方法无非就是创建一个应答文件。当安装好一台服务器,安装程序都会创建一个kickstart配置文件,记录真实安装配置。如果希望实现和某系统类似的安装,可以基于该系统的kickstart配置文件来生成自己的kickstart配置文件。该文件默认位于/root/anaconda-ks.cfg。
生成kickstart配置文件的三种方法:
1、每安装好一台服务器,安装程序都会创建一个kickstart配置文件,记录真实安装配置。如果希望实现和某系统类似的安装,可以基于该系统的kickstart配置文件来生成自己的kickstart配置文件。该文件默认位于/root/anaconda-ks.cfg。
2、CentOS Linux提供一个图形化的kickstart配置工具,在任何一个安装好的Linux系统上运行该工具,就可以很容易创建自己的kickstart配置文件。kickstart配置工具命令为redhat-config-kickstart(RHEL3)或system-config-kickstart(RHEL4和RHEL5)。
3、阅读kickstart配置文件手册。用任何一个文本编辑器都可以创建自己的kickstart配置文件。
1.8.1 安装kickstart我们用kickstart的第二种方法来实现
[iyunv@PXE ~]# yum install system-config-kickstart
[iyunv@PXE ~]# system-config-kickstart
[iyunv@PXE ~]# startx
打开kickstart工具


wKioL1U7aorTDysAAAEMJIxxR40025.jpg
设置语言、键盘、时区、root密码等内容.
wKioL1U7aovC3czwAAEci0FcEgc025.jpg
设置安装方式,我们用的是HTTP方式安装,故选择HTTP
wKiom1U7aXGyNeowAAC0hhK3iLI193.jpg

wKioL1U7azXDElldAADPGxnpTS4342.jpg
下面按照下图方式选择,不然安装时候会弹出对话框询问是否清除硬盘数据,这样自动化安装就失败.

wKiom1U7ahnAI1nZAADg2_cWe34600.jpg
不按照上图选择安装系统时候的结果!
wKioL1U7a3uyMKD2AAD9r2M_ctw119.jpg wKioL1U7bAGQXE2HAADg2nbCNzk511.jpg
wKiom1U7aqCi6xqYAADwRQtse8A002.jpg
wKioL1U7bAKhs4GAAAFGB1l4lb4700.jpg
wKiom1U7azGjawmdAADpZNNXGFI732.jpg
wKioL1U7bAHwndPTAAF7lITisQA132.jpg
wKiom1U7aqCjG2e7AAEYCPmO13g763.jpg
配置网络
wKioL1U7bUOCTxVyAADV2XyxsME450.jpg

系统认证配置
wKioL1U7bUrjDoP8AADTeO8Gmyo467.jpg
Selinux和防火墙配置
wKioL1U7bUqzCERbAAC9mb7bSpI459.jpg
图形环境配置
wKioL1U7bUuywyw5AACP6WTbLG0606.jpg
软件包安装选择
wKiom1U7a-HRqMpaAAE4c7KpSPg908.jpg
wKiom1U7a-mT5IgMAAEjc3pJBoQ989.jpg
wKiom1U7a-rik156AAGGUY_8ScU958.jpg
选择file—preview查看浏览
wKioL1U7bUzQaNTcAAE-b3TdtMM663.jpg
选择file—save保存到/data/sys目录
wKiom1U7a-OTfhP8AAG0qIQxfUU039.jpg
[iyunv@PXE ~]# vim /data/sys/ks.cfg
#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Firewall configuration
firewall --disabled
# Install OS instead of upgrade
表示安装系统而不是升级
install
# Use network installation
这个选项告诉安装程序,到服务器10.0.0.132d的HTTP根目录下寻找安装介质
url --url="http://10.0.0.132/"
# Root password
root用户密码
rootpw --iscrypted $1$Qy3ftD8v$Ic8D3xTgNskYjiPRbSR2s/
# System authorization information
系统认证信息
auth  --useshadow  --passalgo=sha512
# Use text mode install
文本安装方式
text
禁止安装后的Agent设置
firstboot --disable
# System keyboard
键盘布局
keyboard us
# System language
字符集设置
lang en_US
# SELinux configuration
关闭selinux
selinux –disabled
# Installation logging level
设置日志级别
logging --level=info
# Reboot after installation
重启系统
reboot
# System timezone
设置系统时间
timezone  Asia/Shanghai
# Network information
网络配置eth0为第一块网卡,结尾PXE为主机名
network  --bootproto=dhcp--device=eth0 --onboot=on
# System bootloader configuration
系统引导相关信息
bootloader --location=mbr
# Partition clearing information
清除系统所有分区
clearpart --all
# Disk partitioning information
系统的3个分区
part swap --asprimary --fstype="swap" --size=200
part /boot --asprimary --fstype="ext4" --size=200
part / --asprimary --fstype="ext4" --grow --size=1
系统安装的软件包
%packages
@base
@basic-desktop
@compat-libraries
@debugging
@development
%end
######安装完后的简单优化#####
%post
#service configuration
for n in `chkconfig|awk '{print $1}'|egrep -v"crond|rsyslog|network|sshd"`;do chkconfig $n off;done
#config ssh
sed -i s%#Port 22%Port 52113%g /etc/ssh/sshd_config
sed -i s%#PermitRootLogin yes%PermitRootLogin no%g/etc/ssh/sshd_config
sed -i s%#PermitEmptyPasswords no%PermitEmptyPasswords no%g/etc/ssh/sshd_config
sed -i s%#UseDNS yes%UseDNS no%g /etc/ssh/sshd_config
1.9 Pcre安装[iyunv@PXE ~]# yum -y install openssl openssl-devel
[iyunv@PXE ~]# cd /home/hao/tools/
[iyunv@PXE tools]# wget http://sourceforge.net/projects/pcre/files/pcre/8.30/pcre-8.30.tar.gz
[iyunv@PXE tools]# tar zxf pcre-8.30.tar.gz
[iyunv@PXE tools]# cd pcre-8.30
[iyunv@PXE pcre-8.30]# ./configure
[iyunv@PXE pcre-8.30]# make
[iyunv@PXE pcre-8.30]# make install
1.10 Nginx安装及配置[iyunv@PXE tools]# useradd nginx -s /sbin/nologin -M
[iyunv@PXE tools]# tar zxf nginx-1.6.2.tar.gz
[iyunv@PXE tools]# cd nginx-1.6.2
[iyunv@PXE nginx-1.6.2]# ./configure --user=nginx --group=nginx --prefix=/application/nginx-1.6.2--with-http_stub_status_module --with-http_ssl_module
[iyunv@PXE nginx-1.6.2]# make
[iyunv@PXE nginx-1.6.2]# make install
[iyunv@PXE nginx-1.6.2]# ln -s /application/nginx-1.6.2//application/nginx
[iyunv@PXE nginx-1.6.2]# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/local/lib/
[iyunv@PXE nginx-1.6.2]# ldconfig  
[iyunv@PXE nginx-1.6.2]# /application/nginx/sbin/nginx
[iyunv@PXE ~]# cd /application/nginx/conf/
[iyunv@PXE conf]# egrep -v "#|^$" nginx.conf.default>nginx.conf
[iyunv@PXE ~]# cat /application/nginx/conf/nginx.conf
user nginx nginx;
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   /data/sys; 注意这的目录
            index  index.html index.htm;
        }
        error_page  500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}
检查语法
[iyunv@PXE ~]# /application/nginx/sbin/nginx –t
启动Nginx服务
[iyunv@PXE ~]# /application/nginx/sbin/nginx
1.11 新建虚拟机配置客户端PXE引导安装自动化安装系统配置完毕,下面启动一台新的机器进行测试,网络连接模式选择NAT模式.
wKiom1U7b6Cw2pSNAAGAUsCTzSQ847.jpg
wKioL1U7cQPBx28rAAEbRWUW_M4347.jpg
wKiom1U7b6PguU4MAAE7iadyDfc024.jpg wKiom1U7b5-BXGRqAAFz5V3NWks810.jpg
wKioL1U7cQGRKzhCAAFVp_ua8KU082.jpg
wKioL1U7cZSyGsIyAAFlCqo-Urw224.jpg
wKioL1U7coPDfwgfAAEMx7_e_m8328.jpg
wKioL1U7cseCyHP0AAFz17pzJzk798.jpg
wKiom1U7cWTh-bmTAAEDtdMF9So592.jpg
wKiom1U7ccazfMdzAAGQjq8-3Pk369.jpg
wKioL1U7cyjQk5hjAAEaHIZCu2I863.jpg
wKioL1U7cyaB-e00AADcW0q1LlY548.jpg
wKioL1U7dSzhq3tuAAF_LpVl86s939.jpg
wKiom1U7c8zjIHrgAAGLzNwx1v8512.jpg
wKiom1U7c8nyrJC7AAFEvNkC57U013.jpg
wKioL1U7dSyxhXSXAAGu8Yf0Ucc707.jpg
wKiom1U7dHWhdFB4AAB18RGSKvg390.jpg
wKiom1U7dHXyASxAAABSe-PcDoU603.jpg
wKiom1U7dHTiSB2SAACsSoytypU434.jpg

wKiom1U7dHPxydjtAADdk3IUYZ8485.jpg
wKioL1U7ddWxTlydAAERZn97-Ps372.jpg
wKioL1U7ddagl0cjAABLGx_ENNw285.jpg
wKioL1U7ddWAoBeSAADeVVBsLLc383.jpg
到此PXE部署大功告成了!





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-61017-1-1.html 上篇帖子: openssl库函数使用中的SSL_shutdown、SSL_free不能同时使用 下篇帖子: linux下忘记root密码如何修改
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表