Installing Windows XP from a network. RIS, but not Microsoft

Preparing folders and files for network installation

Create a root folder for network boot on disk C with the name NETBOOT. Inside this folder create catalog WINXP.

In the catalog C:\NETBOOT\WINXP make a folder INSTALL. This catalog will contain the installation of Windows XP. It will also contain folder $OEM$.

I divided the network boot of Windows XP into two steps. The first step includes loading the files based on TFTP protocol. On the second step the files download based on protocol CIFS (previously called SMB). The protocol CIFS is more known as File and Printer Sharing for Microsoft Network.

That is why for the second step of installation the catalog C:\NETBOOT\WINXP has to be accessible from the network for the group "Everyone" with read-only rights.

To achieve that in the Explorer, click the right button of the mouse on the folder with the name "WINXP" in the thread and choose "Sharing and Security". In the window that appears choose the point "Share this folder", input "WINXP" in the field "Share name". You need to provide this folder with the access rights "Read" for the group "Everyone". To achieve this do not close the previous window, and press the button "Permissions". In the window that appears press the button "Add". Enter "Everyone" in the field "Enter the object names to select" and press OK button. Flag the field "Permissions for Everyone" to allow reading and press OK. To apply parameters press OK button.

It's also necessary to confirm that the user account "Guest" is activated.

To achieve this click the right mouse button "My Computer" and choose "Manage". We open "System Tools", "Local Users and Groups" and choose "Users". In the right side of the screen click the right mouse button on "Guest" and choose "Properties". In the window that appears we delete the flag from "Account is disabled" and press OK button.

If the directory WINXP is located in the partition with the NTFS file system, then it's necessary to add the group "Everyone" in the catalog "Security" features. This group needs to be allowed to fulfill reading.

For that reason we press the right mouse button in the thread on the folder entitled "WINXP" and choose "Sharing and Security". In the window that appears choose the tab "Security" and press the button "Add". Enter "Everyone" in the field "Enter the object names to select" and press OK button. Fflag the field "Permissions for Everyone" for "Read & Execute", "List Folder Contents", "Read". To apply the parameters click OK button.

We also have to make sure that the user "Guest" is allowed to access the network in security policies.

To do that press "Start", choose "Control Panel", "Administrative Tools". In the window that appears choose "Local Security Policy". After loading the attachment "Local Security Settings", expand "Local Policies" and choose "User Rights Assignments". In the right side click the left mouse button twice at "Deny access to this computer from the network". In the list that pops up click "Guest" and press the button "Remove". To confirm the changes press the delete button.

Preparing the distribution package Windows XP to be installed from the network

Copy the folder I386 from the distribution CD Windows XP into C:\NETBOOT\WINXP\INSTALL.

What should be done with the Windows XP 64 bit?

As you have already noticed, the distribution package of 64-bit versions holds two folders I386 and AMD64. Both these catalogs have to be copied into C:\NETBOOT\WINXP\INSTALL. In this catalog placement our network setting will not work. The reason is that the network boot of the Windows XP 64-bit at the first step of boot up (downloading the files from TFTP server) does not see the catalog AMD64, but it wants to download the files that are located there. At the second stage of installation the file loading takes place from AMD64, as well as from I386. The way out from this situation is obvious. The contents of the catalog AMD64 should be copied into catalog I386. Unfortunately, this way has one disadvantage the size of folder INSTALL will increase by 400 Mb in the case of Windows XP Professional x64 Edition. But there is another more economic way to do it, when catalog NETBOOT is located on the disk with the NTFS file system.

In this case it's possible to use NTFS features as junction points. We copy the contents of the catalog AMD64 into I386. Now the folder AMD64 is not necessary to us, and we have to delete it. Now download the junction utility from Sysinternals. Enter the junction C:\NETBOOT\WINXP\INSTALL\AMD64 C:\NETBOOT\WINXP\INSTALL\I386 into the command line. As a result, a catalog INSTALL gets a folder AMD64 with the identical contents as in I386, but at the same time the size of the catalog INSTALL stays the same.

File preparation

From catalog I386 we copy a file ntdetect.com into C:\NETBOOT\WINXP, for example, with a command copy C:\NETBOOT\WINXP\INSTALL\I386\ntdetect.com C:\NETBOOT\WINXP\. We extract files (from the same catalog I386) setupldr.ex_, startrom.co_ and startrom.n1_ in C:\NETBOOT\WINXP. It can be done with the help of the following commands:

expand :\NETBOOT\WINXP\INSTALL\I386\setupldr.ex_ :\NETBOOT\WINXP\ntldr

expand :\NETBOOT\WINXP\INSTALL\I386\startrom.co_ :\NETBOOT\WINXP\startrom.com

expand :\NETBOOT\WINXP\INSTALL\I386\startrom.n1_ :\NETBOOT\WINXP\startrom.n12

After all the manipulations with files the catalog C:\NETBOOT\WINXP has to look like the view that is shown on Picture 5.

Now it's necessary to decompress the drivers for network card.

For these purposes we'll create a catalog C:\NETBOOT\WINXP\DRIVERS.

