天天看點

linux作業系統如何配網絡,PXE網絡安裝Linux作業系統原理與詳細過程

在工作中經常會遇到這樣的情況:想要安裝Linux但是計算機不帶光驅或軟驅,或者是筆記本配置的非标準的軟驅和光驅,如1394接口,USB接口等,在Linux安裝時所引導的Linux核心一般都不會帶這些接口的驅動,是以也無法通過本地安裝Linux,此外,在一些場合,如機房,IT實驗室,工廠生産線,有大量的計算機需要同時安裝Linux,如果通過光驅的方式一個個安裝,不僅效率低,也不利于維護。這是時候你就需要PXE的強大功能了。本文将就PXE的基本原理和工作方式進行簡要介紹。具體的實踐過程需要比較豐富的網絡知識。

1.作業系統安裝的流程

通用流程:首先,bios啟動,選擇作業系統的啟動(安裝)模式(此時,記憶體是空白的),然後根據相關的安裝模式,尋找作業系統的引導程式(不同的模式,對應不同的引導程式當然也對應着不同的引導程式存在的位置),引導程式加載檔案系統初始化(initrd)程式和核心初始鏡像(vmlinuz),完成作業系統安裝前的初始化;接着,作業系統開始安裝相關的系統和應用程式。

硬碟安裝的流程:bios啟動——MBR尋找grub——grub程式讀取menu.list等配置檔案,找到核心啟動鏡像和相關初始化程式,安裝(或者啟動)。

PXE(Pre-boot Execution Environment)是由Intel設計,可以使計算機通過網絡啟動的協定。協定分為client和server兩端,PXE client在網卡的ROM中,當計算機啟動時,BIOS把PXE client調入記憶體執行,并顯示出指令菜單,經使用者選擇後,PXE client将放置在遠端的作業系統通過網絡下載下傳到本地運作。

pxe網絡安裝的流程:bios啟動——pxe client中的程式進入記憶體,顯示指令菜單——此程式開始尋找網絡引導程式(bootstrap檔案,這個檔案的名字随着發行版的不同而不同,在centos中,它是pxelinux.0)——引導程式讀取配置檔案pxelinux.cfg,獲得系統初始化的相關檔案資訊——系統啟動,開始進行安裝。

2.pxe模式安裝作業系統的原理2.1安裝流程

客戶機從自己的PXE網卡啟動,向本網絡中的DHCP伺服器索取IP,并搜尋引導檔案的位置

DHCP伺服器傳回分給客戶機IP以及bootstrap檔案的放置位置(該檔案一般是放在一台TFTP伺服器上)

客戶機向本網絡中的TFTP伺服器索取bootstrap檔案

客戶機取得bootstrap檔案後之執行該檔案

根據bootstrap的執行結果,通過TFTP伺服器加載核心和檔案系統

進入安裝畫面, 此時可以通過選擇FTP,HTTP,NFS方式之一進行安裝

2.2流程小結總結就是: 1)網卡的client 網卡rom 尋找dhcp伺服器,由/etc/dhcp.conf得到ip和引導程式所在地點

2)有dhcp.conf(引導程式檔案名)和tftp的配置(tftp跟路徑,裡面有引導程式和系統初始化程式),得到引導程式pxelinux啟動檔案的絕對路徑,運作引導程式,讀取啟動配置檔案pxelinux.cfg/default,得到作業系統初始化的兩個相關檔案

3)選擇安裝方式

用戶端廣播dhcp請求——伺服器相應請求,建立連結——由dhcp和tftp配置得到ip還有引導程式所在地點——用戶端下載下傳引導程式并開始運作——引導程式讀取

2.3.相關檔案位置與内容:

dhcp配置檔案/etc/dhcpd/dhcp.conf——ip管理與引導程式名稱

tftp配置檔案/etc/xinetd.d/tftp——tftp根目錄,和上面的引導程式名稱組成完整路徑

引導程式讀取的配置檔案/tftpboot/pxelinux.cfg/default——啟動核心其他

3.實戰過程

實戰環境;centos 6.3,kernel 2.6.32

3.1安裝前的準備:

軟硬體配置:網卡要支援pxe啟動,作業系統也要支援pxe啟動,另外有ftp伺服器用于存儲作業系統的安裝檔案,dhcp伺服器用于配置設定ip

3.2伺服器配置

1)配置dhcp伺服器

由于PXE客戶機通常是尚未裝系統的裸機,是以為了如伺服器取得聯系并正确下載下傳相關引導檔案,需要預先配置好DHCP服務來自動配置設定位址并告知引導檔案的位置。

linux作業系統如何配網絡,PXE網絡安裝Linux作業系統原理與詳細過程

注明:filename這一個選項很重要,它的作用是指明bootstrap所在的位置,一般是指向一個TFTP伺服器的某個目錄下。這裡是相對路徑,其中路徑的上半部分在的一個配置檔案之中。

2)配置tftp伺服器

TFTP服務的配置檔案是/etc/xinetd.d/tftp,RedHat9 預設安裝已經生成了該檔案

linux作業系統如何配網絡,PXE網絡安裝Linux作業系統原理與詳細過程

注明:這個檔案基本上不用改動,但是需要注意的的是server_args= -s /tftpboot這一行,它的含義是将/tftpboot作為root目錄,這樣在dhcpd.conf中的filename一行就應該寫bootstrap的相對路徑: filename “pxelinux.0”,這是出于安全方面考慮的.如果你去掉了-s這個參數,那幺就要在filename一行指出bootstrap的絕對路徑: filename “/tftpboot/pxelinux.0”.注意,這裡-s的内容會因為發行版的内容不同而不同,一般不用改動。

3.3添加引導程式

Bootstrap對于支援網絡安裝的作業系統,Bootstrap基本上都可以從安裝源檔案上找到,對于本例來說,centos的bootstrap就是cdrom:/isolinux/pxelinux.0我們把它們都拷貝到tftpboot下.

3.4編輯引導配置檔案

把centos第一張安裝CD光牒上images/pxeboot目錄下的initr.img和vmlinux也考到tftpboot/目錄下。在/tftpboot建立pxelinux.cfg目錄,用于放isolinux的配制檔案。CD光牒isolinux/下有一個isolinux.cfg檔案,把它拷貝到/tftpboot/pxelinux.cfg/目錄下并改名為default.下面為修改後的default檔案:

default linux

prompt 1

timeout 30

label linux

kernel vmlinuz

append initrd=initrd.img

這個Default 檔案很容易看懂,就是告訴啟動後使用那個核心引導

3.5開始安裝1)確定:伺服器端剛才配置的幾個服務都處于開啟狀态;關閉防火牆;bios中選擇從網絡啟動

2)剩下的步驟和從硬碟安裝相同

本文由社群會員“趙海川@新浪雲計算”分享

位址:http://www.aixchina.net/Article/177741

也可以直接搜尋公衆号名稱“AIX專家俱樂部”或微信号“AIXChina”關注