对于系统管理员或运维工程师来说,批量部署 Linux 系统是一项常见但繁琐的任务。如果每台机器都要用 U 盘或光盘逐个安装,效率极低。而Linux网络安装技术可以让你通过网络一次性部署多台机器,极大提升效率。
本文将从零开始,详细讲解如何使用 PXE 启动 和 Kickstart 自动化 技术搭建一个完整的网络安装环境,即使是初学者也能轻松上手。
Linux网络安装是指客户端计算机通过网络从服务器获取安装文件并完成系统安装的过程。整个过程无需本地介质(如U盘、光盘),只需网卡支持 PXE(Preboot Execution Environment)协议即可。
假设你使用的是 CentOS 7 作为服务器系统,首先安装所需软件包:
# 安装 DHCP、TFTP、HTTP 服务sudo yum install -y dhcp tftp-server httpd syslinux# 启动并设置开机自启sudo systemctl enable --now dhcpd tftp httpd 编辑 DHCP 配置文件 /etc/dhcp/dhcpd.conf:
subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.200; option routers 192.168.1.1; option domain-name-servers 8.8.8.8; filename "pxelinux.0"; next-server 192.168.1.10; # TFTP 服务器 IP} 重启 DHCP 服务使配置生效:
sudo systemctl restart dhcpd 将 PXE 引导文件复制到 TFTP 根目录(通常为 /var/lib/tftpboot):
# 挂载 CentOS ISO(假设已挂载到 /mnt)sudo mount -o loop CentOS-7-x86_64-Minimal.iso /mnt# 复制引导文件sudo cp /mnt/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/sudo cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/sudo mkdir -p /var/lib/tftpboot/pxelinux.cfg# 创建默认启动菜单cat > /var/lib/tftpboot/pxelinux.cfg/default < 将整个 ISO 内容复制到 Apache 的网站目录:
sudo mkdir -p /var/www/html/centos7sudo cp -r /mnt/* /var/www/html/centos7/ 在 /var/www/html/ks.cfg 中创建 Kickstart 文件:
#version=DEVELinstallurl --url="http://192.168.1.10/centos7"textrebootkeyboard --vckeymap=us --xlayouts='us'rootpw --plaintext yourpasswordauth --useshadow --passalgo=sha512lang en_US.UTF-8firewall --disablednetwork --bootproto=dhcp --device=eth0 --onboot=onselinux --disabledtimezone Asia/Shanghai --isUtcbootloader --location=mbr --driveorder=sdazerombrclearpart --all --initlabelautopart%packages@^minimal%end 这个文件定义了分区、密码、时区等所有安装选项,实现真正的无人值守安装。
将目标机器设置为从网络(PXE)启动。开机后,它会自动获取 IP、下载引导文件,并根据 Kickstart 文件完成整个安装过程,全程无需人工干预。
通过搭建 DHCP + TFTP + HTTP + Kickstart 的组合,你可以轻松实现大规模 Linux 系统的快速部署。这种基于 网络引导安装 的方式不仅高效,还能确保系统配置的一致性,是现代数据中心的标准实践之一。
掌握 Linux网络安装、PXE启动、Kickstart自动化 和 网络引导安装 这四项关键技术,将大大提升你的运维效率!
本文由主机测评网于2025-11-26发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://vpshk.cn/202511697.html