Kickstart+HTTP+DHCP+TFTP+PXElinux實現RedHat的網路自動安裝(轉)
Kickstart+HTTP+DHCP+TFTP+PXElinux實現RedHat的網路自動安裝(轉)[@more@]我們知道RH中的Kickstart可以實現RedHat光碟啟動後的自動安裝,如果把ks.cfg及RPM安裝檔案考到一臺HTTP或NFS伺服器上,就可以實現網路自動安裝,但還是需要RedHat的啟動盤來啟動機器,但加上DHCP、TFTP和PXElinux及支援PXE的網路卡,噢,那就可以實現遠端啟動了。也就是說,有了上面的條件,你只要給一臺支援PXE的客戶機上電,然後再打入一個設定好的命令就可以安裝好一RedHat臺機器了。
實現上面安裝的過程是這樣的:PXE網路卡啟動------DHCP伺服器------獲得IP------從TFTP上下載pxelinux.0、vmlinuz、initrd------啟動系統------透過PEXlinux去HTTP下載ks.cfg檔案-----跟據ks.cfg去HTTP下載RPM包及安裝系統------完成安裝。
具體實現的過程是這樣的:
1、 配製一個HTTP伺服器(當然也可以是NFS、FTP)及kickstart檔案:
1) 如何配HTTP我就不說了,配好後,在HTTP的DocumentRoot目錄下(一般為/var/www/html)建一個rh9目錄,用於放RedHat9的安裝檔案。把RedHat9第一張安裝盤的RedHat目錄及下面的內容全部考到這個目錄下,把第二、第三張盤的RPMS目錄下的rpm包考到rh9/RedHat/RPMS目錄下,完成安裝檔案的考貝。service httpd restart開啟HTTP服務。可以在瀏覽器內打入:http://192.168.168.6/rh9看一下,是不是能看到RedHat目錄。
2) 用redhat-config-kickstart命令做一個ks.cfg檔案,注意在“安裝方法”選項中 選HTTP,在“HTTP伺服器:”中打入HTTP伺服器的IP地址,在“HTTP目錄:”中打入rh9,其它的我就不多說了。做好後把這個ks.cfg檔案考到HTTP伺服器的DocumentRoot/rh9目錄下。
3) 在一臺機器上做一下測試(注意:因為是自動安裝,這臺機器的上的資料可能全部被格掉喔)。用光碟啟動機器,在boot:提示符下打入:linux ks=http://192.168.168.6/rh9/ks.cfg,看一下是不是能實現自動安裝,如果能,OK我們一半的工作已經做好了。
2、 配製DHCP、TFTP、和PXElinux。(當然這些服務可以和HTTP放在一臺服器上)
1) 做一臺TFTP伺服器太容易了,用rpm –qa | grep tftp看一下tftp有沒安裝,沒有的話安裝一下。用chkconfig tftp on 開啟xinetd代理的tftp服務。
2) 做一臺DHCP伺服器,這是關鍵。下面是我的dhcp.conf檔案:
ddns-update-style interim;
ignore client-updates;
allow booting; #定義可以PXE 啟動
allow bootp; #定義支援boottp[/color:ffa4e84ade]
subnet 192.168.168.0 netmask 255.255.255.0 {
option routers 192.168.168.230; #定義預設閘道器
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.168.6; #定義nameServer
option time-offset -18000; # Eastern Standard Time
range dynamic-bootp 192.168.168.12 192.168.168.254;
default-lease-time 21600;
max-lease-time 43200;
# Group the PXE bootable hosts together 定義可以PEX啟動的主機的組
group {
# PXE-specific configuration directives...
next-server 192.168.168.6; #TFTPServer的IP
filename "/pxelinux.0";#pxelinux loader檔案位置
# You need an entry like this for every host
# unless you're using dynamic addresses #可PEX啟動的主
#機的IP與MAC地址的邦定
host wy {
hardware ethernet 00:00:E2:89:9BB;
fixed-address 192.168.168.128;
}
}[/color:ffa4e84ade]}
紅色的部分為在DHCP中支援TFTP及PXElinux的所要新增的部分。service dhcpd restart 開啟DHCP服務。
3) 配製PEXlinux。要遠端啟動機器,就必須要有PXElinux這個由syslinux、isolinux派生出來的,支援PXE的bootloader,它可以實現遠端透過PEX啟動一臺機器。把/usr/lib/syslinux/pxelinux.0考到/tftpboot目錄下,把RedHat9第一張安裝光碟上/image/pxeboot/initr.img和vmlinux也考到/tftpboot目錄下。在/tftpboot建一個pxelinux.cfg目錄,用於放syslinux的配製檔案。Sysconfig的配製檔案有現成的可用,在rh9第一張安裝光碟isolinux/下有一個isolinux.cfg檔案,把它考成/tftpboot/default,把isolinux/*.msg考到/tftpboot下(RedHat的安裝光碟的Loader就是個isolinux,呵呵)。對default(也就是isolinux.cfg)作一下修改,下面是我的default檔案:
default local [/color:ffa4e84ade]
prompt 1
timeout 30
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
F7 snake.msg
label local
localboot 0[/color:ffa4e84ade]
label linux
kernel vmlinuz
append initrd=initrd.img devfs=nomount ramdisk_size=9216
label text
kernel vmlinuz
append initrd=initrd.img text devfs=nomount ramdisk_size=9216
label expert
kernel vmlinuz
append expert initrd=initrd.img devfs=nomount ramdisk_size=9216
label ks
kernel vmlinuz
append ks initrd=initrd.img devfs=nomount ramdisk_size=9216
label nofb
kernel vmlinuz
append initrd=initrd.img devfs=nomount nofb ramdisk_size=9216
label lowres
kernel vmlinuz
append initrd=initrd.img lowres devfs=nomount ramdisk_size=9216
label autoinstall
kernel vmlinuz
append ks=http://192.168.168.6/rh9/ks.cfg initrd=initrd.img devfs=nomount ramdisk_size=9216 nofb[/color:ffa4e84ade]
紅色的部份是我加的,用於實現本地硬碟啟動或支援kickstart的PXE網路自動安裝。
cat一下/tftpboot/boot.msg檔案:
splash.lss
- To Local boot 02Red Hat07 Linux , type:
0f07.[/color:ffa4e84ade]
- To install or upgrade 02Red Hat07 Linux in graphical mode,
press the 0f linux07 key.
- To install or upgrade 02Red Hat07 Linux in text mode, type:
0flinux text07.
- To Auto Install 02Red Hat07 Linux , type:
0flinux autoinstall07.[/color:ffa4e84ade]
- Use the function keys listed below for more information.
02[F1-Main] [F2-Options] [F3-General] [F4-Kernel] [F5-Rescue]07
紅色行是我加入的,用於顯示Local boot 和autoinstall選項。
3、 OK,到現在伺服器端的配製已經基本完成了,讓我們來試一下。用一臺支援PXE的機器加電啟動,按F12,一般機器啟動時會有提示(請進入BIOS看一下,確認網路卡或主機板的PXE功能已經開啟),選擇LAN啟動,看到了什麼? “DHCP…………………FFFFFFFFFFFFF”接著一個和光碟啟動的差不多的畫面,是吧?按一下F2試一下,F2的選項是不是也出來了。打入linux rescue 試試,是不是進入了rescue模式?HOHO~~,以後客戶機啟不來還要用光碟來重啟進rescue模式嗎?當然不用了,把安裝光碟扔了吧,哈哈。
再重啟機器,按F12,選擇LAN,在PXE啟動安裝介面的boot:提示符下打入linux autoinstall試試?HOHO~~,一個多小時後,一臺新的rh9就這麼安裝好了。是不是很方便呢?
4、 參考文件:/usr/share/doc/syslinux-1.75/pxelinux.doc
/usr/share/doc/syslinux-1.75/isolinux.doc
/usr/share/doc/syslinux-1.75/syslinux.doc
/usr/share/doc/dhcp-3.0pl1/README
/usr/share/doc/httpd-2.0.40/README
/usr/share/doc/pxe-0.1/README
5、最後,感謝我的RHCE老師simon cheng,是他給了我提示和幫助,雖然有時我問他10個不同的問題,他回答我9個是同一個答案:See readme。
實現上面安裝的過程是這樣的:PXE網路卡啟動------DHCP伺服器------獲得IP------從TFTP上下載pxelinux.0、vmlinuz、initrd------啟動系統------透過PEXlinux去HTTP下載ks.cfg檔案-----跟據ks.cfg去HTTP下載RPM包及安裝系統------完成安裝。
具體實現的過程是這樣的:
1、 配製一個HTTP伺服器(當然也可以是NFS、FTP)及kickstart檔案:
1) 如何配HTTP我就不說了,配好後,在HTTP的DocumentRoot目錄下(一般為/var/www/html)建一個rh9目錄,用於放RedHat9的安裝檔案。把RedHat9第一張安裝盤的RedHat目錄及下面的內容全部考到這個目錄下,把第二、第三張盤的RPMS目錄下的rpm包考到rh9/RedHat/RPMS目錄下,完成安裝檔案的考貝。service httpd restart開啟HTTP服務。可以在瀏覽器內打入:http://192.168.168.6/rh9看一下,是不是能看到RedHat目錄。
2) 用redhat-config-kickstart命令做一個ks.cfg檔案,注意在“安裝方法”選項中 選HTTP,在“HTTP伺服器:”中打入HTTP伺服器的IP地址,在“HTTP目錄:”中打入rh9,其它的我就不多說了。做好後把這個ks.cfg檔案考到HTTP伺服器的DocumentRoot/rh9目錄下。
3) 在一臺機器上做一下測試(注意:因為是自動安裝,這臺機器的上的資料可能全部被格掉喔)。用光碟啟動機器,在boot:提示符下打入:linux ks=http://192.168.168.6/rh9/ks.cfg,看一下是不是能實現自動安裝,如果能,OK我們一半的工作已經做好了。
2、 配製DHCP、TFTP、和PXElinux。(當然這些服務可以和HTTP放在一臺服器上)
1) 做一臺TFTP伺服器太容易了,用rpm –qa | grep tftp看一下tftp有沒安裝,沒有的話安裝一下。用chkconfig tftp on 開啟xinetd代理的tftp服務。
2) 做一臺DHCP伺服器,這是關鍵。下面是我的dhcp.conf檔案:
ddns-update-style interim;
ignore client-updates;
allow booting; #定義可以PXE 啟動
allow bootp; #定義支援boottp[/color:ffa4e84ade]
subnet 192.168.168.0 netmask 255.255.255.0 {
option routers 192.168.168.230; #定義預設閘道器
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.168.6; #定義nameServer
option time-offset -18000; # Eastern Standard Time
range dynamic-bootp 192.168.168.12 192.168.168.254;
default-lease-time 21600;
max-lease-time 43200;
# Group the PXE bootable hosts together 定義可以PEX啟動的主機的組
group {
# PXE-specific configuration directives...
next-server 192.168.168.6; #TFTPServer的IP
filename "/pxelinux.0";#pxelinux loader檔案位置
# You need an entry like this for every host
# unless you're using dynamic addresses #可PEX啟動的主
#機的IP與MAC地址的邦定
host wy {
hardware ethernet 00:00:E2:89:9BB;
fixed-address 192.168.168.128;
}
}[/color:ffa4e84ade]}
紅色的部分為在DHCP中支援TFTP及PXElinux的所要新增的部分。service dhcpd restart 開啟DHCP服務。
3) 配製PEXlinux。要遠端啟動機器,就必須要有PXElinux這個由syslinux、isolinux派生出來的,支援PXE的bootloader,它可以實現遠端透過PEX啟動一臺機器。把/usr/lib/syslinux/pxelinux.0考到/tftpboot目錄下,把RedHat9第一張安裝光碟上/image/pxeboot/initr.img和vmlinux也考到/tftpboot目錄下。在/tftpboot建一個pxelinux.cfg目錄,用於放syslinux的配製檔案。Sysconfig的配製檔案有現成的可用,在rh9第一張安裝光碟isolinux/下有一個isolinux.cfg檔案,把它考成/tftpboot/default,把isolinux/*.msg考到/tftpboot下(RedHat的安裝光碟的Loader就是個isolinux,呵呵)。對default(也就是isolinux.cfg)作一下修改,下面是我的default檔案:
default local [/color:ffa4e84ade]
prompt 1
timeout 30
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
F7 snake.msg
label local
localboot 0[/color:ffa4e84ade]
label linux
kernel vmlinuz
append initrd=initrd.img devfs=nomount ramdisk_size=9216
label text
kernel vmlinuz
append initrd=initrd.img text devfs=nomount ramdisk_size=9216
label expert
kernel vmlinuz
append expert initrd=initrd.img devfs=nomount ramdisk_size=9216
label ks
kernel vmlinuz
append ks initrd=initrd.img devfs=nomount ramdisk_size=9216
label nofb
kernel vmlinuz
append initrd=initrd.img devfs=nomount nofb ramdisk_size=9216
label lowres
kernel vmlinuz
append initrd=initrd.img lowres devfs=nomount ramdisk_size=9216
label autoinstall
kernel vmlinuz
append ks=http://192.168.168.6/rh9/ks.cfg initrd=initrd.img devfs=nomount ramdisk_size=9216 nofb[/color:ffa4e84ade]
紅色的部份是我加的,用於實現本地硬碟啟動或支援kickstart的PXE網路自動安裝。
cat一下/tftpboot/boot.msg檔案:
splash.lss
- To Local boot 02Red Hat07 Linux , type:
0f
- To install or upgrade 02Red Hat07 Linux in graphical mode,
press the 0f linux
- To install or upgrade 02Red Hat07 Linux in text mode, type:
0flinux text
- To Auto Install 02Red Hat07 Linux , type:
0flinux autoinstall
- Use the function keys listed below for more information.
02[F1-Main] [F2-Options] [F3-General] [F4-Kernel] [F5-Rescue]07
紅色行是我加入的,用於顯示Local boot 和autoinstall選項。
3、 OK,到現在伺服器端的配製已經基本完成了,讓我們來試一下。用一臺支援PXE的機器加電啟動,按F12,一般機器啟動時會有提示(請進入BIOS看一下,確認網路卡或主機板的PXE功能已經開啟),選擇LAN啟動,看到了什麼? “DHCP…………………FFFFFFFFFFFFF”接著一個和光碟啟動的差不多的畫面,是吧?按一下F2試一下,F2的選項是不是也出來了。打入linux rescue 試試,是不是進入了rescue模式?HOHO~~,以後客戶機啟不來還要用光碟來重啟進rescue模式嗎?當然不用了,把安裝光碟扔了吧,哈哈。
再重啟機器,按F12,選擇LAN,在PXE啟動安裝介面的boot:提示符下打入linux autoinstall試試?HOHO~~,一個多小時後,一臺新的rh9就這麼安裝好了。是不是很方便呢?
4、 參考文件:/usr/share/doc/syslinux-1.75/pxelinux.doc
/usr/share/doc/syslinux-1.75/isolinux.doc
/usr/share/doc/syslinux-1.75/syslinux.doc
/usr/share/doc/dhcp-3.0pl1/README
/usr/share/doc/httpd-2.0.40/README
/usr/share/doc/pxe-0.1/README
5、最後,感謝我的RHCE老師simon cheng,是他給了我提示和幫助,雖然有時我問他10個不同的問題,他回答我9個是同一個答案:See readme。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-947794/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- redhat安裝dockerRedhatDocker
- PXE實現系統自動化安裝
- 安信實驗室教你如何實現Windows自動安裝!Windows
- PXE 基於網路自動安裝CentOS 6/7/8CentOS
- 使用NIM Server網路半自動安裝AIX系統ServerAI
- 配置ks.cfg實現自動安裝過程
- Linux(01):RedHat 7.6 安裝LinuxRedhat
- centOS(同redhat)安裝 dockerCentOSRedhatDocker
- Linux安裝SVN實現自動同步到Web目錄LinuxWeb
- 直播原始碼網站,實現文字自動翻轉效果原始碼網站
- Python+selenium實現Drcom校園網自動檢測網路以及自動登入Python
- PostgreSQL:Redhat 8.5 + PostgreSQL 14.5 安裝SQLRedhat
- RedHat FC5安裝xmmsRedhat
- 從網路工程師的角度看網路自動化的現狀工程師
- 通過自動化和現代化實現網路優化優化
- RedHat Advance Server上安裝Oracle 9204 RAC參考手冊(轉)RedhatServerOracle
- Redhat 7 下安裝達夢7Redhat
- RedHat 7.6作業系統安裝Redhat作業系統
- win10怎麼聯網自動安裝硬體驅動_win10聯網自動安裝硬體驅動教程Win10
- redhat 5.5 配置網路yum源Redhat
- Linux 安裝ffmpeg 實現音訊轉碼Linux音訊
- Selenium原理、安裝與自動打卡實戰
- deepin linux的無線網路解決-網路卡驅動(手動)安裝Linux
- 自智網路:網路自身的數字化轉型
- 訂單自動過期實現方案 - 轉
- Redhat 7使用CentOS 7的Yum網路源RedhatCentOS
- redhat 5.4下安裝MYSQL全過程RedhatMySql
- redhat 7 使用nmcli 命令配置網路Redhat
- [javascript]如何優雅的實現網頁自動滾動JavaScript網頁
- linux下安裝 openoffice 實現 office文件轉 pdfLinux
- 解決VMware安裝RedHat虛擬機器無法上網的問題Redhat虛擬機
- k8s 網路轉發實現K8S
- Python 實現斷網自動重連Python
- 4.2.13 主備庫實現自動故障轉移
- go 的自動過載工具安裝Go
- kickstart半自動安裝centos系統與pxe自動安裝centos系統CentOS
- redhat7.6安裝Oracle11G RACRedhatOracle
- RedHat上靜默安裝Oracle11gRedhatOracle
- redhat7.2靜默安裝Oracle11.2.0.4RedhatOracle