下面是详细的攻略过程,包括了PXE和Kickstart等的配置及使用方法:
一、准备工作
- 一台装有VMware虚拟机的物理机
- 一张CentOS 7的光盘或ISO镜像文件
- 一台可以上网的可以安装DHCP, TFTP和HTTP服务的机器
- 一份包含了Kickstart配置文件和安装程序的软件包
二、配置DHCP服务
在可以上网的机器上安装DHCP服务,在/etc/dhcp/dhcpd.conf中添加以下内容:
subnet 10.0.2.0 netmask 255.255.255.0 {
option routers 10.0.2.254;
option domain-name-servers 10.0.2.254;
option subnet-mask 255.255.255.0;
range dynamic-bootp 10.0.2.100 10.0.2.200;
filename "pxelinux.0";
next-server 10.0.2.254;
}
其中,filename
指定了网络启动时使用的启动程序,对应pxelinux.0
,next-server
指定了TFTP服务的IP地址,这里假设为10.0.2.254。然后重启DHCP服务。
三、配置TFTP服务
在可以上网的机器上安装TFTP服务并创建TFTP根目录,然后将CentOS 7光盘或ISO镜像文件拷贝到该目录下,以便后续使用。在TFTP根目录下创建一个名为pxelinux.cfg
的目录,并在该目录下创建一个名为default
的文件,文件内容为:
default menu.c32
prompt 0
timeout 300
menu title CentOS 7 Kickstart Installation
menu tabmsg Press tab for options.
label linux
menu label ^Install CentOS 7
kernel vmlinuz
append initrd=initrd.img inst.ks=http://10.0.2.1/ks.cfg ksdevice=eth0 ip=dhcp
其中,kernel
和initrd
分别指明了Linux内核和initrd文件的名字,append
指明了启动时的内核参数,ks.cfg
为Kickstart配置文件的名字,放在HTTP服务器的根目录下,并且使用该机器作为HTTP服务器(这里假设该机器的IP地址是10.0.2.1),inst.ks=http://10.0.2.1/ks.cfg
表示自动化安装的Kickstart文件。
四、配置HTTP服务
在可以上网的机器上安装HTTP服务,将Kickstart配置文件保存在HTTP服务的根目录下,例如/var/www/html/ks.cfg
。
五、启动虚拟机
在VMware虚拟机管理器中选中目标虚拟机,点击打开虚拟机设置,选择网络适配器,将网络连接设置为桥接模式,点击确定保存设置。然后开启虚拟机,在启动过程中按F12键选择网络启动选项,稍等片刻,PXE网络启动就会自动执行Kickstart自动化安装过程。
六、其他细节
- 在
httpd.conf
中启用index.html
文件支持(默认情况下是未启用的):DirectoryIndex index.html
- 在CentOS 7中,如果没有指定root密码,那么自动化安装过程默认不创建root用户,只创建一个sudoer用户,可以使用该用户登录并使用
sudo
命令获得root权限。
七、示例说明
以下是一个Kickstart配置文件ks.cfg的示例:
text
skipx
install
url --url http://mirror.centos.org/centos/7/os/x86_64/
lang en_US.UTF-8
keyboard us
timezone UTC
rootpw mypassword
network --bootproto=dhcp --device=eth0
firewall --disabled
selinux --disabled
bootloader --location=mbr --boot-drive=sda
reboot
%packages
@core
%end
示例说明:
- 使用text模式进行自动化安装
- 跳过图形安装界面
- 安装CentOS 7的标准软件源
- 配置基本的系统语言、键盘、时区和root密码
- 使用DHCP自动配置eth0网络设备
- 禁用防火墙和SELinux
- 安装引导程序到主引导记录(mbr)
- 自动重启后生效,完成CentOS 7的安装
- 安装core组件集
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:VMware实现PXE+kickstart无人值守安装Centos7系统的详细过程 - Python技术站