通过PXE网络安装Centos6.5

简介:

说明

系统安装我们一般可采用以下方式:光盘、U盘、PXE网络等,当我们大批量安装系统时,网络是非常有效率的选择。Linux系统一样,除了支持光盘引导安装外,还支持基于PXE的网络引导与安装。PXE只是网络安装的引导方式,自动化的核心依赖于kickstart/autoyast/autounattend等生成的自动应答文件。


软件准备

tftpd32+Centos6.5_x64+kickstart+hfs+syslinux4.05


一.基于windows宿主机+VMware Workstation12

步骤

1.1 在windows服务器上,创建一个文件夹,作为TFTP服务器的工作目录,本测试环境是windows10, 目录是D:\Centos6.5。 从syslinux程序中复制pxelinux.0文件到这个目录;复制syslinux中的vesamenu.c32到D:\Centos6.5中。


1.2 复制Centos6.5镜像中的所有文件到D:\Centos6.5目录中; 

复制D:\Centos6.5\ioslinux目录(或者D:\Centos6.5\images\pxeboot)里文件 initrd.img,vmlinuz到上层目录(D:\Centos6.5);

复制D:\Centos6.5\ioslinux目录里boot.msg文件到上层目录(D:\Centos6.5);


1.3 在D:\Centos6.5目录中创建pxelinux.cfg目录,复制Centos6.5镜像中的文件 ISOLINUX.CFG到pxelinux.cfg文件夹中,重命名为default。


备注

如果你要为所有的服务器安装D:\Centos6.5,请将ISOLINUX.CFG更名为default。如果你要为指定的服务器安装,请记下服务器的MAC地址(服务器上可能有多个网卡,需要记下通过网卡引导的网卡的MAC地址),并复制ISOLINUX.CFG文件,重命名为“序号+MAC地址”,其中序号用01、02、03代替,表示第1台、第2台服务器的顺序,在序号与MAC地址之间,用短横线代替,例如,第1台服务器的MAC地址是F48E38873878,则文件名为01-F4-8E-38-87-38-78

clip_image002_thumb1


注意

如果你是手动填写相关信息,请忽略步骤1.5。

如果选择自动应答,还需要修改default,添加: ks=http://192.168.40.1/Centos6.5/ks.cfg ksdevice=eth0,

default 内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
default vesamenu.c32
#prompt 1
timeout  600
 
display boot.msg
 
menu background splash.jpg
menu title Welcome to CentOS  6.5 !
menu color border  0  #ffffffff #00000000
menu color sel  7  #ffffffff #ff000000
menu color title  0  #ffffffff #00000000
menu color tabmsg  0  #ffffffff #00000000
menu color unsel  0  #ffffffff #00000000
menu color hotsel  0  #ff000000 #ffffffff
menu color hotkey  7  #ffffffff #ff000000
menu color scrollbar  0  #ffffffff #00000000
 
label linux
   menu label ^Install  or  upgrade an existing system
   menu default
   kernel vmlinuz
   append initrd = initrd.img ks = http: / / 192.168 . 40.1 / Centos6. 5 / ks.cfg ksdevice = eth0
label vesa
   menu label Install system with ^basic video driver
   kernel vmlinuz
   append initrd = initrd.img xdriver = vesa nomodeset
label rescue
   menu label ^Rescue installed system
   kernel vmlinuz
   append initrd = initrd.img rescue
label local
   menu label Boot  from  ^local drive
   localboot  0xffff
label memtest86
   menu label ^Memory test
   kernel memtest
   append  -



1.4 设置TFTP,打开tftpd,设置D:\Centos6.5为根目录。设置IP地址的起始地址(地址应该与服务器的地址在同一网段,并且在服务器的地址之后),设置如下,红色部分是要填写的。

image

image



1.5 设置hfs服务。将自动应答文件ks.cfg放在D:\Centos6.5目录下。

image


内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Firewall configuration
firewall  - - disabled
# Install OS instead of upgrade
install
#cdrom
url  - - url = http: / / 192.168 . 40.1 / Centos6. 5
# Network
#network --bootproto=dhcp --device=eth0
# Root password
rootpw hundsun@ 1
# System authorization information
auth   - - useshadow   - - passalgo = sha512
# Use text mode install
text
firstboot  - - disable
# System keyboard
keyboard us
# System language
lang en_US.UTF - 8
# SELinux configuration
selinux  - - disabled
# Installation logging level
logging  - - level = info
# Reboot after installation
reboot
# System timezone
timezone Asia / Shanghai
# System bootloader configuration
bootloader  - - location = mbr  - - append = "rhgb quiet crashkernel=auto"
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart  - - all  - - initlabel
# Partition
#autopart
part  / boot  - - fstype = ext4  - - size = 500
part  /  - - fstype = "ext4"  - - size = 8192
part swap  - - fstype = "swap"  - - size = 1024 
 
# Packages
% packages
@base
@chinese - support
@client - mgmt - tools
@core
@debugging
@basic - desktop
@desktop - debugging
@desktop - platform
@directory - client
@fonts
@general - desktop
@graphical - admin - tools
@input - methods
@internet - browser
@java - platform
@legacy - x
@network - file - system - client
@perl - runtime
@print - client
@remote - desktop - clients
@server - platform
@server - policy
@x11
pax
python - dmidecode
oddjob
wodim
sgpio
genisoimage
mtools
abrt - gui
certmonger
pam_krb5
krb5 - workstation
libXmu
perl - DBD - SQLite
% end



