在 Ubuntu 14.04 中配置 PXE 服务器
PXE(預(yù)啟動執(zhí)行環(huán)境Preboot?Execution?Environment)服務(wù)器允許用戶從網(wǎng)絡(luò)中啟動?Linux?發(fā)行版并且可以不需要?Linux?ISO?鏡像就能同時在數(shù)百臺?PC?中安裝。如果你客戶端的計算機沒有?CD/DVD?或USB?引導(dǎo)盤,或者如果你想在大型企業(yè)中同時安裝多臺計算機,那么?PXE?服務(wù)器可以幫你節(jié)省時間和金錢。
在這篇文章中,我們將告訴你如何在?Ubuntu?14.04?配置?PXE?服務(wù)器。
?
配置網(wǎng)絡(luò)
開始前,你需要先設(shè)置?PXE?服務(wù)器使用靜態(tài)?IP。在你的系統(tǒng)中要使用靜態(tài)?IP?地址,需要編輯?“/etc/network/interfaces”?文件。
打開?“/etc/network/interfaces”?文件.
sudo?nano?/etc/network/interfaces
作如下修改:
#?回環(huán)網(wǎng)絡(luò)接口
auto?lo
iface?lo?inet?loopback
#?主網(wǎng)絡(luò)接口
auto?eth0
iface?eth0?inet?static
address?192.168.1.20
netmask?255.255.255.0
gateway?192.168.1.1
dns-nameservers?8.8.8.8
保存文件并退出。這將設(shè)置其?IP?地址為“192.168.1.20”。然后重新啟動網(wǎng)絡(luò)服務(wù)。
sudo?/etc/init.d/networking?restart
?
安裝?DHCP,?TFTP?和?NFS:
DHCP,TFTP?和?NFS?是?PXE?服務(wù)器的重要組成部分。首先,需要更新你的系統(tǒng)并安裝所有需要的軟件包。
為此,運行以下命令:
sudo?apt-get?update
sudo?apt-get?install?isc-dhcp-Server?inetutils-inetd?tftpd-hpa?syslinux?nfs-kernel-Server
?
配置?DHCP?服務(wù):
DHCP?代表動態(tài)主機配置協(xié)議Dynamic?Host?Configuration?Protocol,它主要用于動態(tài)分配網(wǎng)絡(luò)配置參數(shù),如用于接口和服務(wù)的?IP?地址。在?PXE?環(huán)境中,DHCP?服務(wù)器允許客戶端請求并自動獲得一個?IP?地址來訪問網(wǎng)絡(luò)。
1、編輯?“/etc/default/dhcp3-server”?文件.
sudo?nano?/etc/default/dhcp3-server
作如下修改:
INTERFACES="eth0"
保存?(Ctrl?+?o)?并退出?(Ctrl?+?x)?文件.
2、編輯?“/etc/dhcp3/dhcpd.conf”?文件:
?
sudo?nano?/etc/dhcp/dhcpd.conf
作如下修改:
default-lease-time?600;
max-lease-time?7200;
subnet?192.168.1.0?netmask?255.255.255.0?{
range?192.168.1.21?192.168.1.240;
option?subnet-mask?255.255.255.0;
option?routers?192.168.1.20;
option?broadcast-address?192.168.1.255;
filename?"pxelinux.0";
next-Server?192.168.1.20;
}
保存文件并退出。
3、啟動?DHCP?服務(wù).
sudo?/etc/init.d/isc-dhcp-server?start
?
配置?TFTP?服務(wù)器:
TFTP?是一種文件傳輸協(xié)議,類似于?FTP,但它不用進行用戶認(rèn)證也不能列出目錄。TFTP?服務(wù)器總是監(jiān)聽網(wǎng)絡(luò)上的?PXE?客戶端的請求。當(dāng)它檢測到網(wǎng)絡(luò)中有?PXE?客戶端請求?PXE?服務(wù)時,它將提供包含引導(dǎo)菜單的網(wǎng)絡(luò)數(shù)據(jù)包。
1、配置?TFTP?時,需要編輯?“/etc/inetd.conf”?文件.
sudo?nano?/etc/inetd.conf
作如下修改:
tftp?dgram?udp?wait?root?/usr/sbin/in.tftpd?/usr/sbin/in.tftpd?-s?/var/lib/tftpboot
保存文件并退出。
2、編輯?“/etc/default/tftpd-hpa”?文件。
sudo?nano?/etc/default/tftpd-hpa
作如下修改:
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/var/lib/tftpboot"
TFTP_ADDRESS="[:0.0.0.0:]:69"
TFTP_OPTIONS="--secure"
RUN_DAEMON="yes"
OPTIONS="-l?-s?/var/lib/tftpboot"
保存文件并退出。
3、?使用?xinetd?讓?boot?服務(wù)在每次系統(tǒng)開機時自動啟動,并啟動tftpd服務(wù)。
sudo?update-inetd?--enable?BOOT
sudo?service?tftpd-hpa?start
4、檢查狀態(tài)。
sudo?netstat?-lu
它將如下所示:
Proto?Recv-Q?Send-Q?Local?Address?Foreign?Address?State
udp?0?0?*:tftp?*:*
?
配置?PXE?啟動文件
現(xiàn)在,你需要將?PXE?引導(dǎo)文件?“pxelinux.0”?放在?TFTP?根目錄下。為?TFTP?創(chuàng)建目錄結(jié)構(gòu),并從?“/usr/lib/syslinux/”?復(fù)制?syslinux?提供的所有引導(dǎo)程序文件到?“/var/lib/tftpboot/”?下,操作如下:
?
sudo?mkdir?/var/lib/tftpboot
sudo?mkdir?/var/lib/tftpboot/pxelinux.cfg
sudo?mkdir?-p?/var/lib/tftpboot/Ubuntu/14.04/amd64/
sudo?cp?/usr/lib/syslinux/vesamenu.c32?/var/lib/tftpboot/
sudo?cp?/usr/lib/syslinux/pxelinux.0?/var/lib/tftpboot/
?
設(shè)置?PXELINUX?配置文件
PXE?配置文件定義了?PXE?客戶端啟動時顯示的菜單,它能引導(dǎo)并與?TFTP?服務(wù)器關(guān)聯(lián)。默認(rèn)情況下,當(dāng)一個?PXE?客戶端啟動時,它會使用自己的?MAC?地址指定要讀取的配置文件,所以我們需要創(chuàng)建一個包含可引導(dǎo)內(nèi)核列表的默認(rèn)文件。
編輯?PXE?服務(wù)器配置文件,使用有效的安裝選項。
編輯?“/var/lib/tftpboot/pxelinux.cfg/default”:
sudo?nano?/var/lib/tftpboot/pxelinux.cfg/default
作如下修改:
DEFAULT?vesamenu.c32
TIMEOUT?100
PROMPT?0
MENU?INCLUDE?pxelinux.cfg/PXE.conf
NOESCAPE?1
LABEL?Try?Ubuntu?14.04?Desktop
MENU?LABEL?Try?Ubuntu?14.04?Desktop
kernel?Ubuntu/vmlinuz
append?boot=casper?netboot=nfs?nfsroot=192.168.1.20:/var/lib/tftpboot/Ubuntu/14.04/amd64
initrd=Ubuntu/initrd.lz?quiet?splash
ENDTEXT
LABEL?Install?Ubuntu?14.04?Desktop
MENU?LABEL?Install?Ubuntu?14.04?Desktop
kernel?Ubuntu/vmlinuz
append?boot=casper?automatic-ubiquity?netboot=nfs?nfsroot=192.168.1.20:/var/lib/tftpboot/Ubuntu/14.04/amd64
initrd=Ubuntu/initrd.lz?quiet?splash
ENDTEXT
保存文件并退出。
編輯?“/var/lib/tftpboot/pxelinux.cfg/pxe.conf”?文件。
sudo?nano?/var/lib/tftpboot/pxelinux.cfg/pxe.conf
作如下修改:
MENU?TITLE?PXE?Server
NOESCAPE?1
ALLOWOPTIONS?1
PROMPT?0
MENU?WIDTH?80
MENU?ROWS?14
MENU?TABMSGROW?24
MENU?MARGIN?10
MENU?COLOR?border?30;44?#ffffffff?#00000000?std
保存文件并退出。
?
為?PXE?服務(wù)器添加?Ubuntu?14.04?桌面啟動鏡像
對于這一步需要?Ubuntu?內(nèi)核和?initrd?文件。要獲得這些文件,你需要?Ubuntu?14.04?桌面?ISO?鏡像。你可以通過以下命令下載?Ubuntu?14.04?ISO?鏡像到?/mnt?目錄:
sudo?cd?/mnt
sudo?wget?http://releases.ubuntu.com/14.04/ubuntu-14.04.3-desktop-amd64.iso
注意:?下載用的?URL?可能會改變,因為?ISO?鏡像會進行更新。如果上面的網(wǎng)址無法訪問,看看這個網(wǎng)站,了解最新的下載鏈接。
掛載?ISO?文件,使用以下命令將所有文件復(fù)制到?TFTP文件夾中:
sudo?mount?-o?loop?/mnt/ubuntu-14.04.3-desktop-amd64.iso?/media/
sudo?cp?-r?/media/*?/var/lib/tftpboot/Ubuntu/14.04/amd64/
sudo?cp?-r?/media/.disk?/var/lib/tftpboot/Ubuntu/14.04/amd64/
sudo?cp?/media/casper/initrd.lz?/media/casper/vmlinuz?/var/lib/tftpboot/Ubuntu/
?
將導(dǎo)出的?ISO?目錄配置到?NFS?服務(wù)器上
現(xiàn)在,你需要通過?NFS?協(xié)議來設(shè)置“安裝源鏡像(?Installation?Source?Mirrors)”。你還可以使用?HTTP?和?FTP?來安裝源鏡像。在這里,我已經(jīng)使用?NFS?輸出?ISO?內(nèi)容。
要配置?NFS?服務(wù)器,你需要編輯?“/etc/exports”?文件。
sudo?nano?/etc/exports
作如下修改:
/var/lib/tftpboot/Ubuntu/14.04/amd64?*(ro,async,no_root_squash,no_subtree_check)
保存文件并退出。為使更改生效,輸出并啟動?NFS?服務(wù)。
sudo?exportfs?-a
sudo?/etc/init.d/nfs-kernel-server?start
現(xiàn)在,你的?PXE?服務(wù)器已經(jīng)準(zhǔn)備就緒。
?
配置網(wǎng)絡(luò)引導(dǎo)?PXE?客戶端
PXE?客戶端可以是任何支持?PXE?網(wǎng)絡(luò)引導(dǎo)的計算機系統(tǒng)。現(xiàn)在,你的客戶端只需要在系統(tǒng)的?BIOS?中設(shè)置?“從網(wǎng)絡(luò)引導(dǎo)(Boot?From?Network)”?選項就可以啟動并安裝?Ubuntu?14.04?桌面。
現(xiàn)在準(zhǔn)備出發(fā)吧?-?用網(wǎng)絡(luò)引導(dǎo)啟動你的?PXE?客戶端計算機,你現(xiàn)在應(yīng)該看到一個子菜單,顯示了我們創(chuàng)建的?Ubuntu?14.04?桌面的菜單項。
?
結(jié)論
配置使用?PXE?服務(wù)器從網(wǎng)絡(luò)啟動安裝能提高效率和節(jié)省時間。你可以在本地網(wǎng)絡(luò)中同時安裝數(shù)百個客戶端。所有你需要的只是一個?PXE?服務(wù)器和能啟動?PXE?的客戶端。
免費領(lǐng)取兄弟連IT教育原創(chuàng)linux運維工程師視頻/細(xì)說linux教程,詳情咨詢官網(wǎng)客服:http://www.lampbrother.net/linux/
或者勾搭Q2430675018
歡迎加入linux交流群?478068715
轉(zhuǎn)載于:https://blog.51cto.com/itpaqi/1711725
總結(jié)
以上是生活随笔為你收集整理的在 Ubuntu 14.04 中配置 PXE 服务器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Annotation 最终奥义,元注解
- 下一篇: nc 结合htc hts 反弹shell