Pxe+dhcp+nfs+tftp 网络安装linux

简介:
Pxe+dhcp+nfs+tftp  网络安装 centos

 
一、 介绍
简单原理介绍:无光软驱服务器通过 PXE 网卡启动,从 dhcp 服务器获取 IP  通过 tftp  取到 pxelinux 配置文件,按配置文件进行启动 centos  文件进行引导系统安装。
 
二、环境说明
本文测试环境及用到的软件
Server: centos 5.2  dhcp nfs tftp  ip:192.168.1.251 ( IP 只需要与服务器网卡相连,不管是什么都可以 )
 
三、安装配置过程及基本讲解:
安装相应的软件: yum –y install dhcp* nfs* tftp*
1、   配置 tftp
[code] more /etc/xinetd.d/tftp
# default: off
# de.ion: The tftp server serves files using the trivial file transfer \
#       protocol.  The tftp protocol is often used to boot diskless \
#       workstations, download configuration files to network-aware printers, \
#       and to start the installation process for some operating systems.
# trad: liuyu
# blog: liuyu.blog.51cto.com
service tftp
{
        disable = no   # 默认是 yes  改为 no
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -u nobody -s /tftpboot  # 添加 nobody 可以访问 //-s 表示用/tftpboot作为tftp目录的根目录
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
} [/code]
    重启 xinetd 服务:  /etc/init.d/xinetd restart 
    查看 tftp  是否启动: # chkconfig --list |grep tftp
                        tftp:           on
 
2、   配置 nfs
mount /iso/CentOS-5.2-i386-bin-1of6.iso /mnt -o loop  # 我是挂载的镜像文件,你们可以挂载光驱
echo "/tftpboot *(ro,sync)" > /etc/exports 
echo "/mnt *(ro,sync)" > /etc/exports   # 此二步设置共享的目录
exportfs –a   # 使配置生效
/etc/init.d/portmap start  &&/etc/init.d/nfs start    # 重启服务
Showmount –e localhost  # 看查共享的目录
Export list for localhost:
/mnt      *
/tftpboot *
 
  3 、配置 dhcp
直接 copy 我的配置
[code]# more /etc/dhcpd.conf
#
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.sample
#
# trad: liuyu
# blog: liuyu.blog.51cto.com
 
ddns-update-style interim;
ignore client-updates;
allow booting;
allow bootp;
subnet 192.168.1.0 netmask 255.255.255.0 {
 
option routers 192.168.1.251;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.1.251;   # 本地 IP
option time-offset -18000; # Eastern Standard Time
range dynamic-bootp 192.168.1.12 192.168.1.254;  # 要分区的 IP
default-lease-time 21600;
max-lease-time 43200;
# Group the PXE bootable hosts together
# PXE-specific configuration directives...
next-server 192.168.1.251;
filename "/pxelinux.0";   # 方便查找配置文件
} [/code]
 
/etc/init.d/dhcpd start   启动服务
 
4、   配置 pxe 所需要的文件
[code]
Mkdir /tftpboot/pxelinux.cfg
cp /usr/lib/syslinux/pxelinux.0 /tftpboot/
cp /mnt/isolinux/vmlinuz /tftpboot/
 cp /mnt/isolinux/initrd.img /tftpboot/
cp /mnt/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default  [/code]
 
四、测试
启动服务器,一般是按 F12 选择进入 PXE 网络启动。这时就会自动获取 IP 并进入
Boot:  界面。按 linux text  进入。之后选择 NFS 安装系统。
 
五、配置文件详解
dhcpd.conf 配置的有关说明:
 
parameters (参数):
ddns-update-style 
配置 DHCP-DNS 互动更新模式
default-lease-time 
指定缺省租赁时间的长度,单位是秒
max-lease-time 
指定最大租赁时间长度,单位是秒
hardware 
指定网卡接口类型和 MAC 地址
server-name 
通知 DHCP 客户服务器名称
get-lease-hostnames flag 
检查客户端使用的 IP 地址
fixed-address ip 
分配给客户端一个固定的地址
authritative 
拒绝不正确的 IP 地址的要求
 
