-pxe

一. BootStraping(OS install):
1. pxe:preboot excution environment ,
預啟動執行環境,由intel開發,可實現無人值守自動安裝操作系統
( 依賴于dhcp (dhcpd )服務器與 ftp(lftp) 服務器)
2. pxe 自動化系統安裝的流程:
1. client 從pxe網卡模式啟動, 并向dhcp服務獲取ip地址,
此時dhcp服務會設置next_server 地址以及 filename (pxelinux.0)
告知client 前往指定ftp服務器(常為lftp瑣碎文件服務器)獲取pxelinux.0 即pxe的啟動引
導文件
2. client獲取到pxelinux.0,在本地執行,pxe啟動后,提供安裝選擇界面(菜單),
3. 在選擇對應安裝項目后, 會根據配置文件,前往指定的ftp ,獲取系統內核文件vmlinuz,以及
偽文件系統inintrd.img,在本地加載內核與偽文件系統
4. 后再根據配置文件,前往指定的ftp服務器,加載指導系統安裝的kickstart配置文件,
根據kickstart文件,定制系統各項參數,并自動安裝
3.流程以及涉及的文件詳解:
1. dhcp: 常用dchpd , 安裝,配置dchpd,同時加入next-server, filename ,并啟動
2. ftp: 常用lftp 瑣碎文件服務器,安裝,配置lftp,并從光盤中,拷貝相應的內核文件,偽文件系統
鏡像到lftp的共享文件夾中
文件列表:(需要先安裝syslinux, 以提供pxelinux.0文件)
centos 6:
/usr/share/syslinux/pxelinux.0 #pxe啟動引導文件
/media/cdrom/images/pxeboot/{vmlinuz,initrd.img}
#系統內核文件
cp /media/cdrom/isolinux/{boot.msg,vesamenu.c32,splash.jpg}
#提供與cdrom安裝時一樣的界面(菜單)文件
#此項也可以使用pxe的菜單界面文件,按需選擇
/media/cdrom/isolinux/isolinux.cfg #pxe界面配置文件
centos 7: (與6的安裝配置相似)
/usr/share/syslinux/pxelinux.0
/media/cdrom/images/pxeboot/{vmlinuz,initrd.img}
/usr/share/syslinux/{chain.c32,mboot.c32,menu.c32,memdisk}
#此處使用的是pxe自身的菜單界面文件
==========================================================
二. tftp server:
#lftp的配置相對簡單,只要安裝,并將共享的文件放入指定目錄,啟動lftp服務即可
監聽: 69/udp
安裝與配置:
# yum install tftp-server tftp
啟動:
CentOS 7:
systemctl start tftp.socket
CentOS 6:
chkconfig tftp on
service xinetd restart
#由xinetd托管監聽
默認的文件根目錄:
/var/lib/tftpboot/
============================================================
三.配置PXE環境:
1. CentOS 7:
yum -y install syslinux
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
#將pxe啟動引導文件內放入lftp共享文件夾
cp /media/cdrom/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot
##將內核文件內放入lftp共享文件夾
cp /usr/share/syslinux/{chain.c32,mboot.c32,menu.c32,memdisk} /var/lib/tftpboot
##將pxe菜單界面文件內放入lftp共享文件夾cd
mkdir /var/lib/tftpboot/pxelinux.cfg/
#創建pxe配置文件的目錄
———————————————————————————-
#修改啟動菜單配置
#注意:centos 7中,此文件默認不存在, 可自行創建
vim /var/lib/tftpboot/pxelinux.cfg/default
default menu.c32 #菜單配置文件
prompt 5
timeout 30
MENU TITLE CentOS 7 PXE Menu
LABEL linux
MENU LABEL Install CentOS 7 x86_64 #顯示標題
KERNEL vmlinuz #指定內核文件
APPEND initrd=initrd.img #指定偽文件系統鏡像
inst.repo=http://192.168.10.9/centos/7/x86_64 #指定yum倉庫
LABEL linux_autoinst
MENU LABEL Install CentOS 7 x86_64 auto
KERNEL vmlinuz
APPEND initrd=initrd.img inst.repo=http://192.168.10.9/centos/7/x86_64 ks=http://192.168.10.9/kickstarts/centos7.cfg
#指定kickstart 文件以及yum倉庫地址
效果示例:
-pxe
———————————————————————————
2. CentOS 6:
yum -y install syslinux
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
cp /media/cdrom/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/
cp /media/cdrom/isolinux/{boot.msg,vesamenu.c32,splash.jpg}
/var/lib/tftpboot/
#此處從光盤中拷貝光盤啟動安裝的界面文件,以提供在pxe環境下,實現
與光盤安裝時一樣的界面,
#也可使用pxe的安裝界面文件,安秀選擇
mkdir /var/lib/tftpboot/pxelinux.cfg/
cp /media/cdrom/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
#拷貝光盤安裝界面的配置文件
內容如下所示:
display boot.msg
#界面配置:
menu background splash.jpg
menu title Welcome to CentOS 6.7 MageEdu!
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 autoinst #自動化安裝項
menu label ^Auto Install CentOS
menu default
kernel vmlinuz
append initrd=initrd.img ks=ftp://192.168.10.16/pub/centos6.cfg
#指定kickstart文件,實現自動化加載配置
label linux #光盤安裝
menu label ^Install or upgrade an existing system
kernel vmlinuz
append initrd=initrd.img
label vesa #
menu label Install system with ^basic video driver
kernel vmlinuz
append initrd=initrd.img 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 –
效果示例:
-pxe
============================================================
四.dhcpd
1. DHCP:Dynamic Host Configuration Protocol
arp –> address resolving Protocol
IP –> MAC
rarp –> reverse arp
MAC –> IP
bootp –> boot protocol
dhcp: lease time, bootp
2. 工作流程:廣播
(1) Client:dhcp discover (廣播方式尋找dhcp服務端)
(2) Server: dhcp offer(IP/Netmask, GW, DNS Server, NTP Server, Wins Server, …)
(3) Client:dhcp request
(4) Server:dhcp ack
3. lease time:IP租約期限;
續租:50%, 75%, 87.5%, 93.75%
續租過程:
1. dhcp request
2. dhcp ack|nak
4. 實現:
dhcp :
(isc.org) – The dhcp package provides the ISC DHCP service and relay agent.
dnsmasq:
(dns, dhcp) – Dnsmasq is lightweight, easy to configure DNS forwarder
and DHCP server. It is designed to provide DNS and, optionally, DHCP, to a
small network.
5. 程序環境:
安裝:
yum install dhcp
dhcp server:
/usr/sbin/dhcpd
IPV4網絡配置:
/etc/dhcp/dhcpd.conf
/usr/lib/systemd/system/dhcpd.service
IPV6網絡配置:
/etc/dhcp/dhcpd6.conf
/usr/lib/systemd/system/dhcpd6.service
dhcrelay: #dhcp中繼代理,用于實現跨網段的dhcp服務
/usr/sbin/dhcrelay
/usr/lib/systemd/system/dhcrelay.service
監聽的地址和端口:
Server: 67/udp
Client: 68/udp
6. 配置文件:/etc/dhcp/dhcpd.conf 詳解:
默認情況下,/etc/dhcp/dhcpd.conf 文件為空,
可將/usr/share/doc/dhcp-###/dhcpd.conf.sample 模板復制使用
配置指令:
option選項:配置給客戶端的相信息
指令:定義dhcp server的工作特性
配置有級別之分:
全局配置
子網配置
主機配置
常用的配置:
default-lease-time 600;?。DJ租約期限
max-lease-time 7200; ?。W铋L租約期限
option domain-name “search_domain.tld”; #搜索域定義
option domain-name-servers DNS_SERVER1, DNS_SERVER2, DNS_SERVER3;
#全局DNS服務器
option routers GW1, GW2, …;
#全局默認網關
option broadcast-address BROADCAST_ADDRESS;
#全局子網掩碼
#子網范圍:
subnet NETWORK netmask MASK {
range START_IP END_IP;
#eg:
# range 10.254.239.10 10.254.239.20;
}
# 定義網絡作用域,即一個子網,主要用于指明地址池;
#靜態ip主機定義
host client_name {
hardware ethernet client_mac; #client端的mac
fixed-address IP_ADDR; #指定的IP
}
其它指令:
filename:指明引導文件名稱;
next-server IP:指明引導文件所在的服務器的主機IP;
filename “pxelinux.0″;
配置實例:(dhcpd僅有下列項即可,其他項為可選)
#注意: dhcp服務器,需要手動給定地址,
#dhcp服務器地址已經設置為192.168.1.1
option domain-name “test.org”; #搜索域定義
option domain-name-servers 192.168.1.1;
#全局DNS服務器
option routers 192.168.1.1;
#全局默認網關
option broadcast-address 255.255.255.0;
#全局子網掩碼
#子網范圍:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.2 192.168.1.200;
next-server 192.168.1.1;
filename “pxelinux.0”
}

