IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> PXE + kickstart批量装机及问题解决方案 -> 正文阅读

[系统运维]PXE + kickstart批量装机及问题解决方案

目录

一、常见的问题的解决方案

1.1 system-config-kickstart需要图形化界面包X server支持,可通过如下安装:

1.2 一定注意关闭防火墙以及selinux;

1.3验证pxe安装,虚拟机内存至少需要2G? 不然在启动安装时可能会报错;

1.4PXE装机设置基础软件仓库问题:最重要的是将inst.stage2换成inst.repo

二、PXE定义及条件

三、搭建基本服务

3.1 搭建DHCP服务

3.2?搭建TFTP服务

3.2.1 获取pxelinux.0系统

最重要的是将inst.stage2换成inst.repo

3.2.2?搭建FTP服务

四、关闭禁用防火墙并禁用SElinux

五、Kickstart文件的生成

六、?创建虚拟机进行测试


一、常见的问题的解决方案

1.1 system-config-kickstart需要图形化界面包X server支持,可通过如下安装:

yum -y install xorg-x11-xauth

完成之后在mobarxterm或者其他终端工具配置参数ssh -X?host;

1.2 一定注意关闭防火墙以及selinux;

1.3验证pxe安装,虚拟机内存至少需要2G? 不然在启动安装时可能会报错;

1.4PXE装机设置基础软件仓库问题:最重要的是将inst.stage2换成inst.repo

二、PXE定义及条件

定义:PXE 的全称是 preboot execute environment它其实是Intel在很久以前提出来的一项用于通过网络来引导系统的标准。允许客户机通过网络从远程服务器上下载引导镜像,并加载安装文件或者整个操作系统。

pxe是通过网卡引导启动

1pxe client必须支持pxe用户端功能,并且开机时选择网络启动,才能确保以网
络的方式进入pxe启动程序;
2pxe服务器必须至少提供DHCPTFTPHTTPDvsftpd nfs)的服务,且
还需满足如下要求:
?DHCP服务器除了必须满足为pxe client分配ip地址之外,还需告知tftp所在的
位置(即告诉pxelinux.0的文件位置)
?TFTP服务器则为pxe client 提供bootloader kernel 等重要文件下载服务
?使用HTTPD/VSFTPD/NFS服务器提供pxe client所需程序及软件来源(共享
源)

三、搭建基本服务

3.1 搭建DHCP服务

yum -y install dhcp

安装后, DHCP 服务的主配置文件为 /etc/dhcp/dhcp.conf ,我们可以修改配置文件以实现为客户端分配网络参数。
copy样例文件到/etc/dhcp/dhcp.conf
[root@zcfwork ~]# cd /usr/share/doc/dhcp-4.2.5/
[root@zcfwork dhcp-4.2.5]# ll
total 8
-rw-r--r--. 1 root root 3306 Jun  9  2021 dhcpd6.conf.example
-rw-r--r--. 1 root root 3262 Nov 19  2012 dhcpd.conf.example
drwxr-xr-x. 2 root root   70 Sep  7 20:38 ldap
[root@zcfwork dhcp-4.2.5]# cp dhcpd.conf.example /etc/dhcp/dhcpd.conf
修改配置文件 :? vim /etc/dhcp/dhcpd.conf
ddns-update-style interim;      #设置DHCP服务器模式
ignore client-updates;          #禁止客户端更新
log-facility local7;            #使用rsyslog记录日志
subnet 192.168.150.0 netmask 255.255.255.0 {
  range 192.168.150.3 192.168.150.120;             #地址池
  option subnet-mask 255.255.255.0;                 #子网掩码
  option domain-name-servers 192.168.150.2;        #设置DNS
  option domain-name "contoso.com";                   #域名搜索列表
  option routers 192.168.150.2;   #网关地址     
  default-lease-time 600;    #默认租约期限(单位秒)
  max-lease-time 7200;    #最大租约期限(单位秒)
  next-server 192.168.150.132;    #设置DNS
  filename "pxelinux.0";    #在next-server上需要下载的文件
}

重启服务
systemctl restart dhcpd
检测端口信息
[root@zcfwork ~]# netstat -lntup | grep dhcpd
udp        0      0 0.0.0.0:67              0.0.0.0:*                           4398/dhcpd

3.2?搭建TFTP服务

TFTP 服务为客户端提供一种简单的文件共享,非常适用于传输小且简单的 PXE 启动文件。
yum install?xinetd tftp tftp-server
vim?/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                 = no
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}
disable = no #把原来的yes改成no
改完重启服务
systemctl restart xinetd
查看进程及端口如下
[root@zcfwork ~]# netstat -a |grep tftp
udp        0      0 0.0.0.0:tftp            0.0.0.0:*
[root@zcfwork ~]# netstat -atunp |grep :69
udp        0      0 0.0.0.0:69              0.0.0.0:*                           4409/xinetd