declarations (声明):
shared-network 
用来告知是否一些子网络分享相同网络
subnet 
描述一个 IP 地址是否属于该子网
range 
起始 IP  终止 IP  提供动态分配 IP  的范围
host 
主机名称  参考特别的主机
group 
为一组参数提供声明
allow unknown-clients
deny unknown-client  是否动态分配 IP 给未知的使用者
allow bootp
deny bootp  是否响应激活查询
allow booting
deny booting  是否响应使用者查询
filename 
开始启动文件的名称,应用于无盘工作站
next-server 
设置服务器从引导文件中装如主机名,应用于无盘工作站
 
option (选项):
subnet-mask 
为客户端设定子网掩码
domain-name 
为客户端指明 DNS 名字
domain-name-servers 
为客户端指明 DNS 服务器 IP 地址
host-name 
为客户端指定主机名称
routers 
为客户端设定默认网关
broadcast-address 
为客户端设定广播地址
ntp-server 
为客户端设定网络时间服务器 IP 地址
time
offset  为客户端设定和格林威治时间的偏移时间,单位是秒。


本文转自守住每一天51CTO博客,原文链接:http://blog.51cto.com/liuyu/125119,如需转载请自行联系原作者
 
相关文章
|
6天前
|
安全 Linux 网络安全
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
33 0
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
|
5月前
|
安全 网络协议 Linux
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
144 18
|
5月前
|
Linux 数据安全/隐私保护
使用Linux命令行接入无线网络Wi-Fi的示例。
现在,你已经使用命令行成功地连接到 Wi-Fi 网络了。这两个示例涵盖了用 `nmcli` 和 `wpa_supplicant` 连接无线网络的常见场景,让你能够不依赖图形化界面来完成这个任务。在日常使用中熟练掌握这些基本操作能增强你对 Linux 系统的理解,帮助你更有效地处理各种问题。
226 12
|
5月前
|
网络协议 安全 Devops
Infoblox DDI (NIOS) 9.0 - DNS、DHCP 和 IPAM (DDI) 核心网络服务管理
Infoblox DDI (NIOS) 9.0 - DNS、DHCP 和 IPAM (DDI) 核心网络服务管理
142 4
|
5月前
|
安全 Ubuntu Linux
Nipper 3.8.0 for Windows & Linux - 网络设备漏洞评估
Nipper 3.8.0 for Windows & Linux - 网络设备漏洞评估
154 0
Nipper 3.8.0 for Windows & Linux - 网络设备漏洞评估
|
7月前
|
Ubuntu Linux
Linux系统管理:服务器时间与网络时间同步技巧。
以上就是在Linux服务器上设置时间同步的方式。然而,要正确运用这些知识,需要理解其背后的工作原理:服务器根据网络中的其他机器的时间进行校对,逐步地精确自己的系统时间,就像一只犹豫不决的啮齿动物,通过观察其他啮齿动物的行为,逐渐确定自己的行为逻辑,既简单,又有趣。最后希望这个过程既能给你带来乐趣,也能提高你作为系统管理员的专业素养。
1086 20
|
7月前
|
JSON 运维 Ubuntu
Linux下如何使用Curl进行网络请求
希望这篇文章能帮助您在Linux下更好地使用Curl进行网络请求。如有疑问,请随时提问!
343 10
|
10月前
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
225 17
|
10月前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将从网络安全漏洞、加密技术和安全意识三个方面进行探讨,旨在提高读者对网络安全的认识和防范能力。通过分析常见的网络安全漏洞,介绍加密技术的基本原理和应用,以及强调安全意识的重要性,帮助读者更好地保护自己的网络信息安全。
178 10
|
10月前
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将介绍网络安全的重要性,分析常见的网络安全漏洞及其危害,探讨加密技术在保障网络安全中的作用,并强调提高安全意识的必要性。通过本文的学习,读者将了解网络安全的基本概念和应对策略,提升个人和组织的网络安全防护能力。