Linux无人值守安装(从零开始实现全自动部署)

V5主机测评

在企业运维或大规模服务器部署中,手动安装成百上千台 Linux 系统显然不现实。这时,Linux无人值守安装就派上了大用场。通过结合 Kickstart自动化安装PXE网络引导 技术,我们可以实现“一键批量装机”。本教程将手把手教你搭建一套完整的无人值守安装环境,即使是 Linux 小白也能轻松上手!

什么是无人值守安装?

无人值守安装(Unattended Installation)是指在没有人工干预的情况下,自动完成操作系统安装、配置和初始化的全过程。在 Linux 中,最常用的方式是使用 Red Hat 系列(如 CentOS、RHEL、Fedora)提供的 Kickstart 文件配合 PXE 网络启动技术。

Linux无人值守安装(从零开始实现全自动部署)

所需组件概览

  • DHCP 服务器:为客户端分配 IP 并告知 PXE 引导文件位置
  • TFTP 服务器:提供 PXE 引导所需的内核和初始化镜像
  • HTTP/FTP/NFS 服务器:存放操作系统安装源和 Kickstart 配置文件
  • Kickstart 文件(ks.cfg):包含所有安装选项的自动化脚本

步骤一:准备安装服务器(以 CentOS 7 为例)

首先,确保你有一台可联网的 CentOS 7 服务器,并拥有 root 权限。

1. 安装必要软件包

sudo yum install -y dhcp tftp-server httpd syslinux xinetd

2. 挂载 CentOS 安装 ISO

将 CentOS 的 ISO 镜像挂载到 HTTP 目录下:

sudo mkdir -p /var/www/html/centos7sudo mount -o loop /path/to/CentOS-7-x86_64-DVD.iso /var/www/html/centos7

步骤二:配置 DHCP 服务

编辑 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 start dhcpdsudo systemctl enable dhcpd

步骤三:配置 TFTP 服务

启用 TFTP 服务并复制必要的引导文件:

sudo systemctl start tftp.socketsudo systemctl enable tftp.socket# 复制引导文件sudo cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/sudo cp /var/www/html/centos7/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/# 创建 PXE 启动菜单目录sudo mkdir -p /var/lib/tftpboot/pxelinux.cfg

步骤四:创建 Kickstart 配置文件

/var/www/html/ks.cfg 创建自动化安装脚本:

#version=DEVELinstallurl --url=http://192.168.1.10/centos7keyboard --vckeymap=us --xlayouts='us'rootpw --plaintext your_root_passwordauth --useshadow --passalgo=sha512lang en_US.UTF-8firewall --disablednetwork --bootproto=dhcp --device=eth0 --onboot=onreboottimezone Asia/Shanghai --isUtcbootloader --location=mbr --boot-drive=sdaclearpart --none --initlabelautopart --type=lvm%packages@^minimal%end

⚠️ 注意:请根据实际网络和需求修改 IP、密码、时区等参数。

步骤五:配置 PXE 启动菜单

创建 /var/lib/tftpboot/pxelinux.cfg/default 文件:

default menu.c32prompt 0timeout 300menu title PXE Boot Menulabel install  menu label ^Install CentOS 7 Unattended  kernel vmlinuz  append initrd=initrd.img inst.ks=http://192.168.1.10/ks.cfg

步骤六:启动 HTTP 服务

sudo systemctl start httpdsudo systemctl enable httpd

测试无人值守安装

现在,将目标机器设置为从网络(PXE)启动。如果一切配置正确,它会自动获取 IP、下载内核、加载 Kickstart 文件,并全程无需人工干预完成 CentOS 7 的安装!

总结

通过本教程,你已经掌握了基于 Kickstart自动化安装PXE网络引导Linux无人值守安装 全流程。这项技术不仅节省大量人力,还能确保系统配置的一致性,是运维工程师必备技能之一。快去试试吧!

关键词回顾:Linux无人值守安装Kickstart自动化安装PXE网络引导自动化部署Linux系统

文章版权声明:除非注明,否则均为V5主机测评网_性价比VPS_性价比云服务器_免费独立服务器原创文章,转载或复制请以超链接形式并注明出处。