歡迎您光臨本站 註冊首頁

通過網路安裝Linux(CentOS)系統的方法

←手機掃碼閱讀     火星人 @ 2014-03-12 , reply:0
   

一、原理

 

無光碟機、軟碟機的一台伺服器,想要安裝Linux系統。我們需要通過網卡的PXE協議,引導之後安裝Linux。流程:機器啟動-網卡引導-通過DHCP獲得IP地址-通過tftp獲得最基礎的內核文件,使用該內核文件啟動機器-啟動之後可以對安裝程序配置,選擇使用http、ftp、nfs方式遠程獲得安裝所需要的軟體包。

 

顯然,網路安裝是必須配置伺服器端的。我們的服務端需要提供以下服務:

 

DHCP

TFTP

HTTP(FTP,NFS)

 

二、服務配置

 

1.DHCP

 

配置文件:

option domain-name "mydomain";

ddns-update-style none;

default-lease-time 600;

max-lease-time 7200;

server-name "bootserver";

subnet 192.168.123.0 netmask 255.255.255.0 {

range 192.168.123.200 192.168.123.201;

deny unknown-clients;

}

host MyP5 {

filename "pxelinux.0";

server-name "bootserver";

hardware ethernet ae:32:20:00:b0:02;

fixed-address 192.168.123.90;

}

 

這是複製來的配置文件,稍微解釋一下:

filename 後面是tftp目錄下的文件,pxelinux.0 則是 syslinux 包內的文件。默認 pxelinux.0 可能在 /usr/lib/syslinux 目錄下,必須將其複製到 tftp 目錄下。

 

host MyP5 下出現的:

hardware ethernet ae:32:20:00:b0:02;

fixed-address 192.168.123.90;

 

為客戶機(需要安裝系統的機器)的 MAC 地址和所分配的IP地址。

 

2.TFTP

由於必須支持TSIZE協議,所以不能安裝最原始的TFTP包。我選擇使用 tftp-hpa 。

 

編輯文件 /etc/xinetd.d/tftp (若沒有,則添加tftp文件)(若不存在xinetd.d,請安裝 xinetd 包)

 

# default: off

# description: 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.

service tftp

{

disable = no

socket_type = dgram

protocol = udp

wait = yes

user = root

server = /usr/sbin/in.tftpd

server_args = -s /tftpboot

per_source = 11

cps = 100 2

flags = IPv4

}

 

這裡將 /tftpboot 定義為 tftp 服務的默認目錄,您可以自行修改。

 

保存之後重啟 /etc/init.d/xinetd 服務,即可開啟 tftp 服務。

 

如何測試 tftp 是否成功開啟?

 

在 tftp 目錄下創建一個文件,比如 1.txt 。

 

在 Shell 中連接 tftp 服務:

 

tftp 127.0.0.1

tftp>get 1.txt

 

若服務成功開啟,則能看到成功下載文件的提示。並在當前目錄下找到1.txt文件。

 

接著複製光碟中 isolinux 目錄下的 vmlinuz、initrd.img 文件到 /tftpboot 目錄下。

 

在 /tftpboot 中創建文件夾 syslinux.cfg 。syslinux.cfg 中保存了 pxelinux 的兩個配置文件:default、list。

 

default:

 

default linux

 

label linux

kernel vmlinuz

append initrd=initrd.img devfs=nomount nofb ramdisk_size=9216

 

你可以寫很多個label,這取決於你同時想在這台伺服器上提供多少種版本的 Linux 給客戶機安裝。一個版本一個label,當然kernel、與initrd文件名不可以重複。

 

list:

Choose one of the following Linux distributions for your installation:

Name Distribution Arch. Installation media

-----------------------

CentOS CentOS 4.4 i386 192.168.99.90:/

 

你也可以添加多行,用來選擇不同的發行版本。在選擇的時候填寫Name下的內容即可。

 

三、複製光碟文件

 

將光碟文件複製到對應目錄(ftp、http、nfs),如果是使用 http 使用以下命令將多張光碟複製到一個目錄裡面:

 

[root@bootserver] # cp -arv /media/cdrom/* /install

 

如果使用 ftp,請確保可以訪問(可以有用戶名、密碼)。

(責任編輯:A6)



[火星人 ] 通過網路安裝Linux(CentOS)系統的方法已經有357次圍觀

http://coctec.com/docs/net/show-post-68343.html