iT邦幫忙

0

關於PXE install OS

  • 分享至 

  • xImage

各位好小弟曾曾曾在某個美商的科技廠實習過
由於為了要大量部屬OS因此他們有做一個PXE的系統
這個OS可以做到透過cmd backup system image及鏡像至硬碟
考慮到他的command以及UI可以推出可能是Windows PE
後來覺得這種方法挺不錯的也想要建置一個這樣的環境因此開始做功課研究研究
而我得到的整個邏輯架構應該是這樣


(圖1-PXE功能架構圖)

Q1.如果我打算要做出一個這樣的環境,那我應該要如何架設這樣的PXE
Q2.系統的選擇應該要用Linux還是Windows做PXE server運行WinPE?
Q3.繼上題,請問有推薦的做法嗎?
Q4.這樣的WinPE要怎麼架出(如上圖1)下面的三種功能?
Q5.有辦法在透過安裝系統時預先將需要的軟體安裝至系統中嗎?

※補充在上傳下載image的時候要直接輸入這份image的名稱

預先感謝前輩們的指導

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
7
Ray
iT邦大神 1 級 ‧ 2022-11-27 11:08:29
最佳解答

要完成 PXE 網路開機, 有幾個關鍵元件:

  1. DHCP Server 跟相關設定
  2. TFTP Server 跟相關設定
  3. 支援 PXE 開機協定的網卡

其中, TFTP Server 就是用來當成 PXE Server 應用角色的, 只不過他用了 TFTP 通訊協定, 所以這邊直接講 TFTP Server, 各位比較容易找到相關的除錯資訊.

此外, DHCP Server 跟 TFTP Server 可以是同一台, 也可以不同台, 不過這兩種情境, 有些設定參數會不太相同, 為了避免造成初學者更多查修上的困擾, 以下是以兩者各自獨立運行一台主機為例, 此處不討論兩者放在同一台主機上的處理方法.

PXE 協定開機的過程是這樣:

--1--PXE 網卡送出 DHCP 要求
Client 電腦的 BIOS 起始完畢之後, 如果發現 Boot 選項輪到 PXE 開機的話, 他會把開機權限交給網卡上的 PXE Firmware. PXE 必須先取得一個網路 IP 才能繼續下去, 這步驟跟一般普通的 DHCP Client 相同, 她會送出 DHCP Discover 廣播, 然後等待網路上的 DHCP Server 回覆.

--2--DHCP Server 配發 IP + Option參數
DHCP Server 配發 IP 的部分, 也跟一般的 DHCP 程序相同, 透過 DHPC Offer 來完成. 不過, 當 DHCP Server 發送 DHCP Offer 的時候, 他會順便在封包裡面, 夾帶兩個 Option 參數出來:

Option 66: Next Boot Server IP addrtess
Option 67: Boot Filename

這兩個參數, 需要事前就在 DHCP Server 上面設定好, 他才知道要送; 以 Windows DHCP Server 為例, 你可以在管理介面上, 加進這兩個參數:

Linux 版的 DHCP Server 當然也可以發送這兩個參數, 改 dhcpd config 就可以了.

--3-- PXE 網卡找尋開機映像
Client 端的 PXE 網卡從 DHCP Server 收到 Option 66 之後, 他就可以從參數中知道 TFTP Server 的 IP 位置了, 同時也可以從 Option 67 知道: 他該由 TFTP Server 下載哪一個 Image File 來開機?

於是她就用 TFTP 協定, 連上 TFTP Server (或稱 PXE Server), 下載指定的 Image File 到自己電腦的 RAM 裡面, 然後從自己的 RAM 執行這個 Image, 進入開機程序.

以上面圖中的 Option 內容為例:
他會去 172.21.10.3 這台 TFTP Server,
下載 boot\x64\wdsnbp.com 這個 Image 來開機.

這個開機 Image 可以是任何作業系統, 但是它必須全部都要在 RAM 裡面執行, 因為在這個階段, 所有周邊都還沒有被初始化, 所以 OS 不能使用其他硬體周邊, 例如:硬碟等等. 要等到他自己在 RAM 開機完畢之後, 看看他自己掛載了哪些驅動程式? 是否能夠初始化這台電腦的周邊? 才能決定下一部可以使用到甚麼?

上述全部過程大概像這樣 (圖中的 4/5 是由已經完成開機的 OS 來做, 跟 PXE 無關):

大部分 Linux 發布套件裡的 Live CD ISO 就是可以完全使用 RAM 執行的開機 OS.

WinPE 也可以完全在 RAM 裡面執行, 但是製作出一個, 可以被 PXE 開機的 WinPE Image 檔案, 需要許多額外步驟, 請參考以下的文件:
設定 PXE 伺服器以載入 Windows PE

至於 WinPE 啟動之後要做甚麼事情? 那就看你在上面把甚麼程式給包進去了; 如果是要部署新電腦的話, 通常是叫 WinPE 去安裝一套全新的 Windows Desktop 作業系統...

不過, 若是要部署純 Windows 環境的話, 改用全套的 Microsoft WDS 會更方便:
Windows Deployment Service(WDS) 的設定教學與其初階應用|利用 WDS 載入 WinPE 環境安裝作業系統

行家一出手
便知有沒有
/images/emoticon/emoticon24.gif/images/emoticon/emoticon24.gif/images/emoticon/emoticon24.gif

非常感謝大神…我回去立馬測試!!

尼克 iT邦大師 1 級 ‧ 2022-11-27 22:38:34 檢舉

/images/emoticon/emoticon12.gif

0
DennisLu
iT邦研究生 1 級 ‧ 2022-11-30 18:08:39

如果懂得用再生龍的企鵝龍,就包辦一大部分,
基本上你想透過網路開機,然後開機後還原事先做好的disk image或是partition image是沒問題的。
boot起來後,半自動或全自動都行,
至於預設就有什麼環境,
可能就製作image的時候直接windows sysprep好後製作image當來源image。

0
rb1102
iT邦研究生 5 級 ‧ 2022-12-01 10:00:25

MDT+WDS 應該是你要的

我要發表回答

立即登入回答