您的位置:首页 > 运维架构 > Linux

Fedora搭建服务器,DHCP+TFTP+FTP+PXE启动安装CentOS

2011-11-09 16:16 796 查看
1,介绍

PXE是在没有软驱、硬盘、CD-ROM的情况下引导计算机的一种方式,也就是BIOS将使用PXE协议从网络引导。

2,准备工作

已安装Fedora或CentOS的主机一台 (我以装有Fedora 14 i686的主机为例)

CentOS-5.5-i386-bin-DVD.iso (准备系统DVD镜像,我以这个为例)

准备安装系统的客户机 (要支持从网卡启动)

把网线接好,连上局域网

那么接下来的工作就是在装好Fedora14的主机中安装配置需要用到的服务器。

3,配置dhcpd

DHCP Server

先用以下命令查看有没有安装dhcp

rpm -q dhcp

如果没有,用以下命令安装:

yum install dhcp

再把默认的配置文件复制到/etc/dhcp/ 目录下并改名:

cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

##注意一下,如果你用的是别的版本,可能配置文件是/etc/dhcpd.conf ####

注意事项:

文中###号和后面文字是我自添加备注,不要写入配置文件哦。

修改配置文件

在配置文件最后一行添加下面这一段,请按实际情况修改

subnet 192.168.0.0 netmask 255.255.255.0 {

range 192.168.0.90 192.168.0.96;

option routers 192.168.0.254;

option subnet-mask 255.255.255.0;

option domain-name "domain.org";

option domain-name-servers 202.96.128.86,202.96.128.166;

next-server 192.168.0.22;

filename "pxelinux.0";

}

=====================================================

