Software Distribution with SMS

Planning is the most ignored, yet important, stage of using SMS. When you want to use SMS for software deployment, you must plan every part of the process. Follow these steps to help you plan a software upgrade with SMS.

Jennifer Harrison

September 30, 1997

8 Min Read
ITPro Today logo in a gray background | ITPro Today

Planning is the key to success

Using Systems Management Server (SMS) to automate an enterprisewideupgrade to Windows NT or Windows 95 will save you time, resources, and money.And the time gained with automation gives you more time to look afterexceptional cases. But the success of your upgrade clearly depends on one keystep: planning. Too many times, system administrators cite lack of time andresources as reasons for skipping this step. But the complexity of SMS makesplanning mandatory. For a successful deployment, you must have a clear pictureof the end result and the steps to get there.

Successful deployment depends on knowing how SMS works, in addition tobecoming familiar with the Win95 and NT operating system setup programs. SMSprovides the delivery mechanism, and it drives the standard operating systeminstallation routines. To automate an upgrade, you must supply the appropriatesetup answer files. For Win95, those files are msbatch.inf, netdet.ini,apps.inf, wrkgrp.ini, automate.inf, custom.inf, and setuplog.txt. For NT, thefile is nt4.txt.

Preliminary Considerations
Before you begin, you need to know which operating systems SMS lets youupgrade: MS-DOS 5.0 or later, Windows 3.1x, and Windows for Workgroups (WFW)3.1x to either Win95 or NT. SMS does not allow an automatic upgrade from OS/2,and you cannot upgrade Win95 to NT 4.0. In these cases, you must perform amanual installation.

Networked Windows installations also require special handling. If you havea networked Windows version and want to use SMS to upgrade, consider rollingback to MS-DOS before you upgrade.

If your environment has any dual-boot computers, you must choose theoperating system under which you want to install the SMS client, and make thatOS your primary one. SMS client functionality will not be available under thesecondary operating system.

To ensure successful automation of your new OS rollout, you must plan itcarefully. The following five steps are crucial in any SMS upgrade plan. (Formore information on planning an upgrade using SMS, see, "References for Planning an Upgrade.")

STEP 1
Identify Client Configurations
Both Win95 and NT allow for multiple configurations. To begin planning anupgrade, you must identify the configurations in your existing environment andidentify your clients' optimal configurations. You will use this information fortesting and for automating or customizing the setup. Here is a checklist ofitems to consider:

Setup. Decide the extent to which you let users set up andconfigure their environments during initial installation. For example, do youwant users setting up the Microsoft Exchange mailbox using the Exchange wizard,or do you want to fully automate the setup?

Networking Options. Determine the default protocol (e.g.,TCP/IP, IPX). Determine what redirector you will install (e.g., Microsoft Clientfor Windows Networks, Microsoft Client for NetWare Clients, Novell Client 32).Decide which Services you need to install (e.g., Simple Network ManagementProtocol--SNMP--Agent, Remote Access Service--RAS, NetWare Client Services).

Security. Note which users have access to their hard disk.(Locked-down workstations will require special consideration, and you may needto upgrade them manually.)

Policies. Integrate current and future policies into yourtest plan.

Profiles. Establish any user or hardware profiles. (Forinformation on user profiles, see Drew Heywood, "Windows NT User Profiles,"September 1997. For information on hardware profiles, see Mike Reilly, "ConfiguringHardware Profiles," September 1997.)

Applications. Identify which applications are local andwhich are remote. What applications run locally on all desktops? Whatapplications run from the server? Do you have applications that require opendatabase connectivity (ODBC)?

After you have considered all these points, use them to create aspecification for each operating system and configuration. The specificationsneed to match your current environment or become a plan for your idealenvironment.

STEP 2
Identify Target Computers and Software
An accurate and complete list of target computers (those you want toupgrade) in the SMS database is essential for a successful upgrade. Take thefollowing steps to compile an accurate list of target computers:

*Verify the integrity of the SMS database. Before you query the SMSdatabase for target computers, make sure you have an up-to-date computerinventory. Increase hardware inventory collection frequency to once daily. Uselogon scripts to collect inventory at logon or when the user runs runsms.bat.Drop outdated computers from the database. Tip: If the database containsquestionable information, you need to delete the site history files (*.hms). Youcan find these files in smssite.srvinventry.boxhistory. When you deletesite history files, you do not compromise the database's integrity; instead, youensure that complete Management Information Format (MIF) files are passed to thedatabase. (For details about MIF files, see Mark Eddins, "CustomizingSystems Management Server," January 1997.)

*Verify hardware compatibility. You can use the SMS query function to listcomputers that meet the new operating system's minimum hardware requirements andthose that do not. At a minimum, your query must identify processor name, amountof RAM, available hard disk, display type, and network card. Also check forclient computers that are not on Microsoft's Hardware Compatibility List (HCL).You may want to exclude these computers to avoid potential problems.