3.2.1 获取pxelinux.0系统

安装syslinux并拷贝pxelinux.0文件到TFTP服务器
yum install syslinux -y #通过安装syslinux获取引导文件
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
将镜像放在光驱并运行如下命令,从光盘中复制启动镜像文件和启动配置文件到TFTP共享目录
mount -o loop -t iso9660 /dev/sr0 /media
将镜像中的相关文件复制到tftp根目录
cp -a /media/isolinux/* /var/lib/tftpboot/
cd /var/lib/tftpboot/
mkdir pxelinux.cfg
cd pxelinux.cfg
创建如下default文件
[root@zcfwork pxelinux.cfg]# vim default
default vesamenu.c32
timeout 60
display boot.msg menu backgroud splash2.png menu title beautiful girl
label centos7 64 <Auto Installation>
  menu label Install CentOS Linux ^7 x86_64 <Auto>
  kernel vmlinuz
  append initrd=initrd.img inst.stage2=ftp://192.168.150.132/pub
  inst.repo=ftp://192.168.150.132/pub
  inst.ks=ftp://192.168.150.132/ks.cfg
label centos7 64 <Manual Installation>
  menu label Install CentOS Linux ^7 x86_64 <Manual>
  kernel vmlinuz
  append initrd=initrd.img inst.stage2=ftp://192.168.150.132/pub
label local
  menu default
  menu label Boot from ^local drive
  localboot 0xffff
menu end

最重要的是将inst.stage2换成inst.repo

3.2.2?搭建FTP服务

yum install vsftpd -y

重启服务

systemctl restart vsftpd

将镜像挂载到ftp的发布目录,便于使用ftp访问

umount /media

mount /dev/sr0 /var/ftp/pub
[root@zcfwork pxelinux.cfg]# cd /var/ftp/pub/
[root@zcfwork pub]# ll
total 696
-rw-r--r--.  3 root root     14 Oct 29  2020 CentOS_BuildTag
drwxr-xr-x.  3 root root   2048 Oct 26  2020 EFI
-rw-rw-r--. 21 root root    227 Aug 30  2017 EULA
-rw-rw-r--. 21 root root  18009 Dec  9  2015 GPL
drwxr-xr-x.  3 root root   2048 Oct 26  2020 images
drwxr-xr-x.  2 root root   2048 Nov  2  2020 isolinux
drwxr-xr-x.  2 root root   2048 Oct 26  2020 LiveOS
drwxr-xr-x.  2 root root 673792 Nov  4  2020 Packages
drwxr-xr-x.  2 root root   4096 Nov  4  2020 repodata
-rw-rw-r--. 21 root root   1690 Dec  9  2015 RPM-GPG-KEY-CentOS-7
-rw-rw-r--. 21 root root   1690 Dec  9  2015 RPM-GPG-KEY-CentOS-Testing-7
-r--r--r--.  1 root root   2883 Nov  4  2020 TRANS.TBL

四、关闭禁用防火墙并禁用SElinux

systemctl stop firewalld.service

systemctl disable firewalld.service

[root@zcfwork pub]# getenforce
Permissive
[root@zcfwork pub]# setenforce 0

禁用SElinux

[root@zcfwork pub]# vim /etc/sysconfig/selinux

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

修改为 :SELINUX=disabled

五、Kickstart文件的生成

使用yum安装system-config-kickstart

yum install system-config-kickstart
[root@zcfwork pub]#  system-config-kickstart

?

?

?也可以在/root目录下看到应答文件

[root@zcfwork ~]# ll
total 8
-rw-------. 1 root root 1587 Jul 19 22:48 anaconda-ks.cfg
-rw-r--r--. 1 root root  919 Sep  8 09:39 ks.cfg

?在末尾添加这几行:

[root@zcfwork ~]# tail ks.cfg
clearpart --all --initlabel
# Disk partitioning information
part /boot --fstype="xfs" --size=300
part swap --fstype="swap" --size=1000
part / --fstype="xfs" --grow --size=1
%packages
@base
net-tools
@core
%end
检查有无语法错误:
ksvalidator ks.cfg
ks应答文件移动到/var/ftp下,然后重启服务
mv ks.cfg? /var/ftp

?systemctl restart vsftpd

六、?创建虚拟机进行测试

?

光标移动到最后,然后回车,按住shift+号移动到第一个位置,如下:?

?F10 保存退出

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-09-13 11:56:34  更:2022-09-13 11:58:01 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 9:52:54-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码