采用centos7进行服务器无人值守安装(具体实验流程及操作步骤)
一、前言
为啥要用无人值守安装系统?很简单的答案,就是方便日常工作。
常规装系统的办法有哪些?
光盘安装系统:一个服务器DVD内置光驱百千块,百台服务器都配光驱就浪费了,因为一台服务器也就 开始装系统能用的上,以后用的机会屈指可数。
U盘安装系统:还是同样的问题,要一台一台服务器插U盘。
网络安装系统(ftp,http,nfs) :只要服务器能联网就可以装系统了,但还是需要一台台服务器去敲键盘点 鼠标。
无人值守安装系统好处都有啥?
对于个人:装系统大部分时间都浪费于下一步、下一步等操作,浪费了宝贵的时间。
对于行业:自打若干年前Red Hat推出了Kickstart,此后我们搞服务器的运维顿觉身价倍增。不再需要 刻了光盘一台一台地安装Linux,只要搞定PXE、DHCP、TFTP,还有那满屏眼花缭乱不知所云的Kickstart脚 本,瞬间安装上百台服务器。
二、PXE
PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网 络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统。
在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件 设置,从而引导预先安装在服务器中的终端操作系统。
PXE可以引导多种操作系统,如:Windows95 / 98 / 2000 / windows2003 / windows2008 / winXP / win7 / win8,Linux系列系统等。
严格来说,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上下载所需 的文件了。
PXE工作流程
1、PXE Client向DHCP发送请求
当计算机开机时第一次登录网络的时候,发现本机上没有任何IP地址设定。PXE Client会从自己的PXE网 卡启动,通过PXE BootROM(自启动芯片)会以UDP(简单用户数据报协议)发送一个广播请求,源IP地址是 0.0.0.0,发送DHCP discover发现信息来寻找DHCP服务器,即向目标IP地址是255.255.255.255发送特定的 广播信息。 网络上每一台安装了TCP/IP协议的主机都会接收到这个广播信息,但只有DHCP服务器才会做出响应。
2、DHCP服务器提供信息
DHCP服务器收到客户端的请求,验证是否来至合法的PXE Client的请求,验证通过它将给客户端一 个“提供”响应,这个“提供”响应中包含了为客户端分配的IP地址和其他设置的DHCP offer信息。 DHCP offer提供信息包括pxelinux启动程序(TFTP)位置,以及PXE配置文件所在位置(该文件一般是放在 一台TFTP服务器上)。
3、DHCP客户机接收IP和服务器的互动
DHCP客户端接受到DHCP offer提供信息之后,选择第一个接收到的提供信息,然后以广播的方式回答 一个DHCP request请求信息,该信息包含向它所选定的DHCP服务器请求IP地址的内容。 当DHCP服务器收到DHCP客户端回答的DHCP request请求信息之后,便向DHCP客户端发送一个包含 它所提供的IP地址和其他设置的DHCP ack确认信息,告诉DHCP客户端可以使用它提供的IP地址。 然后,DHCP客户机便将其TCP/IP协议与网卡绑定。 另外,除了DHCP客户机选中的服务器外,其他的DHCP服务器将收回曾经提供的IP地址。这是第一次初 始化网络。
4、PXE客户端请求下载启动文件
客户端收到服务器的“回应”后,会回应一个帧,以请求传送启动所需文件。这些启动文件包括: pxelinux.0、pxelinux.cfg/default、vmlinuz、initrd.img等文件。
5、Boot Server响应客户端请求并传送文件
当服务器收到客户端的请求后,他们之间之后将有更多的信息在客户端与服务器之间作应答,用以决定 启动参数。BootROM由TFTP通讯协议从Boot Server下载启动安装程序所必须的文件(pxelinux.0、 pxelinux.cfg/default)。客户端取得pxelinux.0 文件后之执行该文件,向服务器请求下载pxelinux.cfg文件。 客户端pxelinux.cfg配置文件后,请求vmlinuz文件和initrd.img文件,会根据该文件中定义的引导顺序,启 动Linux安装程序的引导内核。 pxeliunx.0:网络引导程序pxe文件 pxelinux.cfg/default:指定镜像的位置或ks文件位置 vmlinuz:引导内核 initrd.img:小型的linux操作系统,类似于windows的PE
6、请求下载自动应答文件
客户端通过pxelinux.cfg/default文件成功的引导Linux安装内核后,安装程序首先必须确定你通 过什么 安装介质来安装Linux,如果是通过网络安装(NFS, FTP, HTTP),则会在这个时候初始化网络(这是第二次初始 化网络),并定位安装源位置。 接着会读取default文件中指定的自动应答文件ks.cfg所在位置,根据该位置请求下载该文件。 PXE获取的是安装用的内核以及安装程序等,而安装程序要获取的是安装系统所需的二进制包以及配置文 件PXE模块和安装程序是相对独立的,PXE的网络配置并不能传递给安装程序,从而进行两次获取IP地址过 程,但IP地址在DHCP的租期内是一样的。
7、客户端安装操作系统
将ks.cfg文件下载回来后,通过该文件找到OS Server,并按照该文件的配置请求下载安装过程需要的软 件包。OS Server和客户端建立连接后,将开始传输软件包,客户端将开始安装操作系统。 安装完成后,将提示重新引导计算机。
三、Kickstart
Kickstart工作原理
Kickstart是一种无人值守的安装方式。它的工作原理是在安装过程中记录人工干预填写的各种参数,并生成一个名 为ks.cfg的文件。 如果在自动安装过程中出现要填写参数的情况,安装程序首先会去查找ks.cfg文件,如果找到合适的参数,就采用 所找到的参数;如果没有找到合适的参数,便会弹出对话框让安装者手工填写。 所以,如果ks.cfg文件涵盖了安装过程中所有需要填写的参数,那么安装者完全可以只告诉安装程序从何处下载 ks.cfg文件,然后就去忙自己的事情。 等安装完毕,安装程序会根据ks.cfg中的设置重启/关闭系统,并结束安装。
四、具体实验流程
选择centos7一台做实验
搭建PXE+Kickstart环境
将指定位置配置文件复制到dhcpd.conf中
编辑配置文件
设为开机自启动,并查看启动状态
取消使用本地dhcp服务奖ip地址分配给虚拟机。
修改tftp配置文件
设置为开机自启动。
查看端口是否开启
挂载centos7
浏览器上访问192.168.65.10/centos7
复制信息到var/lib/tftpboot/中
安装syslinux
复制信息
修改pxelinux.cfg/default配置文件
新建虚拟机进行测试
点击回车
在centos最小化安装后安装图形界面
安装system-config-kickstart
安装完成后,在桌面环境下,执行system-config-kickstart开始配置ks.cfg文件,使用startx进入到图形化界面。
配置kickstart,基本配置
安装方法
引导装在程序选项
分区信息
网络配置
禁用防火墙
显示配置
退出图形化界面
新建虚拟机,执行自动安装
安装之后自动重启
Ks.cfg配置文件
[code]#platform=x86, AMD64, 或 Intel EM64T #version=DEVEL # Install OS instead of upgrade install # Keyboard layouts keyboard 'us' # Root password rootpw --iscrypted $1$g5xKfGDE$ArAO6P0jZEEk93B9KYfxh/ # System language lang en_US # System authorization information auth --useshadow --passalgo=sha512 # Use graphical install graphical # SELinux configuration selinux --disabled # Do not configure the X Window System skipx # Firewall configuration firewall --disabled # Network information network --bootproto=dhcp --device=eth1 # Reboot after installation reboot # System timezone timezone Asia/Shanghai # Use network installation url --url="http://192.168.65.10/centos7" # System bootloader configuration bootloader --location=mbr # Clear the Master Boot Record zerombr # Partition clearing information clearpart --all # Disk partitioning information part /boot --fstype="xfs" --size=512 #part swap --fstype="swap" --size=1024 #part / --fstype="xfs" --grow --size=1 part pv.01 --size=1 --grow volgroup vg_centos pv.01 logvol swap --vgname=vg_centos --size=1024 --name=lv.swap logvol / --vgname=vg_centos --size=1 --grow --name=lv.root %packages --nobase @core net-tools vim gcc %end %post --interpreter=/bin/shell rm -rf /etc/yum.repos.d/* cd /etc/yum.repos.d/ echo -e "[a]">>a.repo echo -e "baseurl=http://192.168.65.10/centos7">>a.repo echo -e "gpgcheck=0">>a.repo %end
小剧场:敢想敢拼!
看-清 原创文章 27获赞 1访问量 843 关注 私信
- CentOS 7 安装vsftpd 服务器的具体操作步骤
- 已经采用了云计算的单台服务器上,是否也要安装操作系统?是否仍能对单机进行操作?
- SpringMVC——SSM框架对数据库进行操作的流程以及搭建SSM框架的步骤
- SSM框架对数据库进行操作的流程以及搭建SSM框架的步骤
- 图片怎么进行局部识别,具体的操作步骤分享
- OFBIZ 人工服务工作流配置 具体操作步骤
- android studio引用项目作为library的具体操作步骤。
- Git创建分支并推送到服务器具体步骤
- 水晶報表打包的具体操作步骤
- Asp.net页面中调用soapheader进行验证的操作步骤
- ORCL数据库中进行一些相应的操作 基本上就满足的了一般的需求 ,以下是详细步骤>>
- 华为:IP地址匹配 在路由器中,一般来说转发模块采用最大前缀匹配原则进行目的端口查找,具体如下:
- 实现磁盘满额自动邮件报警的具体思路及操作步骤
- c#创建WINDOWS服务新手实验操作步骤
- Window xp + VMWare + Win7通过VMWare Tools 进行共享(操作步骤)
- 采用opencv_cascadetrain进行训练的步骤及注意事项
- windows WAIK工具给系统集成驱动程序具体操作步骤
- windows环境下php配置memcache的具体操作步骤
- Spring Boot 项目发布到 Tomcat 服务器的操作步骤