Another important part of the network administrator's job is to keep the software running on the network's computers up to date. All manufacturers of operating systems and applications periodically release patches or updates that correct problems with the software, enhance or modify existing features, or add new capabilities. In most cases, the process of updating a computer involves downloading an update program from the manufacturer's Web site and running it on the computer in question. However, keeping your network software updated is not simply a matter of blindly downloading and installing every patch you can find. The process includes researching the various updates that the manufacturers release, determining if they apply to your environment, and, in some cases, testing them before deployment.
Even a computer with a relatively simple configuration can have many different software components that are regularly updated. The operating system is the chief element you should keep up to date, but applications and device drivers should also be updated periodically. Years ago, manufacturers of operating systems would release many different software patches, each addressing a specific issue. This caused problems for both users and developers, because users sometimes had to download and apply a dozen or more patches to keep current, and because it was difficult for developers to know exactly how a particular installation was configured. If there are 10 patches available for a particular operating system version, people trying to support the product will have a difficult time keeping up with whether all of the patches have been applied and in what order.
To address this problem, operating system manufacturers started releasing groups of updates in a single package. This practice was pioneered by Microsoft with its Service Pack releases for the Microsoft Windows NT operating system. Each Service Pack release for a particular product contains a collection of patches and updates, all of which are applied by one installation program. Because the various patches have all been tested together, the operating system environment is consistent. Now all Microsoft products are updated using Service Packs, and most other operating system and application manufacturers have followed suit (although they might use different names for their releases).
When Microsoft releases multiple Service Packs for a product, each subsequent release is cumulative, meaning that it contains all of the updates from the previous Service Packs. This way, a user does not have to apply multiple Service Packs to bring a newly installed computer up to date. The only problem with this method of updating an operating system is that the Service Pack releases tend to become extremely large after a time. Microsoft Windows NT 4.0 Service Packs are now more than 30 MB in size, and the full version of Windows 2000 Service Pack 2 is over 100 MB. Because of their size, Microsoft also makes Service Packs available on CD-ROM for a nominal fee.
The downloadable versions of Microsoft's Service Packs take the form of a single compressed executable file that contains a large number of operating system components. To install the Service Pack, you run the file. The program then expands the components and installs them in the proper locations. The CD version of a Service Pack is the now-typical self-starting CD with a menu of options, one of which is installing the update. Figure 16.7 shows the update in progress for Windows 2000. Deploying a Service Pack on a network, however, can be a lengthy process. Depending on the capabilities of your users, you might need to travel to every computer to install the Service Pack, or you might be able to e-mail the Service Pack file to your users with instructions on how to install it. There are also network management software products available that can automate the process of installing Service Packs and other updates on all of the computers on the network.
Figure 16.7 The Windows 2000 Service Pack Setup dialog box
Operating system updates can include upgraded components for features you have not installed on a particular computer. In some cases, if you go back to the original distribution disk for the operating system to install new components, you must reinstall the latest update afterward, so that the new components you've installed are properly upgraded as well.
Operating system update releases go through a testing period, just like the operating system itself, but this does not necessarily mean that they are perfect. It's a good idea to check an operating system update before you install it, either by running it yourself in a lab environment or by monitoring Web sites and trade publications for news on problems with the latest release. You should also familiarize yourself with the release notes for the update, which list all of the specific changes that have been made to the operating system. There have been several occasions when major operating system updates have been modified to correct problems with their initial releases, and where your network is concerned, it pays to be cautious.
Between the releases of Service Packs or other major software updates, manufacturers may also make individual patches available. A patch is usually a small fix that is designed to address a highly specific problem. Whereas you can be fairly confident that you should install major updates (after they are tested), you should carefully read about any patches that become available to determine whether you even need to install them. In some cases, manufacturers recommend that you install a patch only under certain conditions, such as when you are using a particular combination of components or when you are experiencing a specific error. If your environment does not qualify, do not assume that you should install the patch anyway, just to keep your software current. Read all of the documentation accompanying the release and carefully follow the manufacturer's instructions.
Device drivers are another type of software component that is regularly updated, and you want to be even more judicious with your deployment of driver updates than with operating system updates. If your hardware devices are functioning properly, there is probably no reason to update their device drivers with every new release that comes out. Many network administrators are overzealous in this respect and start to assume that the latest release is automatically the greatest. In fact, this is often not the case. Unless you have a specific reason for applying a device driver update (for example, if you are experiencing the specific problem the update is documented to address), you are generally better off leaving your installations alone.
In addition to patches and updates, software manufacturers typically release periodic upgrades. Although the definitions differ depending on the manufacturer, an update is usually a relatively minor release that addresses specific issues or provides modest enhancements. An upgrade, by contrast, is a major release that provides new features and capabilities. In most cases, patches and updates are free, but you have to purchase an upgrade.
Deciding whether to upgrade your software can be difficult. In a network environment, a major software upgrade, whether of an operating system or an application, can be a complex and expensive undertaking. In addition to purchasing the software itself, you might need to upgrade the hardware in your computers (by adding memory, for example), pay people to install the new software on all of the computers, and even retrain your users to bring them up to speed on the new version. The cumulative cost of the process can be enormous.
Many applications today have reached the point where developers are inventing new features just for the purpose of releasing an upgrade. If you don't have a need for these new features, it might not be worth upgrading. However, it's also important to not allow your software to get too out of date. If you stay with an older version of a software product because it does everything you want it to and because all of your users are familiar with it, you may eventually get to the point where the manufacturer no longer supports the product, and the cost of upgrading then is much higher than it would have been earlier.