【麒麟】PXE网络自动化安装麒麟桌面系统

鹏大搞运维 2024-08-01 11:32:33

原文链接:

Hello,大家好啊!今天给大家带来一篇关于在麒麟桌面操作系统上通过PXE网络安装来配置dnsmasq的文章。PXE(预启动执行环境)允许计算机通过网络启动和安装操作系统,而dnsmasq则是一个轻量级的DNS和DHCP服务器,常用于简化PXE服务器的配置。本文将详细介绍如何在麒麟桌面操作系统上安装和配置dnsmasq以实现PXE网络安装。欢迎大家分享转发,点个关注和在看吧!

什么是PXE网络安装?

PXE(Preboot Execution Environment)是一种允许计算机通过网络启动和安装操作系统的协议。PXE网络安装非常适用于需要批量安装操作系统的环境,如学校、企业或数据中心。

什么是dnsmasq?

dnsmasq是一个轻量级的DNS、DHCP和TFTP服务器,特别适合小型网络。它可以提供DNS解析、DHCP分配和TFTP服务,是配置PXE服务器的理想选择。

1.查看系统信息

通过命令查看当前操作系统的信息和内核版本。

pdsyw@pdsyw-pc:~/桌面$ cat /etc/os-release pdsyw@pdsyw-pc:~/桌面$ uname -a

2.安装dnsmasq及nfs

安装dnsmasq和NFS服务器。

pdsyw@pdsyw-pc:~/桌面$ sudo -iroot@pdsyw-pc:~# apt install dnsmasq nfs-kernel-server -y

3.配置ip地址

这一步通常涉及设置服务器的静态IP地址,以确保网络中的其他设备可以稳定地访问它。

4.查看网卡信息

查看当前系统的网络接口信息。

root@pdsyw-pc:~# ifconfig

5.编辑配置文件

root@pdsyw-pc:~# vim /etc/dnsmasq.conf root@pdsyw-pc:~# cat /etc/dnsmasq.conf resolv-file=/etc/resolv.confcache-size=1000conf-dir=/etc/dnsmasq.dinterface=ens33bind-interfaceslisten-address=192.168.100.2dhcp-range=192.168.100.3,192.168.100.254,255.255.255.0,8hdhcp-option=3,192.168.100.2dhcp-option=6,192.168.100.2dhcp-option=28,192.168.100.255dhcp-option=42,0.0.0.0enable-tftpdhcp-match=set:Intel_x86PC,option:client-arch,0dhcp-boot=tag:Intel_x86PC,x86_64-legacy/pxelinux.0dhcp-match=set:EFI_BC,option:client-arch,7dhcp-boot=tag:EFI_BC,x86_64-efi/netbootx64.efidhcp-match=set:EFI_x86_64,option:client-arch,9dhcp-boot=tag:EFI_x86_64,x86_64-efi/netbootx64.efidhcp-match=set:EFI_Arm64,option:client-arch,11dhcp-boot=tag:EFI_Arm64,arm64-efi/netbootaa64.efidhcp-match=set:Mips,option:client-arch,12dhcp-boot=tag:Mips,vmlinuztftp-root=/pxe/tftpbootroot@pdsyw-pc:~#

配置文件内容解释:

resolv-file=/etc/resolv.conf:指定DNS解析文件。cache-size=1000:设置DNS缓存大小。conf-dir=/etc/dnsmasq.d:加载其他配置文件。interface=ens33:指定监听的网络接口。bind-interfaces:绑定网络接口。listen-address=192.168.100.2:指定服务器监听的IP地址。dhcp-range=192.168.100.3,192.168.100.254,255.255.255.0,8h:配置DHCP分配范围和租期。enable-tftp:启用TFTP服务。tftp-root=/pxe/tftpboot:指定TFTP根目录。dhcp-boot:配置不同架构的PXE引导文件。

6.编辑解析文件

root@pdsyw-pc:~# vim /etc/resolv.confroot@pdsyw-pc:~# root@pdsyw-pc:~# cat /etc/resolv.conf# This file is managed by man:systemd-resolved(8). Do not edit.## This is a dynamic resolv.conf file for connecting local clients directly to# all known uplink DNS servers. This file lists all configured search domains.## Third party programs must not access this file directly, but only through the# symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way,# replace this symlink by a static file or a different symlink.## See man:systemd-resolved.service(8) for details about the supported modes of# operation for /etc/resolv.conf.nameserver 192.168.100.2root@pdsyw-pc:~#

7.挂载iso文件

创建目录并挂载ISO文件,以便从中提取安装文件。

root@pdsyw-pc:~# mkdir /pxe/iso -proot@pdsyw-pc:~# cd /pxe/iso/root@pdsyw-pc:/pxe/iso# mkdir x86-2303root@pdsyw-pc:/pxe/iso# mount /home/pdsyw/Kylin-Desktop-V10-SP1-General-Release-2303-X86_64.iso /mnt/root@pdsyw-pc:/pxe/iso# cp -ra /mnt/. x86-2303/

8.自定义安装镜像内容

编辑安装配置文件,设置主机名、密码、用户名等。

