我们将使用最常用的 NFS (Network File System) 方式作为网络安装源,因为它配置简单,速度快且稳定。

第一部分:准备工作
在开始安装客户端之前,您必须先准备好一台服务器,并将 CentOS 6.5 的安装文件共享出去。
准备一台服务器
这台服务器可以是任何一台能运行 Linux 的机器,并且它和你要安装的 CentOS 6.5 客户机必须在同一个局域网内,能够互相通信。
下载 CentOS 6.5 的 ISO 镜像文件
从 CentOS 官方或可靠的镜像站点下载 CentOS-6.5-x86_64-bin-DVD1.iso 文件,这是完整的安装盘镜像。
在服务器上安装并配置 NFS 服务
1 安装 NFS 软件包 在您的服务器上,执行以下命令:

# 检查是否已安装 rpm -qa | grep nfs-utils # 如果没有安装,使用 yum 安装 yum install -y nfs-utils
2 创建共享目录 我们将创建一个目录来存放 ISO 镜像文件。
# 创建一个用于挂载 ISO 的目录 mkdir -p /mnt/centos65 # 创建一个用于 NFS 共享的目录 mkdir -p /data/centos65
3 挂载 ISO 镜像
将下载的 ISO 文件挂载到 /mnt/centos65 目录。
# 假设您的 ISO 文件放在 /home 目录下 mount -o loop /home/CentOS-6.5-x86_64-bin-DVD1.iso /mnt/centos65/
4 同步文件到共享目录
为了方便 NFS 共享,我们将挂载好的 ISO 文件内容复制到 /data/centos65 目录。
# 使用 rsync 同步,速度更快,更安全 rsync -avz /mnt/centos65/ /data/centos65/
5 配置 NFS 共享
编辑 NFS 的主配置文件 /etc/exports:

vi /etc/exports
在文件末尾添加以下内容,这里的 168.1.0/24 是您的局域网网段,请根据您的实际情况修改。
/data/centos65 192.168.1.0/24(rw,sync,no_root_squash)
参数解释:
/data/centos65: 要共享的目录。168.1.0/24: 允许访问这个共享的客户端 IP 网段,您可以指定单个 IP,如168.1.100,或者使用 允许所有(不推荐,出于安全考虑)。rw: 允许客户端以读写方式挂载。sync: 数据写入磁盘后才返回响应,保证数据安全。no_root_squash: 客户端以 root 用户身份访问时,在共享目录上也拥有 root 权限,这对于安装过程是必要的,因为安装程序需要创建文件和目录。
6 启动并设置 NFS 服务开机自启
# 启动服务 service rpcbind start service nfs start # 设置开机自启 chkconfig rpcbind on chkconfig nfs on
7 验证 NFS 共享 在服务器上执行以下命令,查看共享是否成功:
exportfs -v
您应该能看到类似下面的输出:
/data/centos65
192.168.1.0/24(rw,wdelay,root_squash,no_subtree_check)
至此,服务器端的准备工作已经完成。
第二部分:在客户端(目标机器)上进行网络安装
我们将要安装 CentOS 6.5 的客户端(裸机或虚拟机)开机,并从网络引导。
准备客户端
- 确保客户端的 BIOS/UEFI 设置为从 Network (PXE) 启动。
- 确保客户端的网卡能够正常获取到 IP 地址(通过 DHCP),并且能够 ping 通您刚刚配置好的 NFS 服务器。
启动安装程序
开机后,客户端会通过 PXE 协议从网络寻找引导文件,如果您的网络环境有专门的 DHCP/PXE 服务器(如 Cobbler 或 PXElinux),它会自动加载菜单,如果没有,您可能需要在客户端的网卡启动菜单(通常按 F12 或 Shift+F10)中选择 "Network Boot"。
客户端会自动连接到您配置的 NFS 服务器,加载 Linux 内核和初始化内存盘。
引进安装参数
在内核加载后,通常会看到一个 boot: 提示符,您需要输入引导参数来告诉安装程序从哪里获取安装文件。
输入以下命令,然后按回车:
linux ks=nfs:192.168.1.10:/data/centos65/ks.cfg
参数解释:
linux: 表示要加载 Linux 内核。ks=nfs:...: 指定使用 Kickstart 自动安装文件。ks是Kickstart的缩写。nfs:192.168.1.10: 指定 NFS 服务器的 IP 地址。请务必替换为您自己的服务器 IP。/data/centos65/: 指定 NFS 共享目录。ks.cfg: 指定 Kickstart 配置文件的文件名,这个文件我们下一步就要创建。
注意: 如果您想手动选择安装源,可以输入
linux askmethod,然后根据提示选择 "NFS directory",并输入 NFS 服务器的 IP 和共享目录路径,但自动安装(Kickstart)是更高效的方式。
创建 Kickstart 自动安装配置文件 (ks.cfg)
Kickstart 可以实现无人值守的自动化安装,极大地提高了效率。
1 在 NFS 服务器上创建 ks.cfg 文件
回到您的 NFS 服务器,在共享目录 /data/centos65/ 下创建 ks.cfg 文件。
vi /data/centos65/ks.cfg
2 ks.cfg 文件示例
这是一个功能相对完整的 ks.cfg 示例,您可以根据自己的需求进行修改。请务必修改其中的 IP 地址、子网掩码、网关、DNS 和密码等关键信息。
# Kickstart file for CentOS 6.5 # System language lang en_US.UTF-8 # Keyboard layouts keyboard us # Network information network --onboot yes --device eth0 --bootproto static --ip 192.168.1.100 --netmask 255.255.255.0 --gateway 192.168.1.1 --nameserver 8.8.8.8,114.114.114.114 # Root password rootpw --iscrypted $1$O5.qx6Qq$GQC4v0F9gP5Qq7LQzBkLk. # System authorization information authconfig --enableshadow --passalgo=sha512 # SELinux configuration selinux --disabled # Firewall configuration firewall --disabled # System timezone timezone Asia/Shanghai # System bootloader configuration bootloader --location=mbr --driveorder=sda,hd0,0 # Clear the Master Boot Record zerombr # Partition clearing information clearpart --all --initlabel # Disk partitioning information part /boot --fstype=ext4 --size=200 part swap --size=2048 part / --fstype=ext4 --size=1 --grow # Reboot after installation reboot # Install or upgrade install # CDROM media (we are using NFS, so this is ignored) cdrom # Use network installation url --url=nfs:192.168.1.10:/data/centos65 # System bootloader bootloader --location=mbr # Partition information part /boot --fstype ext4 --size=200 part swap --size=4096 part / --fstype ext4 --size=1 --grow # System authorization information authconfig --enableshadow --passalgo=sha512 # Firewall configuration firewall --disabled # Network information network --bootproto=dhcp --device=eth0 # Reboot after installation reboot # System timezone timezone Asia/Shanghai # Root password rootpw --iscrypted $1$O5.qx6Qq$GQC4v0F9gP5Qq7LQzBkLk. # SELinux configuration selinux --disabled # X Window System
