步骤 | 操作 | 注释 |
---|---|---|
(1) | 将u盘清空中 | |
(2) | df | ##查看挂载设备,其中/dev/sdb代表u盘 |
(3) | dd if=/root/Desktop/rhel-server-7.3-x86_64-dvd.iso of=/dev/sdb | ##将镜像文件传输到u盘里面 |
(4) | watch -n 1 “iostat -d /dev/sdb” | ## 查看传输的状态 |
步骤 | 操作 | 注释 |
---|---|---|
(1) | df | ##查看挂载设备,其中/dev/sdb代表u盘 |
(2) | umount /dev/sdb1 | ## 卸载U盘下的分区 |
(3) | fdisk /dev/sdb | ##进入u盘管理 |
(4) | d 1>>>d 2>>>d n | ##删除u盘的所有分区 |
(5) | n 1 空格(即默认)>>>wq | ## 创建分区占用所有的空间,并保存 |
(6) | partprobe | ##同步分区表 |
(7) | mkfs.vfat /dev/sdb1 | ##格式化分区(vfat:linux,windows通用,ext4:linux常用) |
自动安装脚本:
(1)自动安装脚本就是在一个脚本当中写入服务器安装系统的一些数据和命令;当调用这个脚本的时候就会自动给服务器装系统;
(2)如果企业中同时有多台服务器需要安装系统,一个一个手动安装比较麻烦,采用自动安装脚本让服务器自动安装系统;自动安装脚本:让系统安装的过程中也变为自动.自动安装一切,不需要手动操作软件.
3.2.1 kickstart:
kickstart是一种无人值守的安装方式,他的工作原理就是在安装的过程中记录人工干预填写的各种参数,并会生成一个名为ks.cfg的文件;如果在自动化安装的过程中出现需要填写参数的情况,安装程序就会去找ks.cfg程序
如果找到合适的参数,就采用所找到的参数,若找不到则需要人工进行填写;所以如果ks.cfg文件中涵盖了所有需要填写的参数,那么安装者完全可以只需告诉安装程序从何处下载ks.cfg文件,然后就可以等待安装完毕,然后会根据ks.cfg文件设置重启/安装系统,最后结束安装.
3.2.2实验步骤
步骤 | 操作 | 注释 |
---|---|---|
1. 配置yum源 | ||
1.1本地镜像挂载(1) | mkdir /var/www/html/rhel7.3 | ## 创建挂载目录 |
(2) | mount root/Desktop/iso/rhel-server-7.3-x86_64-dvd.iso /var/www/html/rhel7.3 | 挂载镜像 |
1.2yum源搭建 (1) | cd /etc/yum.repos.d | ## 进入/etc/yum.repos.d文件夹下 |
(2) | rm -rf * | ##将多余的.repo文件清除 |
(3) | vim yum.repo | ## 建立新的.repo文件 |
(4) | [rhel7.3]>>>name=rhel7.3>>>baseurl=file:///var/www/html/rhel7.3>>>gpgcheck=0 | ## 编辑 |
1.3验证yum源 | yum repolist | ##yum源搭载成功 |
2.使用http共享yum源 | ||
(1) | yum whatprovides httpd | ##查找httpd的安装包 |
(2) | yum install httpd-2.4.6-45.el7.x86_ 64 | ##yum安装httpd |
(3) | systemctl start httpd | ## 开启http服务 |
(4) | systemctl enable httpd | ##自启动http服务 |
(5) | systemctl stop firewalld | |
(6) | systemctl disable firewalld | ## 开机不启动防火墙 |
(7) | mount root/Desktop/iso/rhel-server-7.3-x86_64-dvd.iso /var/www/html/rhel7.3 | 挂载镜像 |
(8) | df | ##在浏览器中查看yum是否分享成功 |
3.DHCP服务器的搭建 | ||
(1) | rpm -ivh dhcp-4.2.5-27.el7.x86_64.rpm | ## 进行安装dhcp |
(2) | cd /etc/dhcp/ | ## 切换到配置目录并且查看目录下面的文件 |
(3) | ls | ## 若没有安装dhcp,则没有(dhcpd6.conf;dhcpd.conf) |
(4) | vim dhcpd.conf | ##查看dhcp配置文件 |
(5) | cp /usr/share/doc/dhcp*/dhcpd.conf.example dhcpd.conf | ##给配置文件里面放东西 |
(6) | vim dhcpd.conf | ##查看dhcp配置文件 |
(7) | ①删掉36行以后的② 删掉27 28行改域名westos.org 改服务dns为114.114.114.114;改下面的网络位 172.25.254.0 改子网掩码 255.255.255.0;改动态分配的范围172.25.254.19 172.25.254.60;改网关172.25.254.250; | ##退出保存 |
(8) | systemctl restart dhcpd | ##重启服务 |
(9) | systemctl status dhcpd | ## 查看dhcp服务的状态 |
4. 自动安装脚本的工具 | ||
(1) | yum search system-config-kickstart | ##寻找生成自动安装脚本的工具 |
(2) | yum install system-config-kickstart -y | ## 安装该工具 |
(3) | system-config-kickstart | ##配置相关的参数 |
(4)(浏览器) | 172.25.254.19/ks.cfg | ##看有没有共享的ks.cfg文件 |
(5) (浏览器) | 172.25.254.19/rhel7.3 | ##看有没有共享的yum源软件仓库 |
(6) 测试 | virt-manager | ## 打开虚拟机管理 |
小太阳新建;引用镜像;安装界面(Tab)ks=http://172.25.254.19/ks.cfg | ##能正常启动,则自动化脚本生效 |
Result!
步骤1:配置yum源
步骤2.使用http共享yum源
步骤3.DHCP服务器的搭建
(1)系统部署:通过传统的方式安装和部署计算机时,都需要人工干预的方式完成安装。如果需要部署大量的类似功能的工作站或服务器,则需要耗费大量的时间。同时传统的安装方式,每台计算机都需要光驱设备及安装光盘等介质,会额外增加部署成本。因此,许多系统管理员都希望能够通过一种网络化的无人值守的自动安装方式将操作系统部署到目标计算机中。
(2)pxe启动服务:计算机的操作系统也是安装在磁盘里面,磁盘由磁道和扇区构成
磁盘分区:是在系统里面分,由系统管理,但是系统也在磁盘里面;端点磁头默认的位置:0磁道默认最开始读的那个位置;磁盘的引导程序bootloader促使0磁头读取c盘,启动系统。在零磁道上,有一个程序,叫做pxelinux;当启动电脑时,pxelinux程序会引导磁头去读取启动信息,也叫做pxe启动服务;
(3)PXE协议(在部署服务器过程中起着至关重要的作用,它涉及到tftp服务):PXE 是由 Intel 设计的协议,计算机可以通过 PXE 协议从网络引导系统启动,PXE 协议在启动过程分为 client 和 server 端;PXE 协议运行过程主要解决两个问题:首先解决 IP 地址的问题,然后解决如何传输操作系统启动文件和安装文件的问题。
a.第一个问题,可以通过在服务端搭建DHCP服务器解决,DHCP 服务器主要用于动态分配 IP 地址给客户端;PXE 环境下,DHCP 服务器在给客户端一个ip地址的同时需要额外加载 PXE 的相关配置给客户端,这样客户端才会知道自己下一步要干嘛.
b.针对第二个问题,在启动初期因为 PXE客户端中有相应的 TFTP 客户端,可以通过 TFTP 协议到 TFTP 服务器(服务端)中下载相关文件启动计算机;后期在安装过程中,则通过 FTP 或 NFS 协议提供大量的操作系统安装文件的下载.
PXE是预启动执行环境,全名是Pre-boot Execution Environment;通过网络接口启动计算机,不需要依赖本地存储设备或本地已安装的操作系统;由Intel和Systemsoft公司于1999年9月20日公布的技术,采用C/S的工作模式;PXE客户端会调用网际协议(IP)、用户数据协议(UDP)、动态主机分配协议(DHCP)、小型文件传输协议(TFTP)等网络协议.
(4)TFTP与FTP
***简单文件传输协议(TFTP)***:主要用于为客户机与服务器之间进行简单文件传输的协议;在 PXE 早期启动过程中,主要通过 TFTP 协议传输”pxelinux.0”
***文件传输协议(FTP)***,适用于大量文件传输的情形,在后期安装过程,主要通过 FTP 协议传输 Linux 操作系统的安装包;FTP 服务主要是下载 ks.cfg 文件和操作系统文件的,也可以用 HTTP 或 NFS 来代替
(5)HTTP协议:Hyper Text Transfer Protocol(超文本传输协议)的缩写;是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议;HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。
HTTP协议工作于客户端-服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求;服务器根据接收到的请求后,向客户端发送响应信息.
步骤 | 操作 | 注释 |
---|---|---|
1. 配置yum源 | ||
1.1本地镜像挂载(1) | mkdir /var/www/html/rhel7.3 | ## 创建挂载目录 |
(2) | mount root/Desktop/iso/rhel-server-7.3-x86_64-dvd.iso /var/www/html/rhel7.3 | 挂载镜像 |
1.2yum源搭建 (1) | cd /etc/yum.repos.d | ## 进入/etc/yum.repos.d文件夹下 |
(2) | rm -rf * | ##将多余的.repo文件清除 |
(3) | vim yum.repo | ## 建立新的.repo文件 |
(4) | [rhel7.3]>>>name=rhel7.3>>>baseurl=file:///var/www/html/rhel7.3>>>gpgcheck=0 | ## 编辑 |
1.3验证yum源 | yum repolist | ##yum源搭载成功 |
2.使用http共享yum源 | ||
(1) | yum whatprovides httpd | ##查找httpd的安装包 |
(2) | yum install httpd-2.4.6-45.el7.x86_ 64 | ##yum安装httpd |
(3) | systemctl start httpd | ## 开启http服务 |
(4) | systemctl enable httpd | ##自启动http服务 |
(5) | systemctl stop firewalld | |
(6) | systemctl disable firewalld | ## 开机不启动防火墙 |
(7) | mount root/Desktop/iso/rhel-server-7.3-x86_64-dvd.iso /var/www/html/rhel7.3 | 挂载镜像 |
(8) | df | ##在浏览器中查看yum是否分享成功 |
3.DHCP服务器的搭建 | ||
(1) | rpm -ivh dhcp-4.2.5-27.el7.x86_64.rpm | ## 进行安装dhcp |
(2) | cd /etc/dhcp/ | ## 切换到配置目录并且查看目录下面的文件 |
(3) | ls | ## 若没有安装dhcp,则没有(dhcpd6.conf;dhcpd.conf) |
(4) | vim dhcpd.conf | ##查看dhcp配置文件 |
(5) | cp /usr/share/doc/dhcp*/dhcpd.conf.example dhcpd.conf | ##给配置文件里面放东西 |
(6) | vim dhcpd.conf | ##查看dhcp配置文件 |
(7) | ①删掉36行以后的② 删掉27 28行改域名westos.org 改服务dns为114.114.114.114;改下面的网络位 172.25.254.0 改子网掩码 255.255.255.0;改动态分配的范围172.25.254.19 172.25.254.60;改网关172.25.254.250; | ##退出保存 |
(8) | systemctl restart dhcpd | ##重启服务 |
(9) | systemctl status dhcpd | ## 查看dhcp服务的状态 |
4.设置主机永久共享yum源给其它服务器 | ||
(1) | vim /etc/rc.d/rc.local | ##编辑永久共享yum源仓库软件的文件 |
(2) | mount root/Desktop/iso/rhel-server-7.3-x86_64-dvd.iso /var/www/html/rhel7.3 | 设置永久共享yum源,将镜像挂载在共享目录下,写入/etc/rc.d/rc.local |
(3) | chmod +x /etc/rc.d/rc.local | ##给永久共享文件加权限 |
(4) | sh /etc/rc.d/rc.local | ##查看是否正确 |
5.验证yum源 | ||
(1)(浏览器) | 172.25.254.19/ks.cfg | ##看有没有共享的ks.cfg文件 |
(2) (浏览器) | 172.25.254.19/rhel7.3 | ##看有没有共享的yum源软件仓库 |
6. 开启tftp服务 | ||
(1) | yum search tftp | ##寻找tftp服务 |
(2) | yum install tftp-server.x86_64 -y | ##安装tftp服务 |
(3) | systemctl status tftp | ## 查看tftp是否开启 |
(4) | chkconfig --list | ## 查看pxe程序的状态 |
(5) | yum search xinetd | ##查找xinted |
(6) | yum install xinetd.x86_64 -y | ##安装xinted |
(7) | vim /etc/xinetd.d/tftp | ## 编辑该配置文件将tftp服务的disable=yes状态改为disable=no状态 |
(8) | systemctl restart xinetd.service | ##重启服务,生效 |
(9) | chkconfig --list | ## 查看pxe这个程序的状态 |
(10) | systemctl start tftp | ##启动该服务 |
(11) | systemctl status tftp | ##查看状态 |
7.引入 pxe程序 | ##initrd.img 文件系统镜像 | |
vmlinuz 内核镜像文件 | ||
(1) | rpm -ql tftp-server | ##找到tftp服务的配置目录 |
(2) | cd /var/lib/tftpboot/ | ##进入tftp服务的配置目录 |
(3) | cp /var/www/html/rhel7.3/isolinux/* /var/lib/tftpboot/ | ##从iso中拷贝内核镜像和文件系统镜像到tftp服务的配置目录下,让desktop主机在pxe程序的引导下知道自己的内核等安装信息 |
(4) | cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ | ##拷贝pxelinux.0文件到tftp根目录,该操作的目是让desktop主机得到ip地址的同时也会有pxe程序引导它下一步要去哪里 |
(5) | mkdir /var/lib/tftpboot/pxelinux.cfg | ##准备默认的菜单配置文件,创建这个目录是因为pxelinux.0默认其为配置目录,创建pxelinux.cfg目录,固定目录名称 |
(6) | cd /var/lib/tftpboot/ | ##切换到tftp的配置目录下面 |
(7) | cp isolinux.cfg pxelinux.cfg/default | ##default文件,必须为这个名称,创建一个pxe程序默认的读取文件default,其内容与isolinux.cfg一样,因此直接复制 |
(8) | rpm -ql syslinux | grep pxelinux.0 |
(9) | vim /etc/dhcpd.conf | ## 继续编辑dhcp的配置文件(让desktop逐渐的得到ip的同时获得172.25.254.219与pxelinux.0) |
(10) | next-server 172.25.254.219;>>>filename “pxelinux.0”; | ## |
(11) | systemctl restart dhcpd | ##重启dhcp服务,使设置生效 |
(12) | vim pxelinux.cfg/default | ##编辑default文件,让desktop主机自动装系统时去读取包含其安装参数的ks.cfg文件 |
(13)(vim修改) | append initrd=initrd.img repo=http://172.25.254.219/rhel7.3 ks=http://172.25.254.219/ks.cfg | ## |
8.测试 | ## | |
(1) | virt-manager>>>desktop>>>小灯泡>>>Boot Options>>>NIC:01:48:e2(网卡方式)>>>reboot | ## 网卡方式启动desktop |
9.其他修改 | ||
(1) | cd /var/lib/tftpboot/pxelinux.cfg | ##切换到系统安装说明文件的目录下 |
(2) | vim default | ##打开配置文件 |
(3.1)(vim修改) | timeout 20 | ## 时间改为2s |
(3.2)(vim修改) | menu label Test this ^media &install Red Hat Enterprise 7.3>>> menu default | ##默认标题选择第二个 |