簡單說就是在一台沒裝哈滴的PC上開啟Windows2003作業系統,iSCSI可以直接想像成一顆SCSI介面的硬碟排線換成網路線,讓你透過網路存取這顆哈滴,這跟網路芳鄰分享出來的東西不一樣,網芳裡看到的是檔案,而iSCSI分享出來的是硬碟,可以Format、磁碟分割或RAID等。
一、準備工作
PC兩部,一部安裝Fedora Core 5,一部安裝好windows 2003並升級SP2。
windows2003+sp2安裝:略。
裝好SP2後,要裝MS iSCSI Initiator,簡單想像成裝Driver就是了,這個MS iSCSI Initiator有兩個版本,一個是一般使用版,一個是Boot Version,我們要用的是Boot Version,到http://connect.miscosoft.com下載,需要註冊,並輸入Invite code:ms-8RR8-6K43。若你是SP1,則需要再找Hotfix:KB902113 for MS iSCSI。
要下載的是x86的版本,當下取得的是:Initiator-2.06-boot-build3497-x86chk.exe 這個版本。
安裝過程中記得要選取支援iSCSI Boot的選項,其餘使用預設值就好。裝好後,點選"Discovery"標籤,選"Add",輸入iSCSI Target的IP位址,再點"Target"的標籤,應該會看到分享出來的哈滴,點Logon,就連上了,再到"我的電腦"按右鍵選"管理",把這顆哈滴啟動、format一下,成功後,在我的電腦裡就會出現一棵哈滴了,剩下的操作就跟使用本機硬碟一樣。這是測試的部分,用來開機的話這步驟可以省略,把iSCSI initiator裝好就好了。
安裝時需注意kernel-develop套件要裝,編譯的時候用會到,此外還要注意uname -a的核心版本是不是跟kernel source裡的相符,不相符在載入模組的時候極有可能會出現錯誤。
裝好iscsi target後,編輯/etc/ietd.conf
Target iqn.2007-09.freebsd:storage.test
LUN 0 Path=/dev/hdc,Type=fileio
/dev/hdc可以換成/path/to/windows2003.img,製作img的方法稍後詳述。
# service iscsi-target start
如果都OK,那應該就沒什麼問題了!另外必須安裝dhcp server,當diskless client啟動時會需要一些基本的網路組態,以及記錄iSCSI的Target在什麼地方。
編輯/etc/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.1.1;
range dynamic-bootp 192.168.1.128 192.168.1.254;
default-lease-time 21600;
max-lease-time 43200;
# 要注意的下面這兩行,這是給gpxe看的。
filename "";
option root-path "iscsi:192.168.1.1::::iqn.2007-09.freebsd:storage.test";
}
做完這些,把2003的哈滴拔下來裝到FC5的機器上,以我的環境,裝置路徑在/dev/hdc。
若要要製作image,用dd這個linux工具
# dd if=/dev/hdc of=/somewhere/to/xxx.img bs=8225280 count=522
8225280跟522這兩個數字請參考下面fdisk -l /dev/hdc的輸出,結果會是一個約4G大小的影像檔。
請注意是/dev/hdc而不是/dev/hdc1,因為我們還要保留MBR。
二、gPXE安裝
至etherboot網站下載套件,解壓縮後會得到gpxe.git目錄,此時要做一些手腳。
#vi src/arch/i386/interface/pcbios/int13.c,在523行附近有一個判斷式
if ( drive->cylinders > 1024 )
drive->cylinders = 1024;
意思是如果Hard Drive的cylinders大於1024就以1024視之,以實做結果來看會有問題,所以必須再改成符合實際運作的數字。
首先先用fdisk -l /dev/hdc取得windows對這顆哈滴的geometry,看bios裡的不準,windows裡的可能會不一樣。
Disk /dev/hdc: 61.4 GB, 61492838400 bytes
255 heads, 63 sectors/track, 7476 cylinders #這才是正確的
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hdc1 * 1 522 4192933+ 7 HPFS/NTFS
所以在剛剛提到523行下面找到 /* Assign drive number 這個註解行,在下面直接指定下列參數:
drive->cylinders = 7476;
drive->heads = 255;
drive->sectors_per_track = 63;
好了之後存檔,回到src目錄裡編譯gpxe.iso
#make bin/gpxe.iso
運氣不錯的話應該可以編譯成功,把gpxe.iso燒成光碟片,拿來當開機光碟,gPXE可以支援iscsi、AoE(ATA Over Ethernet)及http等協定支援開機,一般網卡只支援PXE,無法連接iscsi磁碟。etherboot好像有提供一些方式把這些啟動程式或參數"存到"ROM裡,有興趣的上網參考看看吧!
三、驗收成果
把gPXE光碟片放到那原本裝windows2003的機器中,開機,順利的話應該就會進到windows 2003囉!
四、待解問題
⊙windows driver sid hostname等等資訊,如何客制化?
目前有看到sysprep似乎可以解決這個問題。
⊙windows image如何在iSCSI的環境下多機共用一個image?
目前還沒找solution。
⊙如何不靠cdrom開機?
找塊支援iSCSI的網卡,或BIOS,要不自己燒到ROM裡去吧!
or
用PXE啟動gPXE.iso,但還沒試過,感覺有機會。
五、參考資料
GOOGLE搜尋,族繁不及備載。
六、建議
若要在Client跑Linux,上網有很多方法可以做,功能也OK。若要跑Windows,還是花錢買廠商solution比較快,功能也更完整。
本文出自 51CTO.COM技术博客
分享到:
相关推荐
AOMEI PXE Boot Free是一款专业好用的PXE启动工具。AOMEI PXE Boot Free启动工具支持自己创建启动微系统。用户使用该软件可以直接创建一个可启动的Linux或Windows PE启动ISO ISO。使用简单,选择“工具”,然后选择...
局域网里可以用这个工具安装windows系统,具体里边有说明,方便电脑装机人员,公司安装系统等。
工作中经常要批量安装windows2003或2008,用光驱一个个装100台服务器,要耗费一星期的时间,本文研究了通过建立AD域,网络分发安装windows,100台服务器只需要一上午时间。大大节省了您的时间。
PXEBoot 简易安卓 PXE 启动服务器功能介绍PXEBoot 是一个轻量级的TFTP,FTP,HTTP,和proxyDHCP,主要利用手机的WIFI网络提供一个基础的PXE启动服务。同一个网络下的电脑可以通过PXE服务来启动引导一些维护工具,...
Intel Solution for Transparent Computing (Sources and binaries.)Look for my other upload that contains the documentation for this.A login...using PXEboot to retrieve user's system image after they sign in....
Intel Solution for Transparent Computing (Documentation)Look for my other upload with the source and binary package for this.A login and ...using PXEboot to retrieve user's system image after they sign in....
简化操作系统安装 PXE 再生龙 Windows操作系统安装
我开发它是为了使用 VirtualBox 的内置 pxeboot 和 TFTP 服务器在单个主机上自动安装 VirtualBox VM,但它也可以在真实网络上运行。 这些脚本可能无法在 Windows 或 Mac 机器上运行,请随时更新它们并向我发送这些...
PXE-BOOT PXE启动文件合集。网上找不到的PXE启动文件
PXE 操作系统部署依赖关系依赖的风格无关紧要,所有 DHCP 服务器都有所需的选项,... 为 pxelinux.0 文件的 TFTP IP 地址和文件名(或引导文件名)设置 DHCP 服务器选项 next-server。 设置导出镜像的 NFS 服务器(Cent
教你领会到远程启动的精华,并会配置一个典型的PXE服务器.
通过pxe方式来自动化部署ubuntu的方法,Windows版本。
Windows PXE网络部署
Windows环境下配置 PXE 和 DHCP
Boot Image File Editor
通过PXE网络安装windows系统.pdf通过PXE网络安装windows系统.pdf通过PXE网络安装windows系统.pdf通过PXE网络安装windows系统.pdf通过PXE网络安装windows系统.pdf
pxe-boot:pxe引导设置命令
使用网卡的PXE功能启动电脑,通过网络安装Windows XP/2000/2003。只要将安装光盘全部copy到相应的目录即可。另外安装中要运行binlsrv.exe,并将安装主机对应的网卡驱动copy到i386目录下。使用深度的NetBootM.exe作为...
我是一个很懒惰的人,懒得刻碟,懒得同时装很多服务器的时候,忙上忙下,我只有通过技术的力量让自己偷懒,通过此文,你...你通过一台PXE服务器可你安装多台服务器,可以加载你想要的任何驱动。希望我们一起来偷懒!
cp /mnt/images/pxeboot/initrd.img /tftpboot/RHEL5/ cp /mnt/images/pxeboot/vmlinuz /tftpboot/RHEL5/ cp /mnt/isolinux/*.msg /tftpboot/RHEL5/ cp /mnt/isolinux/splash.lss /tftpboot/RHEL5 service xinetd ...