*Verify software compatibility. Some programs will run under the newoperating system but will cause an installation to fail if they run during theupgrade. For example, many virus-checking terminate-and-stay-resident (TSR)programs run after you install Win95, but you need to stop or remove them beforeyou upgrade. Some TSRs are incompatible with Win95, but Win95 Setup will removethese TSRs from Autoexec.bat. Also, several applications are not compatible withWin95. Determine software incompatibilities before you run the upgrade. You canask software manufacturers whether they have released an upgrade.

To help you verify incompatible applications and TSRs, check out theprograms.txt file included with Win95. Tip: When upgrading WFW to NTWorkstation, having 32-bit file access and disk access enabled will cause NTSetup to hang. To disable 32-bit file access, edit the system.ini file andcomment out the following lines from the [386Enh] section:

device=vfat.386

device=vcache.386

To disable 32-bit disk access, edit the system.ini file and comment out thefollowing lines from the [386Enh] section:

device=*BLOCKDEV

device=*PAGEFILE

device=*int13

device=*wdctrl

STEP 3
Lab Testing
Ensure that you allocate adequate time, hardware, and people to testing.Focus on these three areas: automation and unattended scripts, lab testing ontarget hardware, and software testing for compatibility.

Scripts. Use the specifications you created in Step 1 toidentify the installation scripts you need to create and test. Ask yourself thefollowing questions: Do you need to configure an application after you installit? Can you automate that configuration? Do you need to add or remove anyapplications or desktop icons installed by default? Do you want to add yourcompany logo to the wallpaper? Tip: If you're creating a fully automatedinstallation script, you can modify the SMS Help Desk Options to enable remotecontrol by default. See the Microsoft Knowledge Base article Q122399, "EnablingHelp Desk Options for MS-DOS Clients," for details, http://www.microsoft.com/kb/articles/q122/3/99.htm. You also can establish differentuser profiles for different departments.

Target Hardware. Establish a test environment thatsimulates your environment with typical target clients and operating systems. Ifpossible, back up several real clients and restore their images on your testcomputers. You can use the clients' specifications to derive a testing goal.Tip: Don't immediately attempt a fully automated installation. Start bytesting a simple upgrade without customization. Once you achieve basicfunctionality, you can add customized scripts or changes.

When testing, you must use the same operating system distribution mediathat you will use for the real upgrade. Differences exist between standardretail versions of an operating system, OEM versions, and special versions thatcome with Microsoft Developer Network or Microsoft BackOffice. The specialreleases might have setup restrictions that can cause your upgrade to fail. Astesting progresses, write down the test scenarios (client hardware and softwareconfigurations, the batch files or scripts used, etc.) and the results.

Software Compatibility. In the test environment, you needto upgrade every variant of your clients' operating systems, including anypatched versions. After upgrading the test machines, test every local andnetwork application. Check for software conflicts, and ensure that the SMSclient components work correctly.

When a software conflict exists, try one of these three options:

*Remove computers with incompatible software from the machine group, andupgrade them manually.

*Write and run a script that removes or stops the incompatible item beforethe upgrade.

*Build separate target machine groups for users with specific needs. Forexample, if outside contractors have security restrictions, they can receive adifferent installation from full-time employees.

STEP 4
Pilot Testing
A pilot test is a check against lab testing. Even if you achieved successfultest results, you still need to conduct a pilot test. A pilot test establishes areal production environment with a small set of computers and users.

This test is your first contact with users, and they will introduce a newset of variables. Try to select technical users and flexible novice users.Technical users might not cause errors like a non-technical user would, butthese users help identify network challenges, such as servers not responding orinstallation scripts not running correctly. Novice users will help you identifyunclear parts of your process.

Choose a variety of hardware configurations, and select a diverse group ofusers. For example, you might want to include client configurations you left outof your test environment testing. You might also decide to have a technician onsite during an upgrade to help with problems.

Last but not least, communication is a vital factor in successfuldeployment (e.g., management might need to know that you must install someclient computers manually). Inform users of the SMS logon script processing, anddefine Package Command Manager for them. Teach users how to use it and how touse the other SMS client utilities.

STEP 5
Production
After you have evaluated your pilot results and made any modifications toyour process, you are ready to introduce users to the new operating system andtrain them. Limit deployment jobs to 25 clients at a time, rather than all 1000or so at once. Stop at appropriate places to reassess your results andstreamline your process.

In his review of SMS 1.2 for Windows NT Magazine in May 1997, TimDaniels wrote: "You need to realize that SMS is a precision tool: You musthave the proper training and support to get the greatest benefit."

After a successful deployment using SMS, everyone in your organization willagree. Your users, Help desk staff, and managers will appreciate your carefulplanning and the smooth operation of a very complex task.

Sign up for the ITPro Today newsletter
Stay on top of the IT universe with commentary, news analysis, how-to's, and tips delivered to your inbox daily.

You May Also Like