This is an old revision of the document!


A PCRE internal error occured. This might be caused by a faulty plugin

====== Installing Windows Server 2008 to an iSCSI target ===== To install Windows Server 2008 to an iSCSI target, you must first configure your system to attempt to boot via iSCSI, and fall back to booting from DVD-ROM if the iSCSI boot fails. The exact procedure for doing this will vary depending on your computer's BIOS. ===== Configuring the BIOS boot order ===== Enter your BIOS setup screen. (Typically, this will require you to press a key such as DEL or one of the function keys F1-F12 immediately after rebooting the system.) Configure your BIOS to attempt booting in the following order: - Boot using gPXE. - Boot from DVD-ROM. ===== Configure DHCP gPXE options for iSCSI boot ===== Refer to [[/howtos#how_to_use_advanced_dhcp_options|advanced dhcp options]] ==== ISC dhcpd ==== See [[dhcpd]] for more info on the following settings Place the following lines in ///etc/dhcpd.conf//: option space gpxe; option gpxe-encap-opts code 175 = encapsulate gpxe; option gpxe.keep-san code 8 = unsigned integer 8; filename ""; option root-path "iscsi:my.target.dns.name::::iqn.2007-08.name.dns.target.my:iscsiboot"; option gpxe.keep-san 1; where //my.target.dns.name// is the DNS name (or IP address) of your iSCSI target, and //iqn.2007-08.name.dns.target.my:iscsiboot// is the iSCSI target IQN that you wish to boot from. You will probably need to restart your DHCP server for the changes to take effect: root@chipmunk# /etc/init.d/dhcpd restart ==== Microsoft DHCP Server ==== See [[msdhcp]] for more info on the following settings {{:sanboot:msdhcpiscsiwds.png|}} <sup>NOTE: //The above picture shows settings for a specific windows deployment environment//. Configure your settings to meet your needs.</sup> Option 17 Root Path iscsi:my.target.dns.name::::iqn.2007-08.name.dns.target.my:iscsiboot Option 67 Bootfile "" Option 175 gPXE_Options 08 01 01 FF Where //freenas1.domain.local// == //my.target.dns.name// == is the DNS name (or IP address) of your iSCSI target, and //iqn.2007-09.local.domain.freenas1.target:disk1// == //iqn.2007-08.name.dns.target.my:iscsiboot// == the iSCSI target IQN that you wish to boot from.\\ See [[/pxechaining#using_the_windows_dhcp_server|PXE Chaining]] for the two //Option 67// entries pictured above\\ See [[/msdhcp#setting_up_a_gpxe_encapsulated_options_on_windows_dhcp|gPXE Encapsulated options]] for information on //Option 175// ===== Starting the installation ===== Place the Windows Server 2008 DVD-ROM in the drive, and switch on the computer. You should see it attempt to boot via iSCSI, fail, and then boot from the DVD-ROM. Once you reach the point of selecting an installation disk drive, you should see your iSCSI disk appear in the list: **Note:** If you get the message "//This computer's hardware may not support booting to this disk. Ensure that the disk's controller is enabled in the computer's BIOS menu.//" or "//Windows is unable to find a system volume that meets its criteria for installation.//", do the following: Create a new partition on the disk and format it. Then exit the setup and try again after a reboot. More information can be found in [[http://support.microsoft.com/kb/KB933925|this article.]] {{ :screenshots:win2k8_iscsi_install.png?800x600 |Windows Server 2008 installation disk selection}} ===== Alternative Method (using WinPE) ===== Some BIOS programs will not fall back to another boot device after loading gPXE. In such cases, you can proceed by executing [[:winpe|pxe boot to WinPE 2.1]]. (make sure it's WinPE 2.1, WinPE 2.0 won't detect iSCSI drives) After you've reached the WinPE command prompt, you can execute setup.exe from the installation media or network share. (this method was tested with Windows Server 2008 x86, Windows 7 x86 and Windows 7 x64. For installing Windows 7, you will probably want to try using WinPE 3.0 instead of 2.1) The required gPXE command sequence to achieve this should be like: <code> dhcp net0 set keep-san 1 sanboot iscsi:192.168.1.11::::iqn.2007-08.name.dns.target.my:iscsiboot chain tftp://192.168.1.11/boot/pxeboot.n12 </code> Note: when using tftpd32, bootmgr.exe should reside inside the root tftp directory and inside the boot directory. ===== Alternative Method (simple) ===== As stated before, some BIOS won't fall back properly. And if you don't need the whole WinPE stuff, have a look [[http://www.lrz-muenchen.de/~bernhard/grub-chain-cd.html|here]]. To give a proper short receipe: In you tftp directory do: Put [[http://www.lrz-muenchen.de/~bernhard/memdisk.bin|memdisk.bin]] and [[http://www.lrz-muenchen.de/~bernhard/sbootmgr.dsk|sbootmgr.dsk]] into it Place also a copy of [[http://syslinux.zytor.com/wiki/index.php/PXELINUX|pxelinux]] there. Edit your pxelinux config file (if you dont have one: Make a directory called "pxelinux.cfg" in your tftp directory and put the folling into a file named "default" to your new pxelinux.cfg-directory): <code> label torito kernel memdisk append initrd=sbootmgr.dsk </code> Kick off you machine, load some gPXE and press Ctrl+B as it appears. Now do: <code> dhcp net0 set keep-san 1 sanboot iscsi:192.168.1.11::::iqn.2007-08.name.dns.target.my:iscsiboot chain tftp://192.168.1.11/pxeboot.0 </code> After some curious stuff enter torito and enter. Now it starts of your Windows 2008 DVD. (May show error if dvd drive is not ready yet. Just try by pressing enter again and again) ===== Completing the installation ===== Continue the installation as normal. Your computer will reboot a few times during installation; you can safely leave it unattended during this time. Congratulations on successfully installing Windows Server 2008 to an iSCSI target! {{ :screenshots:win2k8_iscsi_boot.png?800x600 |Windows Server 2008 booted from an iSCSI target}} ==== What to do if the installation can't find the iSCSI disk. ==== - Ensure the iSCSI target is working by connecting it with existing os. To make your life easy, You can unset the password for the iSCSI target for testing. - Reboot the into gPXE, then press <code>Ctrl-B</code> to get the command line. - In the command line, type <code>dhcp net0</code> You'll see response which is like: <code>DHCP (net0 xx:xx:xx:xx:xx:xx)... ok</code> - In the command line, type <code>set keep-san 1</code> - And in command line, type <code>sanboot iscsi:my.target.dns.name::::iqn.2007-08.name.dns.target.my:iscsiboot</code> If you see something like "Preserving connection to SAN disk." in response, You are on the half way. - In the command line, type <code>exit</code> - Go on with the installation above. **NOTE:** If you are installing vista, be sure to read the NOTE in [[sanboot:winvista|Vista install guide]] to save your time. **NOTE:** Windows Setup creates an explicit route to your your iSCSI target using your default gateway. This means if your target is on the same LAN, your router must be prepared to route local LAN traffic (which normally it would not do as the initiator and target could communicate directly). You can examine the route settings by pressing SHIFT+F10 when the drive selection window is displayed, then typing "route print" at the DOS command prompt. Some strict firewall settings will prevent this kind of routing which will cause Windows Setup to be unable to see the iSCSI drive. For example, using Shorewall you need to enable the "routeback" setting on the LAN interface. If using OpenWrt (without shorewall) add this to /etc/firewall.user (create this file if absent): iptables -A forwarding_lan -i br-lan -o br-lan -j ACCEPT To avoid that behaviour, put your iSCSI into it's very own subnet and omit a gateway. Like say your LAN is 192.168.1.0, you could say target is 192.168.**2**.1 and initiator 192.168.**2**.2. Configure your DHCP server accordingly and windows won't do that curious explicit route (static route). **NOTE:** With Windows 7 the above routing problem affects normal boot as well, not just the setup. **NOTE:** When using Microsoft iSCSI Software Target 3.1.3412, The aforementioned explicit routing may cause WinPE 2.1 (Windows Server 2008 / Vista SP1) to BSOD (IRQL_NOT_LESS_OR_EQUAL), and WinPE 3.0 (Windows 7 / Windows Server 2008 R2) won't recognize the iSCSI drive at all. - To avoid this problem, you can set the gateway (received from the DHCP server) to the IP of the machine running Microsoft iSCSI Software Target. (or use the "set gateway" command from the gPXE console, after the "dhcp" command) - Alternatively, you can install to another software target, and then [[transfer]] the installation to the Microsoft iSCSI Software Target. ===== What to do if the installation says: "Ensure that the disk's controller is enabled in the computer's BIOS menu" ===== If you can't continue with windows installation on iSCSI Target with an error message Windows cannot be installed to this disk. This computer's hardware may not support booting to this disk. Ensure that the disk's controller is enabled in the computer's BIOS menu Solution for this error is quite simple, just add a drive for installation time, if the drive is a Serial-ATA connected then set it to //Compatibile Mode// not //AHCI// (for Windows 7 this doesn't matter, you can leave it as AHCI). If you start windows installer once again you will see an error message only at the physical drive, select iSCSI target and just click next.


QR Code
QR Code sanboot:win2k8_iscsi_install (generated for current page)