root@pdsyw-pc:/pxe/iso# cd x86-2303/root@pdsyw-pc:/pxe/iso/x86-2303# vim ky-installer.cfg root@pdsyw-pc:/pxe/iso/x86-2303# grep hostname ky-installer.cfg hostname=pdsyw1024root@pdsyw-pc:/pxe/iso/x86-2303# grep password ky-installer.cfg password=@ByteArray(1qaz@WSX)root@pdsyw-pc:/pxe/iso/x86-2303# grep username ky-installer.cfg username=pdsywroot@pdsyw-pc:/pxe/iso/x86-2303# grep devpath ky-installer.cfg devpath=

9.解压引导文件

创建TFTP根目录并解压引导文件。

root@pdsyw-pc:~# mkdir /pxe/tftpboot -proot@pdsyw-pc:~# cd /pxe/tftpboot/ root@pdsyw-pc:/pxe/tftpboot# cp /home/pdsyw/*.tar.gz ./root@pdsyw-pc:/pxe/tftpboot# tar zxf x86_64-efi.tar.gz root@pdsyw-pc:/pxe/tftpboot# cd x86_64-efi/

10.导入内核镜像

创建必要的目录并复制内核镜像和initrd文件。

root@pdsyw-pc:/pxe/tftpboot/x86_64-efi# mkdir x86-2303root@pdsyw-pc:/pxe/tftpboot/x86_64-efi# cd x86-2303/root@pdsyw-pc:/pxe/tftpboot/x86_64-efi/x86-2303# mkdir casperroot@pdsyw-pc:/pxe/tftpboot/x86_64-efi/x86-2303# cd casper/root@pdsyw-pc:/pxe/tftpboot/x86_64-efi/x86-2303/casper# cp /pxe/iso/x86-2303/casper/initrd.lz ./root@pdsyw-pc:/pxe/tftpboot/x86_64-efi/x86-2303/casper# cp /pxe/iso/x86-2303/casper/vmlinuz ./

11.进入grub目录

root@pdsyw-pc:~# cd /pxe/tftpboot/x86_64-efi/root@pdsyw-pc:/pxe/tftpboot/x86_64-efi# cd boot/root@pdsyw-pc:/pxe/tftpboot/x86_64-efi/boot# cd grub/

12.编辑grub文件

root@pdsyw-pc:~# cd /pxe/tftpboot/x86_64-efi/boot/grubroot@pdsyw-pc:/pxe/tftpboot/x86_64-efi/boot/grub# vim grub.cfg root@pdsyw-pc:/pxe/tftpboot/x86_64-efi/boot/grub# cat grub.cfg set default=0set timeout=3set color_normal=white/blackset color_highlight=black/light-graymenuentry "Install Kylin-Desktop" {linux ${root}/x86-2303/casper/vmlinuz boot=casper only-ubiquity locale=zh_CN quiet splash audit=0 netboot=nfs ip=dhcp nfsroot=192.168.100.2:/pxe/iso/x86-2303 security= automatic-ubiquity console=ttyinitrd ${root}/x86-2303/casper/initrd.lz}

set default=0:设置默认引导项。set timeout=3:设置引导菜单超时时间。menuentry:定义引导菜单项,指定内核和initrd文件及其参数。

13.更新路径权限

设置/pxe目录的权限,以便所有用户都能访问。

root@pdsyw-pc:~# chmod 777 /pxe

14.配置nfs

允许所有网络主机访问/pxe/iso目录,并设置权限和同步选项。

root@pdsyw-pc:~# vim /etc/exportsroot@pdsyw-pc:~# tail -1 /etc/exports /pxe/iso *(rw,sync,no_root_squash,no_subtree_check)

15.启动nfs

重启并启用NFS服务器,检查服务状态和导出目录。

root@pdsyw-pc:~# systemctl restart nfs-kernel-server.serviceroot@pdsyw-pc:~# systemctl enable nfs-kernel-server.serviceroot@pdsyw-pc:~# systemctl status nfs-kernel-server.serviceroot@pdsyw-pc:~# showmount -e 192.168.100.2

16.启动dnsmasq

重启并启用dnsmasq服务,检查服务状态。

root@pdsyw-pc:~# systemctl restart dnsmasq.service root@pdsyw-pc:~# systemctl enable dnsmasq.service root@pdsyw-pc:~# systemctl status dnsmasq.service

17.客户端安装

通过PXE启动客户端设备,确保其从网络引导并安装操作系统。

18.安装完成

19.登录查看

常见问题解决

PXE启动失败:

检查客户机的BIOS设置,确保启用了PXE支持。

确认dnsmasq服务正在运行,并且防火墙已允许相关端口。

无法获取IP地址:

确认dnsmasq配置文件中DHCP范围设置正确。

检查网络连接,确保服务器和客户机在同一网络中。

无法加载PXE引导文件:

确认TFTP根目录中存在正确的引导文件(如pxelinux.0、vmlinuz、initrd.img)。

检查dnsmasq配置文件中的TFTP路径设置。

通过本文的介绍,您应该已经掌握了在麒麟桌面操作系统上通过PXE网络安装配置dnsmasq的方法。PXE网络安装可以极大简化操作系统的部署过程,特别适用于需要批量安装的环境。如果您觉得这篇文章有用,请分享和转发。同时,别忘了点个关注和在看,以便未来获取更多实用的技术信息和解决方案。感谢大家的阅读,我们下次再见!

0 阅读:4

鹏大搞运维

简介:感谢大家的关注