Centos7安装PXE系统,详细教程
时间: 2024-04-28 13:23:47 浏览: 133
pxe安装centos7
安装 PXE 系统需要进行以下步骤:
1. 安装 TFTP 服务
TFTP 是 PXE 系统中用来传输启动映像文件的协议,需要先安装 TFTP 服务。
```shell
yum install tftp-server
```
安装完成后,编辑 /etc/xinetd.d/tftp 文件,将 disable 参数设置为 no。
```shell
vi /etc/xinetd.d/tftp
```
修改为:
```shell
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}
```
2. 配置 DHCP 服务
PXE 系统需要 DHCP 服务来分配 IP 地址和 PXE 需要的参数。
```shell
yum install dhcp
```
安装完成后,编辑 /etc/dhcp/dhcpd.conf 文件,添加以下内容:
```shell
subnet 192.168.0.0 netmask 255.255.255.0 {
option routers 192.168.0.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
option domain-name-servers 8.8.8.8;
option domain-name "example.com";
option time-offset -18000; # Eastern Standard Time
range 192.168.0.100 192.168.0.200;
default-lease-time 86400;
max-lease-time 86400;
next-server 192.168.0.1;
filename "pxelinux.0";
}
```
3. 安装 Syslinux
Syslinux 是 Linux 系统启动管理程序,PXE 系统中需要用到它来启动映像文件。
```shell
yum install syslinux
```
安装完成后,将 /usr/share/syslinux/pxelinux.0 复制到 TFTP 服务器的根目录。
```shell
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
```
4. 准备启动映像文件
PXE 系统需要一个启动映像文件,可以使用 CentOS 的 ISO 镜像文件来制作。
```shell
mkdir /mnt/iso
mount -o loop CentOS-7-x86_64-DVD-2009.iso /mnt/iso
cp /mnt/iso/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/
```
5. 配置启动菜单
编辑 /var/lib/tftpboot/pxelinux.cfg/default 文件,添加以下内容:
```shell
default menu.c32
prompt 0
timeout 300
ONTIMEOUT local
menu title ########## PXE Boot Menu ##########
label 1
menu label ^1) Install CentOS 7 x64
kernel vmlinuz
append initrd=initrd.img method=http://192.168.0.1/centos7 ks=http://192.168.0.1/ks.cfg
```
6. 创建 Kickstart 文件
Kickstart 文件是用来自动化安装 CentOS 的配置文件,可以根据需要自行编写。
```shell
vi /var/www/html/ks.cfg
```
添加以下内容:
```shell
# Use text mode install
text
# Run the installer directly from the ISO image
url --url http://192.168.0.1/centos7
# Use network installation
network --bootproto=dhcp --device=eth0
# Set up root password
rootpw --iscrypted $6$K1sZ5r8j$Jp8YgTJv2K2kIx9YwQ9V3fYTA4WQmmuWjC6R7t2X3Jc9uEo4psLVL9R6mXUQ3BX3EvfU6zW0G8fJyfP/kbW6G1
# Configure system language, timezone, keyboard and firewall
lang en_US.UTF-8
timezone Asia/Shanghai --isUtc
keyboard us
firewall --disabled
# Configure network
network --bootproto=dhcp --device=eth0 --onboot=yes --ipv6=auto --activate
# Configure SELinux
selinux --disabled
# Install the minimal package set
%packages --nobase --ignoremissing
@core
kexec-tools
%end
```
7. 启动服务
启动 TFTP 和 DHCP 服务。
```shell
systemctl start tftp
systemctl start dhcpd
```
现在,就可以通过 PXE 启动来安装 CentOS 7 了。
阅读全文