共计 3724 个字符,预计需要花费 10 分钟才能阅读完成。
最近遇到一个问题,公司内部的 Linux 服务器由于比较老,光驱坏了,也不支持 U 盘启动,所以没办法,只能用 pxe 来安装操作系统。网上教程很多,但是不够清晰,下来我来写一下我的安装过程。
A. 安装 dhcp 服务器
yum install dhcp
vim /etc/dhcp/dhcpd.conf
# 可以直接拷贝我的下列配置,修改子网即可
ddns-update-style interim;
ignore client-updates;
allow booting;
allow bootp;
subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.250 192.168.2.253;
option routers 192.168.2.1;
option subnet-mask 255.255.255.0;
default-lease-time 21600;
max-lease-time 43200;
next-server 192.168.2.136;
filename “pxelinux.0”;
}
备注:
next-server:指定的地址是你启动文件存放的那个服务器,一般是 tftp 服务器地址。
启动 dhcp 服务器,如果报错,查看 /var/log/message
chkconfig –add dhcpd
service dhcpd start
B. 安装 tftp 服务器
yum install tftp-server
/etc/xinetd.d/tftp
# 直接拷贝即可
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
}
启动
/etc/init.d/xinetd restart
C. 安装一个 http/nfs/ftp 中的任意一个即可,用来存放 ks.cfg 和 iso 镜像文件。
我选用 http
yum install httpd
/etc/init.d/httpd start
chkconfig httpd on
D. 配置 tftp 里面的所需文件
# 引导文件
yum install syslinux
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
# 内核文件,把光盘挂在在 /mnt 即可。
cp /mnt/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot
mkdir /var/lib/tftpboot/pxelinux.cfg
cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
vim /var/lib/tftpboot/pxelinux.cfg/default
# 修改为如下,修改自己的服务器地址即可。
default linux
prompt 1
timeout 600
display boot.msg
menu background splash.jpg
menu title Welcome to CentOS 6.6!
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 ks=http://192.168.2.136/ks.cfg initrd=initrd.img
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 –
E. 配置 kickstart
# 安装镜像位置
mkdir /var/www/html/dvd
cp -r /mnt/* /var/www/html/dvd
# 配置 kickstart 文件
yum install system-config-kickstart
cp /root/anaconda-ks.cfg /var/www/html/ks.cfg
vi ks.cfg
# 可以直接拷贝下列文件,注意 http 服务器修改为自己的即可。
# Install OS instead of upgrade
install
# Use network installation
url –url=”http://192.168.2.136/dvd”
# Root password
rootpw –iscrypted $1$t8TZKP5c$0OdX9sWkdoYuZlIXBkU8R.
# System authorization information
auth –useshadow –passalgo=sha512
# Use graphical install
graphical
firstboot –disable
# System keyboard
keyboard us
# System language
lang en_US
# SELinux configuration
selinux –disabled
# Installation logging level
logging –level=info
# Reboot after installation
reboot
# System timezone
timezone –isUtc Asia/Shanghai
# System bootloader configuration
bootloader –location=mbr
# Partition clearing information
clearpart –all
%packages
@base
%end
F. 配置结束,可以找一台主板具有 pxe 的功能机子测试即可。
据我所知,目前大部分 PC 机就支持的。
推荐阅读
- 在 RHEL/CentOS 7 中为多种 Linux 发行版安装 PXE 网络启动服务器 http://www.linuxidc.com/Linux/2015-02/113587.htm
- 利用 Kickstart 实现无人值守安装 RHEL6.0 系统 http://www.linuxidc.com/Linux/2013-09/89765.htm
- SUSE Linux 11 pxe+DHCP+tftp+ftp 无人值守安装 http://www.linuxidc.com/Linux/2013-06/85481.htm
- 自建 DHCP TFTP 服务 用 PXE 启动实现无人值守安装 CentOS6 http://www.linuxidc.com/Linux/2014-07/104881.htm
- 使用 PXE+DHCP+Apache+Kickstart 无人值守安装 CentOS5.8 x86_64 http://www.linuxidc.com/Linux/2012-12/76913.htm
- Kickstart 全自动化安装 CentOS 6.3 http://www.linuxidc.com/Linux/2012-12/75570.htm
- Kickstart 自动化安装 Linux 笔记 http://www.linuxidc.com/Linux/2012-11/73853.htm
- PXE/Kickstart 实现远程自动安装 RedHat Linux http://www.linuxidc.com/Linux/2012-11/73361.htm
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-07/120291.htm