1.6 设置防火墙允许TFTP通过防火墙或者直接关闭防火墙。


1.7 开启网络安装,新建虚拟机类型选择Centos6,设置完成后从网卡启动,进入安装,步骤略。


微信图片_20170721093523


二.基于Centos6.8_x64+VMware Workstation12

其实和上面的步骤一样,做了同样的事情。


2.1 安装dhcp、tftp-server、syslinux、xinetd

yum install dhcp tftp-server syslinux xinetd


2.2 挂载Centos6.5 ISO到/mnt

mount /dev/cdrom /mnt


2.3 修改vim /etc/dhcp/dhcpd.conf

1
2
3
4
5
6
7
8
9
10
11
ddns - update - style interim;
allow booting;
allow bootp;
class  "pxeclients"  {
match  if  substring(option vendor - class - identifier,  0 9 =  "PXEClient" ;
next - server  192.168 . 10.78 ;
filename  =  "pxelinux.0" ;
}
subnet  192.168 . 10.0  netmask  255.255 . 255.0  {
range  192.168 . 10.100  192.168 . 10.110 ;
}


2.4启用tftp,修改/etc/xinetd.d/tftp中的disable = yes为disable = no

1
2
3
4
5
6
7
8
9
10
11
12
13
service tftp
{
socket_type  =  dgram
protocol  =  udp
wait  =  yes
user  =  root
server  =  / usr / sbin / in .tftpd
server_args  =  - / var / lib / tftpboot
disable  =  no
per_source  =  11
cps  =  100  2
flags  =  IPv4
}


2.5 复制pxelinux.0到tftp根目录

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/


2.6 新建目录/var/lib/tftpboot/pxelinux.cfg

mkdir /var/lib/tftpboot/pxelinux.cfg


2.7 复制Centos ISO中的文件isolinux.cfg到/var/lib/tftpboot/pxelinux.cfg/下并改名default

cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

修改default文件,具体同上。


2.8 复制Centos ISO中的全部文件到/var/lib/tftpboot/下

复制/mnt/isoinux目录里文件 initrd.img,vmlinuz,boot.msg到/var/lib/tftpboot/目录中;


cp -a /mnt/* /var/lib/tftpboot/

cp /mnt/isoinux/{initrd.img,vmlinuz,boot.msg} /var/lib/tftpboot/



2.9 复制syslinux中的vesamenu.c32到/var/lib/tftpboot/中。

cp /usr/share/syslinux/vesamenu.c32 /var/lib/tftpboot/


2.10 重启dhcp、xinetd服务

systemctl restart dhcpd

systemctl restart xinetd


2.11 自定义安装脚本,安装httpd,此文件可以放在任何可以通过url访问到的地方。 编辑脚本ks.cfg

内容同上面。


三. 遇到的问题

在windows下测试时,遇到如下错误:

“unable to read package metadata.this may be due to a missing repodata directory . please ensure that your install tree has been correctly generated ……”


解决方法:

目录repodata下面的文件缺少扩展名,补全扩展名。


原因:在windows下,Centos光盘目录repodata下,文件显示不出扩展名,复制过来的文件也相应缺少扩展名,但是在linux下面显示正常的。

20170721140145


20170721140232


本文转自pizibaidu 51CTO博客,原文链接:http://blog.51cto.com/pizibaidu/1949689,如需转载请自行联系原作者

相关文章
|
1月前
|
存储 安全 Linux
CentOS安装SeaweedFS
通过上述步骤,您应该能够在CentOS系统上成功安装并启动SeaweedFS。记住,根据实际部署规模和需求,可能还需要进一步调整配置参数和优化网络布局。SeaweedFS的灵活性和扩展性意味着随着使用深入,您可能需要探索更多高级配置和管理策略。
107 64
|
1月前
|
存储 安全 Linux
CentOS安装SeaweedFS
通过上述步骤,您应该能够在CentOS系统上成功安装并启动SeaweedFS。记住,根据实际部署规模和需求,可能还需要进一步调整配置参数和优化网络布局。SeaweedFS的灵活性和扩展性意味着随着使用深入,您可能需要探索更多高级配置和管理策略。
116 61
|
14天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
|
15天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第7天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统要求检查与准备、配置安装源、安装 SQL Server 2019、配置 SQL Server 以及数据库初始化(可选)。通过这些步骤,你可以成功安装并初步配置 SQL Server 2019,进行简单的数据库操作。
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
91 1
Linux系统之Centos7安装cockpit图形管理界面
|
22天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
65 3
|
23天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
42 2
|
1月前
|
NoSQL 数据可视化 Linux
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
本文介绍了Redis的两个可视化管理工具:付费的Redis Desktop Manager和免费的Another Redis DeskTop Manager,包括它们的下载、安装和使用方法,以及在使用Another Redis DeskTop Manager连接Redis时可能遇到的问题和解决方案。
126 1
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
|
25天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
77 2
|
29天前
|
Linux 知识图谱
Centos7安装killall,fuser, killall,pstree和pstree.x11
通过上述步骤,您已在CentOS 7系统中成功部署了killall、fuser、pstree以及pstree.x11,为高效管理系统进程打下了坚实基础。更多关于服务器管理与优化的知识,获取全面技术支持与解决方案。
46 1
下一篇
无影云桌面