Product Snow Inventory Client for OS X Version 2.3 Date 2014-03-07 Content Overview Configuration and running Installation Appendix
ABOUT THIS DOCUMENT... 3 OVERVIEW... 3 OPERATING SYSTEMS SUPPORTED... 3 CONFIGURATION AND RUNNING... 4 CONFIGURATION FILE OPTIONS... 4 SCHEDULING... 7 COMMAND ARGUMENTS... 7 INSTALLATION... 9 INSTALLATION FROM A PREPARED PACKAGE... 9 Install... 9 Uninstall... 9 MANUAL INSTALLATION... 9 Install... 9 Uninstall... 9 Install an update... 10 DEFAULT LOCATION OF FILES... 10 APPENDIX A... 11 Page 2 of 11
This document describes how to configure, and install the Snow Inventory Client for OS X version 2.3. The Snow Inventory Client for OS X is part of the Snow Inventory solution and is used for inventory of Mac OS X computers. The OS X client scans the computers and saves the collected data to an inventory file, which is sent to the Snow Inventory server. Metering data is collected by the separate xmetering client. The Snow Inventory Client for OS X 2.3 supports versions Mac OS X 10.6 Snow Leopard to OS X 10.9 Mavericks. Page 3 of 11
Before you install the OS X and xmetering clients, you need to create a configuration file. The name of the configuration file must be snowclient.conf and it should be stored in the folder /etc. (You can change the configuration file path by using the -C argument, see section Command arguments.) The settings in the configuration file define how the client should operate. Some settings are mandatory, such as the connection settings, while others only need to be defined if you want another value than the default. In Appendix A, you find an example of a configuration file. Connection settings DestinationWebService DestinationFile DestinationSMBShare [url] Full URL to the web service using http/https. [path] Path to the file. If you specify a path to an existing folder or a path which ends with "/", the client will put a file with a generated unique filename in that path. If you specify a full file path, the client will put the data in a file with that name. If the file is already there it will be overwritten. If you only specify a file name, it will be put in /Library/Application Support/Snow Software/. [path] Path to the share. To use this functionality, a smbclient must be installed. Settings ID ConfigurationName CollectHardwareInfo CollectSoftwareInfo Specify one of the following: guid - The client creates a GUID (/etc/.snowguid), which is always used as ID localhostname - Use the first found hostname as ID hostname - Use the manually set hostname as ID filewave - Use filewave settings to find the ID [name] Name of the configuration yes - Collect hardware information about the computer. yes - Collect information about software installed on the computer. Page 4 of 11
Settings RunJarScanner ReportAllJarFiles ScanFolder SiteID SkipFolder SkipFileSystemType SkipScripts SetTemporaryFolder SetStorageFolder NumberOfLogFields AnonymousUsers AnonymousIP TrunkSoftwarePackages AddLatency UpdateDyldCache HideUser OS DisplayAdapter EnvVar yes - Scan Java ARchive files. yes - Send information about all Java ARchive archives, even if the meta data doesn t specify the package type as an application. This option is only used if RunJarScanner = yes [path] Recursive binary scan from this folder. Default value is /Applications/. The SiteID is the site name of the computer. This can for example be the company/country/location. [path] Do not scan this folder. By default, the following folders are excluded: /net/, /panfs/, /sys/, /dev/, /tmp/, /boot/, /usr/include/, /usr/share/, /usr/src/, /var/, /.MobileBackups/, /.Spotlight-V100/, /.Trashes/ [type] Do not scan folders mounted on this file system type (if not explicitly added with the ScanFolder option). By default, the following file system types are excluded: SMBFS, NFS, VMHGFS, MTMFS, and DEVFS. yes - Do not report executable script files in the list of software. [path] Put all temporary files in this folder. The default folder is /tmp/snow/. [path] Put all non-temporary data files in this folder. The default folder is /Library/ApplicationSupport/Snow Software/. [number] - Number of saved time stamps in the log. Default value = 6 yes - Replaces all usernames with SHA1 hashes. yes - Replaces all IPs with SHA1 hashes. yes - Makes sure there is only one executable file, determined by Name, Version and Language, reported for each package. [number of μseconds] When reading or processing large amounts of data/objects, add some extra latency between the objects to prevent the system from spending too much resource on this process. This might also be a good solution when scanning exceptionally fast drives, to keep the CPU usage down. Forces an update of the dyld s cache. This option is only executed during client installation. [username] Do not report any data for this user. Page 5 of 11
Settings ExpSlot Font Keyboard LogicalDisk Memory Monitor Mouse Multimedia NetAdapter Pci PhysicalDisk Port Printer Processor Usb Login Metering settings xmeteringloglevel A value between 0-8: xmeteringmaxlogsize 0 = Emergency 1 = Alert 2 = Critical 3 = Error 4 = Warning 5 = Notice 6 = Info 7 = Debug 8 = Full debug Default value is 4 = Warning Maximum number bytes allowed in the log file. Default value is 524288 (which is ½ MB). 0 bytes is not a valid value and will be replaced with the default value. Page 6 of 11
The OS X client scans the computer regularly, which by default is every 24 hours. Before the scanning starts, the OS X client checks when the last scanning was performed. If that was less than 24 hours ago, the scanning will not be performed. This means that scanning will never be performed more frequently than once every 24 hours. By configuration, it is possible to schedule when the client should scan; for example at 01:00 am every day, at 4:05 am every Sunday, or at 00:30 am on the first of every month. Configuration of scan scheduling: The scan scheduling is defined in /Library/LaunchDaemons/com.snowsoftware.Inventory.plist If the OS X client for any reason cannot scan a binary, it might (by choice of the internal logics) add the binary as a SkipFile in the configuration file. This means that the binary will be excluded from future scannings. For more information, see section Configuration File Options. If the client receives a new configuration file, the SkipFile setting in the new file will apply. When the scan is completed, the client sends the inventory file with all scan data to the Snow Inventory Server. If the OS X client for any reason cannot send data to the server, it will by default try again every 15 minutes. The inventory data file is stored until the data has been sent successfully. After installation, the OS X client is fully automated and operates without any user interaction. However, there are commands for manual control. From a terminal, you can control the xclient and the xmetering with commands followed by an argument (see tables below). Example: xclient version xmetering version Some command lines require superuser privileges. To temporarily gain superuser privileges, you can send the command line as an argument to the command sudo. Example: sudo./xclient test Page 7 of 11
xclient arguments -v or version -C [filename] or ConfigFile [filename] -ZF or ZeroFootprint -stop -test -force -delay [seconds] -findconfiguration -findstorage Get client version Run client with this configuration file instead of the default one Zero footprint scan. No files are stored after scan. Stop a scanning client. Test connection to the selected Snow IDR server. Works only with IDR versions that contains the GetServerDate function. Force the client to run a scan in manual testing mode Start working in [seconds] number of seconds Print (on the terminal) the full path to the configuration file that will be used Print (on the terminal) the full path to the storage folder xmetering arguments -v or version -C [filename] or ConfigFile [filename] Get client version Run client with this configuration file instead of the default one Page 8 of 11
This section describes the procedures for installation from an OS X installation package. 1. Execute the installation package. 2. Follow the displayed instructions. Follow the instructions for a manual uninstallation, see section below. This section describes the procedures for manual installation, uninstallation, and update. 1. Copy the following files to the client computer: xclient Copy this file to any folder xmetering Copy this file to the same folder as xclient snowclient.conf Copy this file to the folder /etc 2. As super user, start a terminal. 3. Install the xclient and xmetering clients with the command line: xclient install 1. As superuser, start a terminal. 2. Uninstall the xclient and xmetering clients with the command line: xclient uninstall 3. Delete all installed files, data files, and temporary files with the following command lines: rm [full path to xclient] rm [full path to xmetering] rm /etc/snowclient.conf rm -rf /Library/Application Support/Snow Software/ Page 9 of 11
1. As superuser, start a terminal. 2. Uninstall the xclient and xmetering clients with the command line: xclient uninstall 3. Overwrite the old xclient and xmetering files with the new files. 4. Ensure the configuration file snowclient.conf is still correct. 5. Install the new xclient and xmetering clients with the command line: xclient install Most client files are stored in the folder /Library/Application Support/Snow Software/: *.inv inventory data file client.lg xclient log file metering.lg xmetering log file *.met xmetering data file Temporary files are by default located in the folder /tmp/snow and will be deleted when no longer needed. If the client s ID is a generated GUID, it will be stored in a file called /etc/.snowguid. Page 10 of 11
Example of snowclient.conf configuration file: DestinationWebService=http://idr.company.com SiteID=COMPANY ID=guid ConfigurationName=MyConfigurationName CollectHardwareInfo=yes CollectSoftwareInfo=yes RunJarScanner=yes ReportAllJarFiles=yes ScanFolder=/Applications/ Page 11 of 11