Hello,大家好啊!继我们之前关于DHCP服务、TFTP服务、HTTP服务的搭建以及麒麟服务器操作系统自动化安装应答文件的制作的讨论之后,今天我们将在这些基础上进一步探讨如何使用PXE(Preboot Execution Environment)技术来安装部署麒麟服务器操作系统。PXE安装是一种广泛用于网络启动和无盘或自动化安装操作系统的方法,特别适合在多台机器上快速统一部署系统。
客户机进行PXE启动
启动客户机,进入其BIOS设置。
更改启动顺序,确保网络启动(PXE)优先。
保存并退出,客户机将通过网络启动,并自动从TFTP服务器加载pxelinux.0和相关文件,根据DHCP中指定的配置启动和安装麒麟操作系统。
1.查看系统信息
[root@pdsyw ~]# cat /etc/os-release
[root@pdsyw ~]# uname -a
2.安装服务
[root@pdsyw ~]# dnf -y install dhcp tftp-server httpd syslinux-nonlinux
3.启动http及tftp服务
[root@pdsyw ~]# systemctl enable httpd tftp –now
[root@pdsyw ~]# systemctl status httpd tftp
4.编辑dhcp服务
[root@pdsyw ~]# cp
/usr/share/doc/dhcp-server/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp:是否覆盖’/etc/dhcp/dhcpd.conf’? y
[root@pdsyw ~]#
[root@pdsyw ~]# vim /etc/dhcp/dhcpd.conf [root@pdsyw ~]#
[root@pdsyw ~]# cat /etc/dhcp/dhcpd.conf option domain-name “pdsyw.cn”;
option domain-name-servers 223.5.5.5;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 192.168.80.0 netmask 255.255.255.0 {
range 192.168.80.80 192.168.80.90;
option routers 192.168.80.254;
next-server 192.168.80.111;
filename “pxelinux.0”;
}
[root@pdsyw ~]#
5.启动dhcp服务
[root@pdsyw ~]# systemctl restart dhcpd
[root@pdsyw ~]# systemctl enable dhcpd
[root@pdsyw ~]# systemctl status dhcpd
6.创建镜像目录
[root@pdsyw ~]# cd /var/www/html/
[root@pdsyw html]# mkdir kylin/sp3/os/x86_64 -p
[root@pdsyw html]# tree
7.拷贝麒麟镜像
[root@pdsyw ~]# ll
总用量 4471640
drwxr-xr-x 2 root root 4096 4月 16 19:11 公共
drwxr-xr-x 2 root root 4096 4月 16 19:11 模板
drwxr-xr-x 2 root root 4096 4月 16 19:11 视频
drwxr-xr-x 2 root root 4096 4月 16 19:11 图片
drwxr-xr-x 2 root root 4096 4月 16 19:11 文档
drwxr-xr-x 2 root root 4096 4月 16 19:11 下载
drwxr-xr-x 2 root root 4096 4月 16 19:11 音乐
drwxr-xr-x 2 root root 4096 4月 16 19:11 桌面
-rw——- 1 root root 3243 4月 16 19:06 anaconda-ks.cfg
-rw-r–r– 1 root root 3660 4月 16 19:07 initial-setup-ks.cfg
-rw-r–r– 1 root root 4578914304 4月 16 19:56
Kylin-Server-V10-SP3-General-Release-2303-X86_64.iso
[root@pdsyw ~]# mount
Kylin-Server-V10-SP3-General-Release-2303-X86_64.iso /mnt
mount: /mnt: WARNING: source write-protected, mounted read-only.
[root@pdsyw ~]#
[root@pdsyw ~]# cp -ra /mnt/.
/var/www/html/kylin/sp3/os/x86_64/
8.拷贝编辑好的应答文件
[root@pdsyw ~]# mkdir /var/www/html/ks
[root@pdsyw ~]# cp kylinsp3.cfg /var/www/html/ks/
9.设置权限
[root@pdsyw ~]# chmod 755 /var/www/html/ks/kylinsp3.cfg
10.拷贝所需文件
[root@pdsyw ~]# mkdir /var/lib/tftpboot/kylinsp3 [root@pdsyw ~]#
[root@pdsyw ~]# cp /var/www/html/kylin/sp3/os/x86_64/isolinux/vmlinuz /var/lib/tftpboot/kylinsp3/
[root@pdsyw ~]#
[root@pdsyw ~]# cp /var/www/html/kylin/sp3/os/x86_64/isolinux/initrd.img /var/lib/tftpboot/kylinsp3/
[root@pdsyw ~]#
[root@pdsyw ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@pdsyw ~]# cp /usr/share/syslinux/menu.c32 /var/lib/tftpboot/
[root@pdsyw ~]#
[root@pdsyw ~]# cp /var/www/html/kylin/sp3/os/x86_64/isolinux/ldlinux.c32 /var/lib/tftpboot/
[root@pdsyw ~]# cp /var/www/html/kylin/sp3/os/x86_64/isolinux/libcom32.c32 /var/lib/tftpboot/
[root@pdsyw ~]# cp /var/www/html/kylin/sp3/os/x86_64/isolinux/libutil.c32 /var/lib/tftpboot/
[root@pdsyw ~]#
vmlinuz:
vmlinuz 是 Linux 内核的压缩版本。这是一个可执行的二进制文件,包含了操作系统的核心功能,如管理硬件设备、系统调用处理、文件系统管理等。
文件名中的 “vml” 可能代表虚拟内存(Virtual Memory),”inux” 则来自 Linux,而 “z” 则表示它是压缩过的。
在启动过程中,bootloader(如 GRUB)会加载这个文件到内存中,并从这个内核启动操作系统。
initrd.img:
initrd 代表初始内存盘(initial ramdisk),是一个临时的根文件系统,加载在系统启动时内存中。initrd.img 是这个文件系统的映像。
它包含了一些必要的驱动程序和脚本,用来挂载真正的根文件系统,让内核可以访问硬盘上的数据和其他必需的资源。
initrd 在内核能够访问主存储设备之前提供了一个暂时的工作环境。
11.创建grub菜单目录
[root@pdsyw ~]# mkdir /var/lib/tftpboot/pxelinux.cfg
[root@pdsyw ~]#
[root@pdsyw ~]# cp /var/www/html/kylin/sp3/os/x86_64/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
[root@pdsyw ~]#
12.编辑grub菜单
[root@pdsyw ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
[root@pdsyw ~]#
[root@pdsyw ~]# cat /var/lib/tftpboot/pxelinux.cfg/default
default menu.c32
timeout 600
menu title PDSYW Kylin Linux Advanced Server V10
label linux
menu label ^Install Kylin Linux Advanced Server V10
kernel kylinsp3/vmlinuz
append initrd=kylinsp3/initrd.img ks=http://192.168.80.111/ks/kylinsp3.cfg
label rescue
menu label ^Rescue a Kylin Linux Advanced Server system
kernel kylinsp3/vmlinuz
append initrd=kylinsp3/initrd.img inst.repo=http://192.168.80.111/kylin/sp3/os/x86_64 rescue
label local
menu default
menu label Boot from ^local drive
localboot 0xffff
menu end
[root@pdsyw ~]#
13.重启服务
[root@pdsyw ~]# systemctl restart httpd
[root@pdsyw ~]#
[root@pdsyw ~]# systemctl restart tftp
[root@pdsyw ~]#
[root@pdsyw ~]# systemctl status tftp httpd
14.放行防火墙
[root@pdsyw ~]# firewall-cmd –add-service=http –permanent
success
[root@pdsyw ~]# firewall-cmd –add-service=tftp –permanent
success
[root@pdsyw ~]# firewall-cmd –add-service=dhcp –permanent
success
[root@pdsyw ~]# firewall-cmd –reload
success
[root@pdsyw ~]# firewall-cmd –list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: ens160
sources:
services: cockpit dhcp dhcpv6-client http mdns ssh tftp
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
[root@pdsyw ~]#
15.系统安装
通过以上步骤,你可以利用PXE技术在一台或多台机器上远程、自动化地安装麒麟服务器操作系统。这种方法极大地简化了大规模部署和管理的复杂性,特别适合企业和数据中心环境。希望这篇文章对你有所帮助,如果你觉得有用,请分享和转发。同时,别忘了点个关注和在看,以便未来获取更多有用的技术信息和解决方案。感谢大家的阅读,我们下次再见!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至2705686032@qq.com 举报,一经查实,本站将立刻删除。原文转载: 原文出处: