1,317 瀏覽數

DOS

透過 Linux PXE 來安裝 Windows,下面是他的官方網站.這邊有很多設定沒特別寫出來,請自行參考 PXELinux Legacy – PXE Boot
http://unattended.sourceforge.net/step-by-step.php
主要是透過他提供的工具來進行安裝 Windows
http://sourceforge.net/project/

下載解開後可以看到他的架構如下

unattended
Makefile
NEWS.txt
README.txt
TODO.txt
bootdisk
DRIVERS.txt
Makefile
drivers
empty-boot.img.gz
images
isoboot.msg
isolinux.bin
isolinux.cfg
memdisk
template
tftpboot
html
install
bin
dosbin
lib
os
packages
scripts
site
tools
updates
version.txt
linuxboot

主要需要的目錄是 install
因為裡面都是使用 Perl 寫出來的所以我們需要將 install 所有的資料存放在 /var/ftp/install

[root@benjr ~]# unzip unattended.zip
[root@benjr ~]# cd unattended
[root@benjr unattended]# mkdir /var/ftp/install
[root@benjr unattended]# cp -a install /var/ftp/install

因為我們主要是透過 SMB(DOS 下使用 a:\net use )的方式來接網路磁碟機所以我們還要將這個目錄透過 samba 的方式分享出來。

[root@benjr ~]# vi /etc/samba/smb.conf
[global]
…
netbios name = ntinstall
guest account = guest
security = user
…
[install]
comment = Unattended
writable = no
locking = no
path = /var/ftp/install
guest ok = yes
valid users = user1

系統預設使用 \\ntinstall\install 連接網路磁碟,帳號和密碼皆為 guest.因為 net use 一定要指定名稱,所以我們的名稱解析可以透過 DNS 或 netbios name 來處理.所以我們要開始建立 guest 帳號密碼至 samba server,密碼存在 /etc/samba/smbpasswd ,但使用者必先存在於 /etc/passwd

[root@benjr ~]# adduser guest
[root@benjr ~]# passwd guest
[root@benjr ~]# smbpasswd -a guest
New SMB password:
Retype new SMB password:
Added user guest.
[root@benjr ~]# service smb restart
Starting SMB services: [ OK ]
Starting NMB services: [ OK ]

接下來我們需要能透過網路開機的 DOS 映像檔和包含各個網路卡的 drivers.
http://sourceforge.net/project/
其中目錄 bootdisk 是一個包含 DOS 開機的映像檔和包含各個網路卡的 drivers.

[root@benjr ~]# unzip unattended.zip
[root@benjr ~]# cd unattended
[root@benjr unattended]# mkdir /tftpboot/linux-install/unattended
[root@benjr unattended]# cp bootdisk/images/* /tftp/linux/unattended
[root@benjr unattended]# cp bootdisk/tftpboot/unattended/memdisk /tftp/linux/unattended
[root@benjr ~]# vi /tftpboot/linux-install/pxelinux.cfg/default
default 0
timeout 2000
F1 msgs/boot.msg
F2 msgs/expert.msg
prompt 1
display msgs/boot.msg
label 0
localboot 1
label b44
kernel unattended/memdisk
append initrd=unattended/b44.imz
label b57
kernel unattended/memdisk
append initrd=unattended/b57.imz
label dc21x4
kernel unattended/memdisk
append initrd=unattended/dc21x4.imz
label dp83815
kernel unattended/memdisk
append initrd=unattended/dp83815.imz
label e100b
kernel unattended/memdisk
append initrd=unattended/e100b.imz
label e1000
kernel unattended/memdisk
append initrd=unattended/e1000.imz
label elpc575
kernel unattended/memdisk
append initrd=unattended/elpc575.imz
label el556
kernel unattended/memdisk
append initrd=unattended/el556.imz
label el90x
kernel unattended/memdisk
append initrd=unattended/el90x.imz
label el94x
kernel unattended/memdisk
append initrd=unattended/el94x.imz
label fetnd
kernel unattended/memdisk
append initrd=unattended/fetnd.imz
label ngrpci
kernel unattended/memdisk
append initrd=unattended/ngrpci.imz
label pcntnd
kernel unattended/memdisk
append initrd=unattended/pcntnd.imz
label rtsnd
kernel unattended/memdisk
append initrd=unattended/rtsnd.imz
label rtgbnd
kernel unattended/memdisk
append initrd=unattended/rtgbnd.imz
label sis900
kernel unattended/memdisk
append initrd=unattended/sis900.imz
label undis3c
kernel unattended/memdisk
append initrd=unattended/undis3c.imz keeppxe

加入下面的訊息來讓使用者(PXE的Clients)知道有什麼網路卡可以選擇

[root@benjr ~]# vi /tftpboot/linux-install/msgs/boot.msg
_09Additional Network Drivers_07
_0aThese are additional network drivers that you can choose:_07
b44 Broadcom BCM440x family
b57 Broadcom BCM57xx “Tigon3″ family
dc21x4 DEC/Intel 2104x/2114x “Tulip" family
dp83815 Natsemi 83815 “MacPHYTER" family (e.g., Netgear FA311/FA312)
e100b Intel Pro/100 family of PCI and CardBus adapters
e1000 Intel Pro/1000 family of gigabit adapters
elpc575 3com 3c575 family of CardBus adapters
el556 3com 3c556 family of mini-PCI adapters
el90x 3com 3c59x/3c90x family of PCI and CardBus adapters
el94x 3com 3c94x/3c2000 family of gigabit adapters
fetnd VIA VT86C100A/6102/6105 “Rhine" family (e.g., D-Link DFE-530TX)
ngrpci Netgear FA310
pcntnd AMD PCNet family (also VMWare)
rtsnd Realtek RTL8139 family (e.g., D-Link DFE-530TX+)
rtgbnd Realtek RTL8169/8110S Gigabit family
sis900 SiS 900 family

我們當然還是需要 Windows 的光碟的內容才能進行安裝,預設是放在 /var/ftp/os 下面。下面是以安裝 Windows XP 為範例。

[root@benjr ~]# cd /var/ftp/install/os
[root@benjr os]# mkdir winxp
[root@benjr os]# mount -a /dev/hda/* winxp/

這邊的 /dev/hda 是我的光碟機所在位置,請依實際狀況來指定裝置位置。
在目錄 /var/ftp/os/ 下可以依據自己需求存放個種不同的 Windows 系統,只需要產生目錄分開存放即可。
1. 將具有 PXE 功能網路卡的 client 開機.
2. 並從 PXE 開機

發表迴響