I received the decompressed files net*.inf using the command expand C:\NETBOOT\WINXP\INSTALL\I386\net*.in_ -r -f:*.inf C:\NETBOOT\WINXP\DRIVERS.

Attention. The commands that are listed below have to be performed in the command interpreter cmd.exe. For that we press "Start -> Run", enter cmd and press OK button.

Later I have to find the names of the file drivers (*.SYS) inside the decompressed net*.inf. I perform search using the command for %i in (C:\NETBOOT\WINXP\DRIVERS\*.inf) do type %i | findstr ".sys,,," >>C:\NETBOOT\WINXP\DRIVERS\list. However, the file list is not yet further usable. You have to clean it up, in other words take out ",,,2". The command for /F "delims=," %f in (C:\NETBOOT\WINXP\DRIVERS\list) do echo %f >>C:\NETBOOT\WINXP\DRIVERS\list.txt will help you do it.

Having fulfilled all the aforementioned commands I got a list of files that contain drivers for network cards. The only thing left is to take them out of the file driver.cab. To extract it I first create a catalog C:\NETBOOT\WINXP\DRIVERS\SYS. Then with the help of the command for /f %i in (C:\NETBOOT\WINXP\DRIVERS\list.txt) do expand C:\NETBOOT\WINXP\INSTALL\I386\driver.cab -r -f:%i C:\NETBOOT\WINXP\DRIVERS\SYS I extract driver files from driver.cab into the catalog C:\NETBOOT\WINXP\DRIVERS\SYS. The same operation can be performed for the files sp1.cab, sp2.cab and sp3.cab. It's necessary to do as this file could contain a newer version of the driver for network adapter. For that it's necessary to perform the previous command having exchanged driver.cab for sp1.cab and so on. For example, for the file sp3.cab, the command will look like for /f %i in (C:\NETBOOT\WINXP\DRIVERS\list.txt) do expand C:\NETBOOT\WINXP\INSTALL\I386\sp3.cab -r -f:%i C:\NETBOOT\WINXP\DRIVERS\SYS.

In conclusion, the files from C:\NETBOOT\WINXP\DRIVERS\SYS are left to be copied to C:\NETBOOT\WINXP\INSTALL\I386.

Adding support of new network adapters

Lately there appeared new network adapters, whose drivers are not present in the distrubution package of Windows XP. And that is why installing the operating system through a network becomes impossible. To correct this problem it's possible to use the file lan-drivers.zip (for now only the 32 bit Windows version).

This file represents a collection of drivers for new network cards that I had to deal with. These drivers are only used for Text-Mode Setup of Windows XP.

At the present moment the support for the following network cards has been carried out:

To install the driver package it's necessary to decompress the file lan-drivers.zip into the catalog c:\lan-drivers. Then it's necessary to copy c:\lan-drivers\*.inf into the catalog :\netboot\WINXP\drivers, and c:\lan-drivers\sys into the catalog c:\netboot\WINXP\drivers\sys. During copying there can appear a message that this file already exists in the catalog. In this case the existing file has to be rewritten by a new file (from the catalog c:\lan-drivers).

Self-installation of new drivers

Unfortunately, the file lan-drivers.zip still contains not too many drivers. Therefore I will give you some examples below on how to install network adapter drivers for Windows XP installation from a network by yourself

.

Marvell Yukon Ethernet Controller

Download the driver from the website of the producers. Expand the archive yk51x86.zip. Copy the file yk51x86.inf into C:\NETBOOT\WINXP\DRIVERS, and the file yk51x86.sys into C:\NETBOOT\WINXP\DRIVERS\SYS.

Broadcom NetLink Ethernet controller (5781, 5786, 5787, 5788, 5789)

I download the driver from the site of the manufacturer. I decompress the archive win_xp_2k3_32-9.81d.zip.

It's not clear why Broadcom in its drivers for Windows XP/2003 leaves the description of Windows. To further correctly process the file b57win32.inf it's necessary to edit it. You have to find the line [Broadcom] and exchange it for [Bbroadcom].

I copy the file b57win32.inf into C:\NETBOOT\WINXP\DRIVERS, and the file b57xp32.sys into :\NETBOOT\WINXP\DRIVERS\SYS.

NVIDIA nForce Networking Controller

Unfortunately, I haven't found the drivers for network cards NVIDIA nForce Networking Controller on the site NVIDIA, which would be useful during installation in the text-mode. NVIDIA service support states that if you need the drivers, you have to contact the manufacturers of motherboards, and gives a link to a file RIS_2K&XP_V471.zip from the site ASUS. Unfortunately, this is an old version of drivers for NVIDIA nForce Networking Controller, but luckily there is a newer version on the site. So, I download the file MCP55_RIS_V916.zip. I extract it and copy the file nvnb5032.inf from the catalog RIS\nvris32 into C:\NETBOOT\WINXP\DRIVERS, and files nvnb5032.sys, nvnrm.sys, nvsnpu.sys into C:\NETBOOT\WINXP\DRIVERS\SYS.

In conclusion, what is left is just the files from the catalog SYS to be copied into C:\NETBOOT\WINXP\INSTALL\I386.