原創文章,作者:ldt195175108,如若轉載,請注明出處:http://www.www58058.com/59952

(3)
ldt195175108ldt195175108
上一篇 2016-11-18
下一篇 2016-11-18

相關推薦

  • Linux學習總結及練習&day08-sed文本處理工具

    第一部分、Linux文本處理三劍客之sed(Stream EDitor)文本編輯工具     一、sed的基本功能工作原理     sed是一種流編輯器,它一次處理一行內容。處理時,把當前處理的行存儲在臨時緩沖區中,稱為“模式空間”(pattern space),接著用sed命令…

    Linux干貨 2016-08-10
  • vim編輯器

    一、vim簡介    vi: Visual Interface,文本編輯器     文本: ASCII, Unicode     文本編輯種類:         行編輯器: sed…

    Linux干貨 2016-08-10
  • sed和vim的愛恨糾纏

    處理文本的工具sed sed是一種流編輯器,它一次處理一行內容。處理時,把當前處理的行存儲在臨時緩沖區中,稱為“模式空間”(patternspace),接著用sed命令處理緩沖區中的內容,處理完成后,把緩沖區的內容送往屏幕。接著處理下一行,這樣不斷重復,直到文件末尾。文件內容并沒有改變,除非你使用重定向存儲輸出。Sed主要用來自動編輯一個或多個文件,簡化對文…

    2016-08-10
  • 馬哥教育網絡班20期+第10周課程練習

     1. 請詳細描述CentOS系統的啟動流程(詳細到每個過程系統做了哪些事情) 1. 加電自檢:POST     通電后主板CMOS中的BIOS(基本輸入輸出系統)將進行硬件自檢并簡單設置,根據硬盤等     相關設備情況進入下一步   &…

    學員作品 2016-08-15
  • 馬哥教育網絡班20期+第8周博客作業

    1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。   網橋:鏈接層設備,基于MAC地址過濾。   集線器:物理層設備,基本都屬于半雙工模式。集線器與網橋在現在的局域網中基本都不用了。   二層交換機:基本MAC轉發數據,功能齊全的可支持VLAN等功能。常見的有100/1…

    學員作品 2016-09-10
  • sed 流編輯器使用詳解

    一、Stream EDitor, 行編輯器   sed是一種流編輯器,它一次處理一行內容。處理時,把當前處理的行存儲在臨時緩沖區中,稱為“模式空間”(pattern space),接著用sed命令處理緩沖區中的內容,處理完成后,把緩沖區的內容送往屏幕。接著處理下一行,這樣不斷重復,直到文件末尾。文件內容并沒有改變,除非你使用重定向存儲輸出…

    2016-08-10
欧美性久久久久