subnet 192.168.0.0 netmask 255.255.255.0 {

###DHCP服务器本身内网的IP段和子网掩码,网卡静态IP地址那个网段

range 192.168.0.90 192.168.0.96;

###分配给客户端IP 的范围

option routers 192.168.0.254;

###分配给客户端的路由网关

option subnet-mask 255.255.255.0;

###分配给客户端的子网掩码

option domain-name "domain.org";

####为客户端指明DNS名字,可以随便填

option domain-name-servers 202.96.128.86,202.96.128.166;

###为客户端指明DNS服务器IP地址,多个DNS地址请用逗号隔开

next-server 192.168.0.22;

###TFTP Server 的IP地址,网络安装时用到

filename "pxelinux.0";

###PXE 启动文件,网络安装时用到,这个文件是syslinux套件提供的

####不要忘记每一行后面的分号(;)和最后的那个括号哦!!!!

==============================================

关闭局域网中其它的DHCP服务器,以免造成IP冲突。

启动DHCP服务器

service dhcpd start 或 /etc/rc.d/init.d/dhcpd start

chkconfig dhcpd on ####设为开机自行启动DHCP

4,配置TFTP

TFTP Server

用以下命令查看系统是否已安装TFTP

#rpm -q tftp tftp-server

如果没有安装,用以下命令安装

yum install tftp tftp-server

修改配置文件

vi /etc/xinetd.d/tftp

server_args = -s /var/lib/tftpboot ####这个是TFTP默认的目录

把它修改为

erver_args = -s /tftpboot

建立/tftpboot这个目录

mkdir -v /tftpboot

启动TFTP

service xinetd start

chkconfig tftp on ####设为开机启动

5,PXE Boot loader (PXE引导加载程序)

pxelinux.0是syslinux套件提供的,用以下命令查看系统是否已安装和存放的目录,如果没有请安装

rpm -ql syslinux | grep pxelinux.0

发现pxelinux.0存放在

/usr/share/syslinux/pxelinux.0

把pxelinux.0复制到/tftpboot

cp -v /usr/share/syslinux/pxelinux.0 /tftpboot

6,提取需要的文件。

把CentOS-5.5-i386-bin-DVD.iso/images/pxeboot 目录中的initrd.img vmlinuz 也复制到/tftpboot 目录下

建立PXE开机设置文件的存放目录

mkdir -pv /tftpboot/pxelinux.cfg

把CentOS-5.5-i386-bin-DVD.iso/isolinux/isolinux.cfg 这个文件复制到 /tftpboot/pxelinux.cfg 目录下,并重命名为default

内容如下,每个lable是一个启动选项,输入lable后面的单词,然后回车来启动相应的选项。可根据实际情况自行修改。

如果在规定的时间内没输入,会以自动启动default那一项。

===================================================

default linux ###默认启动项,也就是label linux那一段

prompt 1 ###开启提示信息

timeout 600 ###默认的时间内没输入要选择哪一项,会自动启动上面默认那一项

display boot.msg ###启动选项信息,boot.msg 这个文件里有一些说明信息。

F1 boot.msg ###按相应的按键可以查看说明信息,前提是文件夹里有这些文件。

F2 options.msg ###其实这些文件就在CentOS-5.5-i386-bin-DVD.iso/isolinux/ 中

F3 general.msg

F4 param.msg

F5 rescue.msg

label linux ####这个是第一个启动选项,图形介面安装

kernel vmlinuz

append initrd=initrd.img

label text ###这个是文字介面安装模式

kernel vmlinuz

append initrd=initrd.img text

label ks ###这个要使用kickstart来安装

kernel vmlinuz

append ks initrd=initrd.img

label local ###从本地硬盘启动

localboot 1

label memtest86 ###内存测试选项

kernel memtest

append -

=================================================

注意事项:

文中###号和后面文字是备注,不要写入配置文件哦。

=================================================

把系统CentOS-5.5-i386-bin-DVD.iso/isolinux/boot.msg 这个文件复制到 /tftpboot 目录下。

文件内容如下,只是开机信息而已,可以根椐实际情况修改。

这是对 /tftpboot/pxelinux.cfg/default 的设置选项的一些说明。

================================================

NSTALLATION MENU

Choose installation type:

0 Local Boot (default)

1 RHEL5.1 Base System

2 RHEL5.1 Workstation

===============================================

到这里可以把要装系统的那台客户机开起来,进入BIOS,把网卡启动那一项打开,

然后设置第一启动项为网卡,看能不能获取IP和启动安装程序,如果能就离成功不远了。

7,安装FTP Server (当然也可以用NFS或HTTP来代替)

用以下命令查看系统是否已安装FTP Server

rpm -q vsftpd

如果没有,用以下命令安装。

yum install vsftpd

启动FTP

service vsftpd start 或 /etc/rc.d/init.d/vsftpd start

因为刚安装好的vsftpd启动后就可以匿名登陆,所以配置过程不介绍。

启动以后才会出现配置文件,配置文件在: /etc/rc.d/init.d/vsftpd

启动后测试一下能不能登陆,用浏览器或FTP软件中登陆看看。

如果不能,请修改配置文件。

#####注意,修改配置文件保存后,在重起相应服务,才能生效。#########

8,把ISO直接挂载到FTP目录中去

mount -o loop ISO /var/ftp/pub

除了上面的方法,还可以把要安装的系统ISO挂载,然后复制镜像里所有的文件到FTP的默认目录 /var/ftp/pub/

比如:把ISO挂载到/mnt/dvd

mkdir -pv /mnt/dvd

mount -o loop ISO /mnt/dvd

cp -r /mnt/dvd/* /var/ftp/pub

9,为了保证所有服务器全部启动,输入命令重起一下所有的服务器

service dhcpd restart

service xinetd restart

service vsftpd restart

10,启动安装

打开客户机,设置第一启动项为网卡,启动安装。

进入启动介面,直接回车,启动默认项。

选择语言,键盘布局,安装介质

安装介质选择FTP

然后设置网卡,直接选自动获取就行了(DHCP字样)

然后输入FTP 服务器的IP

192.168.0.22 ###输入你主机FTP的IP

/pub

然后选择OK

如果不能匿名登陆的,选项下面的那一行,输入FTP的账号密码

启动成功后就和光盘安装没区别了,这里就不介绍了。

因为不是同一个版本,所以不能使用RedHat的kickstart来实现全自动安装。

不过这个方式可以PXE启动安装CentOS DVD, Fedora DVD openSUSE DVD.

Linux学习网收集整理 ,(如果您觉得本站不错,请告诉身边的朋友,或转载到论坛、百度知道、贴吧等,记得带网址哟,不胜感激!)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: