Jump to content

Recommended Posts

Posted (edited)

I am attempting to rollout an upgrade from win2k to winxp/sp2. I have followed the slipstream guide for sp2 (nice and easy) and I made an unattend script (winnt.sif) that has the following;

[Unattended]
NTupgrade=yes
OemPnPDriversPath="Drivers\001_network\intel_1000;Drivers\002_graphics\intel"
DriverSigningPolicy=Ignore

Now I have the $OEM$\$1\Drivers\001_network and 002_graphics\intel setup per the doc but where do I put this directory? I tried in the i386 and only see system32 and asm copied over to the $WIN-NT$.~LS\i386 folder. I tried putting it in parralel too.

I am running the install from a login script that has the path to the files.

\\server\XPCD\i386\winnt32.exe \\server\XPCD\i386\winnt.sif

If I have to copy it locally ($OEM$) via a script first i will just tell me where the heck it goes so the unattended script executes the installation of these drivers. remember this is an inplace upgrade!

Edited by Alanoll

Posted

Bump

Anyone? I am not making any grounds on this driver issue. Basically since the Win2kpro box has the drivers installed and I do an inplace upgrade to Winxp the os trys to look for the drivers to reinstall them like;

c:\winnt\driver\intelgraphics\igfxext.exe

and

c:\drvrtmp\e1000325.sys

I just want it to reinstall the driver with the winxp which is really the same package.

I am sure people have had this problem before during upgrades.

Posted

First....use CODE tags ( http://www.msfn.org/board/index.php?showto...ndpost&p=270687 )

Second, add

OEMPreInstall=YES

To the Unattended section of your answer file.

Then the $OEM$ folder should be copied over as well. (For others reading, $OEM$ is ONLY placed along side of I386 when doing an install from booting from CD, otherwise it's in I386).

I'll assume you know how to kick off the setup from the network share.

Posted

Alanoll,

Sure not a problem. I did try the;

OEMPreInstall=YES

To no avail. I am trying to do this from a network share and as in my original post am kicking it off via a login script with this command;

\\server\XPCD\i386\winnt32.exe \\server\XPCD\i386\winnt.sif

According to your statement I should put the $OEM$ inside the i386 directory as I am doing an upgrade from the netowrk not a boot cd.

I will try this again and see if it works.

Posted

Well

OEMPreinstall

Does not upgrade it creates a new installation hence not what I want to use!

There has got to be an option to do;

NYupgrade=yes

and tell it to use thrid party drivers when it does teh upgrade.

Posted

You know what gets me is this could have been so simple for a "INPLACE UPGRADE". This is all the average System Administrator needs to do to deploy an upgrade with drivers to their network.

Step 1: Create a remote share for the i386 directory and copy your source to it

\\server\i386

Step 2: Make a directory that will hold all of your drivers like this;

md \\server\i386 \XPDRIVERS

copy your drivers to the XPDRIVERS directory;

001_network\lan_Via_Rhine

002_video\nvidia\Win2000

etc....

Step 3: notepad \\server\i386\winnt.sif

[Unattended]
NTupgrade=yes
DriverSigningPolicy=Ignore

[UserData]
Productkey=XXXXX-XXXXX-XXXXX-XXXXX-XXXXX

Step 3: With KIXTART login script (my favorite free scripting too) have this in it (THIS IS ONE LINE OF CODE);

notepad login.kix

ADD THIS LINE;

WRITEVALUE("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\","DevicePath","%SystemRoot%\Inf;C:\WINNT\XPDRIVERS\001_network\lan_Via_Rhine;C:\WINNT\XPDRIVERS\001_network;C:\WINNT\XPDRIVERS\002_video\nvidia\Win2000;C:\WINNT\XPDRIVERS\002_video\nvidia;C:\WINNT\XPDRIVERS\002_video","REG_EXPAND_SZ")

Step 4: Add these lines to login.kix to make the directory to copy the drivers to on the local machine;

SHELL 'md %systemroot%\XPDRIVERS'
SHELL 'xcopy \\server\i386\XPDRIVERS %systemroot%XPDRIVERS%\ /s'

Step 4: I like KIXTART, so I would have a line in there like this to start my installation;

SHELL '\\server\i386\winnt32.exe \\server\i386\winnt.sif'

Step 5: To run the login script make sure you have kix32.exe and login.kix in your \\domain controller\netlogon share (which is really; C:\WINDOWS\SYSVOL\sysvol\domain.local\scripts) and add this to the user account Profile tab, Login script: kix32.exe login.kix

If you want to get fancy with the login.kix you can do the upgrade by user group permissions and detect if the OS is Windows 2000 Professional or not etc... here is a sample of the script I will run at work for this process. ;

;
;
; If you make changes to this script please put your name, date, time and what you changed!
;
; Make a copy of the script before changes with the name/date of the script!
;
;
;SetConsole("hide")
SetConsole("MAXIMIZE")
;SetConsole("ALWAYSONTOP")
Break OFF

; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
; !!!                                                                        !!!
; !!!                Checks to see what PRODUCTTYPE the OS is.               !!!
; !!!                                                                        !!!
; !!!                      If its a Server goes to end                       !!!
; !!!                                                                        !!!
; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

IF @PRODUCTTYPE = "Windows NT Server" or @PRODUCTTYPE = "Windows NT Domain Controller" or @PRODUCTTYPE = "Windows 2000 Server" or @PRODUCTTYPE = "Windows 2000 Domain Controller" or @PRODUCTTYPE = "Windows Server 2003" or @PRODUCTTYPE = "Windows Server 2003 Domain Controller"
 GOTO "exit"
ELSE GOTO "welcome"
ENDIF  
EXIT

:welcome

; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
; !!!                                                                        !!!
; !!!                        Displays Welcome Message                        !!!
; !!!                                                                        !!!
; !!!               Displays users full name and date time etc...            !!!
; !!!                                                                        !!!
; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

CLS

small
Color b+/n
BOX (0,0,24,79,GRID)           ; 'background grid'
Color b/n
BOX (8,6,18,76,Å)             ; 'shadow' of the box
Color g+/n
BOX (7,5,19,77,FULL)


small
Color r+/n
AT (9,32) "@fullname"
AT (11,13) "We are analyzing your computer for an upgrade to Windows XP"
AT (13,10) "We are making sure the computer has adequate Hard Drive Space"
AT (15,13) "This process will take approximately one hour to complete"
AT (17,13) "This Script Is Protected Do Not Try To Close This Window"
SLEEP 10

;Set Path on Local Server Share!
$target = @wksta

; \\server\machines is a sahre so I can pipe machine and user info to *.txt
SHELL '%COMSPEC% /C del "\\server\machines\$target.txt"'


:Output
IF RedirectOutput("\\server\machines\$target.txt") = 0
?
? "Opened '$target.txt' at @TIME @DATE" ?
ENDIF

Color w+/n
AT ( 9,25) "Userid       : " @userid
?
AT (10,25) "Full name    : " @fullname
?
AT (11,25) "Privilege    : " @priv
?
AT (12,25) "Workstation  : " @wksta
?
AT (13,25) "Domain       : " @domain
?
AT (14,25) "Logon Server : " @lserver
?
AT (15,25) "OS           : " @PRODUCTTYPE                        
?
AT (16,25) "CPU Info     : " @CPU

:winxpup

IF INGROUP("WINXP UPGRADE")
GOTO "upxp"
ELSE GOTO "winxp"
ENDIF  
EXIT

:upxp

WRITEVALUE("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\","DevicePath","%SystemRoot%\Inf;C:\WINNT\XPDRIVERS\001_network\lan_Via_Rhine;C:\WINNT\XPDRIVERS\001_network;C:\WINNT\XPDRIVERS\002_video\nvidia\Win2000;C:\WINNT\XPDRIVERS\002_video\nvidia;C:\WINNT\XPDRIVERS\002_video","REG_EXPAND_SZ")

SHELL 'md %systemroot%\XPDRIVERS'
SHELL 'xcopy \\server\i386\XPDRIVERS %systemroot%XPDRIVERS%\ /s'

SHELL '\\server\I386\winnt32.exe /unattend:\\server\I386\winnt.sif'
exit

:winxp

IF @PRODUCTTYPE = "Windows XP Professional"
 GOTO "login"
ELSE GOTO "exit"
ENDIF  
EXIT

:login
normal stuff for login like mapping drivers or added pathces or etc....

:exit
exit

Good luck everyone. I only wish that the info provided on this site was mroe geared towards mass rollouts in a production invironment instead of new installations etc... Maybe I just didn't see the info in the correct spot?

Posted

Correction to my login script in kixtart;

SHELL 'md %systemroot%\XPDRIVERS'
SHELL 'xcopy \\server\i386\XPDRIVERS %systemroot%XPDRIVERS%\ /s'

Change it to this;

MD "%SYSTEMROOT%\XPDRVIERS"
COPY \\server\i386\XPDRIVERS %systemroot%XPDRIVERS% /s

I hope this little bit of info helps individuals working on large networks.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...