For those of you still using Novell Zenworks I’ve decided to compile a list of tips and tricks I’ve encountered during my time working with ZCM. Some of these will be obvious to long time users of the software, but hopefully you will learn something. These tips assume you are running Novell Zenworks 11.2.
Export Bundle To File: zman betf
One of the most useful tools in the “zman” tool which is available on your ZCM primary servers. It allows you to extract a bundle from ZCM into a file and attachments. Imagine you have a typical bundle with an icon, description, some embedded scripts (Run Script action), some files to copy (Install Files action). You used to have them somewhere else but you lost track of them. They’re in ZCM but you can’t find a way to extract them. You have a few options: ZMAN BETF, or run the bundle on a PC and look through the zmdcache and hope it didn’t get deleted. I prefer ZMAN BETF:
Usage: (bundle-export-to-file|betf) (bundle path) (XML file path)[version of the bundle] [-c|--export-content] Help: (bundle path) Path of the bundle relative to /Bundles. (XML file path) File into which the bundle's information will be stored in XML format. [version of the bundle] Version of the bundle to be exported.If not specified release version of the bundle is taken. Specify input as sandbox for getting sandbox version. -c, --export-content Exports the content of the bundle to a sub directory within the directory containing the XML file to which the bundle information is exported. If the option is not specified, it would not export the content.
You have identified you want to export your .NET 4.0 Install bundle. How to proceed? Run the following command:> zman betf "/Bundles/Applications/Microsoft/.NET Framework 4.0" DotNetFramework_40 -c
Once the command completes you have a directory tree which looks like this in the current folder:>tree /F /A C:. | DotNetFramework_40.xml | DotNetFramework_40_ActionContentInfo.xml | \---DotNetFramework_40_content \---7542932ca7cd186be8dc634b05d4a9dc dotNetFx40_Full_x86_x64.exe
Your DotNetFramework_40.xml file contains most of the information in the bundle screen in Zenworks Control Center. The DotNetFramework_40_ActionContentInfo.xml appears to contain information relating to the content uploaded into the bundle. The DotNetFramework_40_content folder contains the exported content, so this would be the actual .NET 4.0 setup files in this case. Depending on how you uploaded your files they will either be contained in the XML files or in the content folder. Either way if the “zman betf” command succeeds you should have everything you need to either reverse engineer the bundle or reimport it into ZCM.
Compile Zenworks Troubleshooting Data: zac zeninfo
This tools is primarily used for Novell support to quickly diagnose issues but it really contains some cool information that you can use to troubleshoot your user’s issues without contacting Novell. The command is simple: “zac zeninfo”. Once the command is run it will collect a LOT of diagnostic data about your machine, zip it up, and present you with a zip file. Extracting the zip file you get this labeled:zeninfo-7-27-2013-18-20-43: ----agentCacheInfo | \---zmd | +---locationconfig - Location Configurations | | \---certificateMaps - Server Certificates | +---settings - Zenworks Agent Settings | \---ZenCache - Zenworks Cache | \---objData +---configInfo - More Zenworks configuration data | \---ZENWORKS_HOME | \---conf | +---pmconfig | +---preboot | +---pru | +---resources | +---RMPolicy | \---Satellite +---debugLogs - Debug logs from around the system | +---eventLogs - Windows Application Event Log | +---SYSTEM - System logs | | \---TEMP | +---system-update - Zenworks update logs | +---WIN_SYS_DIR - Zenworks logs from system32 | +---ZENWORKS_HOME - Zenworks agent log files | | \---logs | | +---CentralStore | | +---ExternalStore | | +---LocalStore - Local agent log files (bread and butter) | | +---preboot - Imaging logs | | \---trace | \---ZES - Endpoint Security Logs | +---Archive | +---FDEScripts | +---Install | +---Logs | +---MSI | +---Reports | +---Support | \---TempFiles +---inventoryInfo - Inventory Service Logs | \---ZENWORKS_HOME | +---bin | \---work | +---conf | \---temp +---MDStatus - SQLite database containing current bundle statuses +---productInfo - List of all zenworks files and their versions +---propPageInfo - Property pages from the zenworks client (very useful) | +---Bundles | +---images | +---Inventory | +---Logging | +---Policies | +---Remote Management | +---Status | \---Windows Proxy +---refreshInfo - Some data on the last device and user refreshes | +---device | | +---GeneralRefresh | | +---PartialRefresh | | +---SystemStart | | \---UiRefresh | +---user (677877) | | +---GeneralRefresh | | \---UiRefresh | \---user (677929) | +---GeneralRefresh | \---PartialRefresh \---systemInfo - MSINFO32 and installed MSI for client PC
If your support people can’t figure out why a bundle isn’t working you can have them capture this file then install the application manually. You can go back at your convenience and look through the file and see why the bundle failed. If you’re a large organization where a specific application is having an issue you could gather a large number of these files to see if you can determine a pattern with the PCs which are having an issue.