今日目标:
DHCP
TFTP
FTP
课前准备:
1.SELinux 宽松模式
root@svr1 \~\]# getenforce Permissive 2.关闭防火墙 \[root@svr1 \~\]# systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) Docs: man:firewalld(1) \[root@svr1 \~\]# 3.yum自定义仓库 ## 一、网络装机概述 * ### 网络装机的优势: ----规模化:同时装多台主机 ----自动化:装系统,配置各种服务 ----远程实现:不需要光盘,U盘等物理安装介质 ----开机启动项: 1.本地硬盘 2.光驱设备 3.U盘 4.网络引导安装 * PXE 网络 ----PXE 预启动执行环境,可用于远程安装 ----DHCP 分配ip地址,定位引导程序 ----TFTP 提供引导程序 ----HTTP (FTP/NFS) 提供yum安装源 -----条件: 网卡芯片必须支持PXE协议 主板支持从网卡驱动  ## 二、构建装机服务 ### ① DHCP #### 1、配置DHCP dhcp动态主机配置协议,用于简化主机地址分配管理 -----主要相关参数:ip地址 子网掩码 广播地址 默认网关地址 DNS服务器地址 dhcp过程: discover--------offer-------Request--------ACK 服务器端概念: 租期:允许客户机租用ip地址,单位为秒 作用域:分配给客户机的地址网段 地址池:用于动态分配ip地址所在范围 #### 2、部署DHCP服务 ##### 1\>装包 \[root@svr1 \~\]# yum -y install dhcp \[root@svr1 \~\]# rpm -q dhcp dhcp-4.2.5-82.el7.centos.x86_64  ##### 2\>配置文件 /etc/dhcp/dhcpd.conf 模板位置:/usr/share/doc/dhcp\*/dhcpd.conf.example 追加内容方式1. \[root@svr1 doc\]# cat /usr/share/doc/dhcp\*/dhcpd.conf.example \>\> /etc/dhcp/dhcpd.conf 追加内容方式2: \[root@svr1 doc\]# vim /etc/dhcp/dhcpd.conf  修改配置文件: \[root@svr1 \~\]# vim /etc/dhcp/dhcpd.conf  **pxelinux.0 网卡引导文件** ##### 3\>启服务 \[root@svr1 doc\]# systemctl start dhcpd \[root@svr1 doc\]# systemctl status dhcpd  ### ② tftp服务 ftp:文本传输协议 21 tftp:简单的文件传输协议 69 共享的主目录: /var/lib/tftpboot ##### 1\>装包 \[root@svr1 \~\]# yum -y install tftp-server  ##### 2\>部署pxelinux.0文件 \[root@svr1 \~\]# yum provides \*/pxelinux.0 \[root@svr1 \~\]# yum -y install syslinux \[root@svr1 \~\]# rpm -ql syslinux \| grep pxelinux.0 \[root@svr1 \~\]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ \[root@svr1 \~\]# ls /var/lib/tftpboot/    ##### 3\>部署菜单文件 \[root@svr1 \~\]# df -h (查看光盘的挂载点) \[root@svr1 \~\]# ls /mnt \[root@svr1 \~\]# mkdir /var/lib/tftpboot/pxelinux.cfg \[root@svr1 \~\]# cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default    ##### 4\> 部署图形模块和背景图片 \[root@svr1 \~\]# cp /mnt/isolinux/vesamenu.c32 /mnt/isolinux/splash.png /var/lib/tftpboot   ##### 5\>部署启动内核和驱动程序 \[root@svr1 \~\]# cp /mnt/isolinux/vmlinuz /mnt/isolinux/initrd.img /var/lib/tftpboot   6\>修改default下面的文件  ### ③ 构建FTP服务 ftp:文件传输协议 端口 21 数据共享目录 /var/ftp/ #### 1\>装包启服务 \[root@svr1 \~\]# yum -y install vsftpd \[root@svr1 \~\]# systemctl restart vsftpd \[root@svr1 \~\]# systemctl status vsftpd  #### 2\>建立挂载点 \[root@svr1 \~\]# mkdir /var/ftp/centos \[root@svr1 \~\]# umount /mnt \[root@svr1 \~\]# df -h \[root@svr1 \~\]# mount /dev/cdrom /var/ftp/centos/ mount: /dev/sr0 写保护,将以只读方式挂载 \[root@svr1 \~\]# ls /var/ftp/centos/ \[root@svr1 \~\]# curl ftp://192.168.4.7/centos/    ### ④ 实现无人值守安装,生成应答文件 #### 1\>生成应答文件 \[root@svr1 \~\]# yum -y install system-config-kickstart \[root@svr1 \~\]# system-config-kickstart (不可以用远程,因为要打开图形化界面所以在本机上运行)            #### 2\>利用FTP服务共享应答文件 \[root@svr1 \~\]# ls /root anaconda-ks.cfg linux.txt named.conf tools 公共 视频 文档 音乐 ks.cfg merge.txt original-ks.cfg tools.tar.gz 模板 图片 下载 桌面 \[root@svr1 \~\]# cp /root/ks.cfg /var/ftp/ \[root@svr1 \~\]# ls /var/ftp centos ks.cfg pub \[root@svr1 \~\]# curl ftp://192.168.4.7/ks.cfg  #### 3\>修改菜单文件 \[root@svr1 \~\]# vim /var/lib/tftpboot/pxelinux.cfg/default  ## 三、检测装机步骤   就可以装机啦啦啦啦啦啦啦! 撒花撒花💞 ## 总结: 1、关闭防火墙,SELinux \[root@svr1 \~\]# systemctl stop firewalld \[root@svr1 \~\]# systemctl status firewalld \[root@svr1 \~\]#getenforce 2、重启服务 DHCP TFTP \[root@svr1 \~\]# systemctl start dhcpd \[root@svr1 \~\]# systemctl start tftpd 3、DHCP的配置文件  \[root@svr1 \~\]# systemctl restart dhcpd 4、配置六项内容  5、配置菜单文件  6、构建ftp,提供软件包 \[root@svr1 \~\]# yum -y install vsftpd \[root@svr1 \~\]# systemctl restart vsftpd \[root@svr1 \~\]# mkdir /var/ftp/centos \[root@svr1 \~\]# mount /dev/cdrom /var/ftp/centos/ mount: /dev/sr0 写保护,将以只读方式挂载 \[root@svr1 \~\]# ls /var/ftp/centos/ 7、生成应答文件 \[root@svr1 \~\]# yum -y install system-config-kickstart \[root@svr1 \~\]# system-config-kickstart \[root@svr1 \~\]# cp /root/ks.cfg /var/ftp/ 8、修改菜单文件 \[root@svr1 \~\]# vim /var/lib/tftpboot/pxelinux.cfg/default  9、实现批量装机 注意:新建的虚拟机内存最少2G,cpu 内核最少2个 