Tips for Using the ZENworks snAppShot Utility
Articles and Tips: article
01 Apr 2001
Many network administrators who use the Novell ZEN- works products to deploy applications across their company's network are not taking full advantage of the ZENworks snAppShot utility. For example, you may think that ZENworks for Desktops always pushes down an entire application, even if that application is already installed on the destination workstation.
Using the snAppShot utility (which is part of ZENworks for Desktops), you can create ZENworks application packages that push only the new or changed files down to each workstation. For example, if you deploy an application that is already installed on a destination workstation, the snAppShot utility sends only those files that do not exist on the destination workstation.
THE SNAPPSHOT UTILITY
The ZENworks snAppShot utility makes a package that includes all the changes made to a workstation when you install an application or perform another system reconfiguration. To create this package, the snAppShot utility performs a preinstall discovery process and a postinstall discovery process. The snAppShot utility then compares the two discovery processes.
For most applications, the application packages that the snAppShot utility creates are completely hardware independent and are often compatible with all Windows versions. In addition, these application packages are completely customizable on a component-by-component basis.
The following examples show how you can use snAppShot application packages to distribute files to workstations on your company's network:
You can install a new virus DAT file for McAfee virus software to replace an outdated DAT file captured during an earlier snAppShot.
You can overwrite a critical DLL file every time a user launches a particular application, ensuring that the correct version of the DLL is always available for the application.
You can prevent a user from overwriting a critical DLL file, ensuring that the DLL file remains uncorrupted (or otherwise undamaged).
You can dynamically insert a variable (or macro), a user's name, an e-mail address, a Post Office Protocol (POP) 3 server address, or any other attribute contained in NDS eDirectory into an application as the application is distributed. As a result, you can personalize the application for each user who receives the application.
You can ensure that an application is completely self-repairing online or offline. You can also ensure that users can easily and safely uninstall an application.
CUSTOM SNAPPSHOTS OR STANDARD SNAPPSHOTS?
My personal rule for using the snAppShot utility is always, always, always use the snAppShot Custom method rather than using the Standard method. (See Figure 1.) Why? The Standard method sets the package defaults to distribute all components for an application to the destination workstation every time. In other words, even if a file or registry setting exists on the destination workstation, ZENworks for Desktops sends that file or registry setting across the wire and applies it to the destination workstation, consuming both time and bandwidth.
Figure 2 shows the default settings for a snAppShot application package. As you can see, all files, registry settings, and INI file changes are applied, whether or not they are present on the destination workstation. This default setting ensures that an application package deployment is always successful. However, these default settings may lead network administrators to mistakenly believe that ZENworks for Desktops uses only a "push always" method.
By using the Custom method to create an application package, you can customize the snAppShot settings. For example, you can set the Application Object Template (AOT) to use the "Copy if newer" setting for all files and folders. You can also set INI file entries and registry entries to use "Create if does not exist." If you use these custom settings, ZENworks for Desktops will distribute only the required files and settings to the destination workstation. (See Figure 3.)
Using the Custom method does not compromise the flexibility of the snAppShot process. If necessary, you can still push critical files, such as a DLL or a registry value, to the destination workstation every time an application is launched. For example, one application may require an older version of a specific DLL, and another application may need a newer version of the same DLL.
With the Custom method, you can set a particular DLL to "Copy always" and "Distribute always." In this way, you can ensure that the destination workstation can support both applications.
Using the Custom method also has benefits if you have to uninstall an application. If a workstation already has an application and you use the Custom method to create the application package, you gain immediate uninstall capabilities for that application through ZENworks Application Launcher's uninstall feature.
In addition, if you deploy an application using a method other than ZENworks for Desktops, you can create application packages that enable you to manage the application using ZENworks for Desktops. In other words, you get full ZENworks management with a mere few clicks of the mouse, rather than having to completely redeploy the application.
Because ZENworks for Desktops is easy to use, people frequently miss the potential of the ZENworks snAppShot utility. To tap the full potential of ZENworks Application Deployments, be sure to always use the snAppShot Custom method.
You can read more about how to use the ZENworks snAppShot utility by visiting the following web sites:
For more information about the complete ZENworks product line, visit the Novell web site at www.novell.com/products/zenworks.
Ted Haeger works for Novell as a ZENworks Solutions Evangelist. He is also a member of the Novell ZENworks product management team.
* Originally published in Novell Connection Magazine
The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.