Chat now with support
Chat with Support

KACE Systems Management Appliance 9.1 Common Documents - Administrator Guide

About the KACE Systems Management Appliance (SMA) Getting started
Configuring the appliance
Requirements and specifications Power-on the appliance and log in to the Administrator Console Access the Command Line Console Tracking configuration changes Configuring System-level and Admin-level General Settings Configure appliance date and time settings Enable Two-Factor Authentication for all users Verifying port settings, NTP service, and website access Configuring network and security settings Configuring Agent settings Configuring session timeout and auto-refresh settings Configuring locale settings Configuring the default theme Configure data sharing preferences About DIACAP compliance requirements Configuring Mobile Device Access Enable fast switching for organizations and linked appliances Linking Quest KACE appliances Configuring history settings
Setting up and using labels to manage groups of items Configuring user accounts, LDAP authentication, and SSO Using Replication Shares Managing credentials Configuring assets
About the Asset Management component Using the Asset Management Dashboard About managing assets Adding and customizing Asset Types and maintaining asset information Managing Software assets Managing physical and logical assets Maintaining and using manual asset information Managing locations Managing contracts Managing licenses Managing purchase records
Setting up License Compliance Managing License Compliance Setting up Service Desk Configure the Cache Lifetime for Service Desk widgets Creating and managing organizations Importing and exporting appliance resources
Managing inventory
Using the Inventory Dashboard Using Device Discovery Managing device inventory
About managing devices Features available for each device management method About inventory information Tracking changes to inventory settings Managing inventory information Finding and managing devices Provisioning the KACE SMA Agent Manually deploying the KACE SMA Agent Using Agentless management Adding devices manually in the Administrator Console or by using the API Forcing inventory updates Managing MIA devices Obtaining Dell warranty information
Managing applications on the Software page Managing Software Catalog inventory
About the Software Catalog Viewing Software Catalog information Adding applications to the Software Catalog Managing License assets for Software Catalog applications Associate Managed Installations with Cataloged Software Using software metering Using Application Control Update or reinstall the Software Catalog
Managing process, startup program, and service inventory Writing custom inventory rules
Deploying packages to managed devices
Distributing software and using Wake-on-LAN Broadcasting alerts to managed devices Running scripts on managed devices Managing Mac profiles Using Task Chains
Patching devices and maintaining security
About patch management Subscribing to and downloading patches Creating and managing patch schedules Managing patch inventory Managing Dell devices and updates Maintaining device and appliance security
Using reports and scheduling notifications Monitoring servers
Getting started with server monitoring Working with monitoring profiles Managing monitoring for devices Working with alerts
Using the Service Desk
Configuring Service Desk Using the Service Desk Dashboard Managing Service Desk tickets, processes, and reports
Overview of Service Desk ticket lifecycle Creating tickets from the Administrator Console and User Console Creating and managing tickets by email Viewing tickets and managing comments, work, and attachments Merging tickets Using the ticket escalation process Using Service Desk processes Using Ticket Rules Run Service Desk reports Archiving, restoring, and deleting tickets Managing ticket deletion
Managing Service Desk ticket queues About User Downloads and Knowledge Base articles Customizing Service Desk ticket settings Configuring SMTP email servers
Maintenance and troubleshooting
Maintaining the appliance Troubleshooting the KACE SMA
Appendixes Glossary About us Legal notices

Understanding regular expressions

Understanding regular expressions

You can use regular expression syntax to match filenames.

The following table provides an overview of the regular expression syntax used to match filenames:

Character

Description

Example Expression

Target Files

Files Matched

(any string)

Non-special characters match any filename that contains the string.

abc

abcFile.xls

Example.jpg

File.doc

Myabc.txt

MyFile.abc

abcFile.xls

Myabc.txt

MyFile.abc

.

Dot matches any single character. When entered alone it matches all files.

.

abcFile.xls

Example.jpg

File.doc

Myabc.txt

MyFile.abc

abcFile.xls

Example.jpg

File.doc

Myabc.txt

MyFile.abc

\

Backslash is used to escape a special character and for creating a back-reference.

For more information, go to http://rexegg.com/regex-capture.html.

.*\.txt$

abcFile.xls

Example.jpg

File.doc

Myabc.txt

MyFile.abc

Myabc.txt

^

Caret matches the characters you specify to the start of the filename.

^k

install.exe

kinstaller.exe

runkbot.bat

kinstaller.exe

|

Pipe separates a list of options to match.

run|install

install.exe

kinstaller.exe

runkbot.bat

install.exe

kinstaller.exe

runkbot.bat

$

Dollar matches the characters you specify to the end of the filename.

bat$

install.exe

kinstaller.exe

runkbot.bat

runkbot.bat

?

Question mark makes the preceding character optional in matches.

\.log10?$

a.log1

afile.txt3

app.log

appconf.log11

mylog.log10

a.log1

mylog.log10

*

Asterisk matches the preceding character zero or more times.

\.log1*$

a.log1

afile.txt3

app.log

appconf.log11

mylog.log10

a.log1

app.log

appconf.log11

+

Plus matches the preceding character one or more times.

ap+.*\.log

a.log1

afile.txt3

app.log

appconf.log11

mylog.log10

app.log

appconf.log11

[ ]

Brackets enclose a character class and match any character within the brackets.

Character class special character rules differ from normal regular expressions.

[123]

a.log1

afile.txt3

app.log

appconf.log11

mylog.log10

a.log1

afile.txt3

appconf.log11

mylog.log10

()

Parentheses enclosing characters create a back reference and match the preceding characters and/or the enclosed characters.

For more information, go to http://rexegg.com/regex-capture.html.

(p)\1

a.log1

afile.txt3

app.log

appconf.log11

mylog.log10

app.log

appconf.log11

{n}

Curly brackets repeat the preceding character the number of specified times, where n is greater than or equal to 1.

{p}\.log$

a.log1

afile.txt3

app.log

appconf.log11

mylog.log10

app.log

Regular Expression Rule Reference

Regular Expression Rule Reference

The syntax of a regular expression rule varies slightly from the other File rules. The fullpath argument is a string that matches the absolute path to the file location, but does not include name of the file. The filename is specified as a separate argument using a regular expression.

The following table provides a list of rules that allow you to use regular expressions.

Syntax

Win

RHEL

OS X

Description

FilenamesMatchingRegexExist (fullpath,regex)

X

X

X

Returns true if any files in the specified directory match the filename you entered using a regular expression.

FilenamesMatchingRegexGreaterThan (fullpath,regex,value)

X

X

X

True if the number of files that match is more than the value.

FilenamesMatchingRegexLessThan (fullpath,regex,value)

X

X

X

True if the number of files that match is less than the value.

FilenamesMatchingRegexEqual (fullpath,regex,value)

X

X

X

True if the number of files that match is the same as the value.

FilenamesMatchingRegexReturn (fullpath,regex,type)

X

X

X

Sets the Custom Inventory Field to the matching filenames (includes path).

Defining rule arguments

Defining rule arguments

You can define arguments in Custom Inventory rules to find paths, files, registry keys, registry entries, version information, environment variables, and other attributes.

For rule syntax and usage, see the tables in Checking for conditions (conditional rules), Getting values from a device (Custom Inventory Field), and Matching filenames to regular expressions.

Finding a path or file

path and fullpath are strings that specify the absolute path to a directory or file on the device. For example:

The KACE SMA Agent locates the directory or file and performs the specific test.

Finding a registry key and entry

registryPath is a string that specifies the absolute path in the registry to a registry key. For example:

Specifying a version

version is an integer (type is TEXT) that the KACE SMA Agent compares to the version of the item being tested on the device.

For example, the FileVersionGreaterThan test returns ‘true’ if the value you specify is higher than the version number of the file or folder and otherwise returns ‘false’.

To test a range, join a Less Than and Greater Than rule as follows:

Specifying environment or user variables

var is a string that matches the actual name of the environment variable on the device.

For example, to test that the Program Files directory variable is correctly set:

Specifying a file attribute

attribute is a system property, a file or folder property, or a KACE SMA Agent-assigned property on the device. The appliance provides operating system-dependent argument types.

Using Windows file attributes

You can use the FileInfoGreaterThan, FileInfoLessThan, and FileInfoEquals functions to test a file property on Windows in the following syntax:


FunctionName (fullpath, attribute, type, value)

The following table shows the attributes supported by Windows:

Attribute

Type

Description

AccessedDate

DATE

Last date and time the file was accessed.

Comments

TEXT

Additional information provided for diagnostic purposes.

CompanyName

TEXT

Name of the company that produced the file.

CreatedDate

DATE

When the file was created.

FileBuildPart

NUMBER

Third position of the File Version. For example: In version 1.2.3, 3=Build.

FileDescription

TEXT

File Description of the Windows File Properties Detail page.

FileMajorPart

NUMBER

First position of the File Version. For example: In version 1.2.3, 1=Major.

FileMinorPart

NUMBER

Second position of the File Version. For example: In version 1.2.3, 2=Minor.

FileName

TEXT

Current name of the file. Also see FileExists.

FilePrivatePart

NUMBER

Fourth position of the File Version: For example: In version 1.2.3.4, 4=Private.

FileVersion

TEXT

Complete File Version shown on the file properties Detail page.

Also see FileVersionEquals, FileVersionGreaterThan, and FileVersionLessThan.

InternalName

TEXT

Internal name of the file, if one exists, such as the component name.

If the file has no internal name, it is equal to the original filename, without an extension.

Language

TEXT

Language code, displays corresponding name on the File Properties Detail page.

LegalCopyright

TEXT

Copyright notices that apply to the file.

LegalTrademarks

TEXT

Trademarks and registered trademarks that apply to the file.

ModifiedDate

DATE

Last day and time the file was modified.

OriginalFilename

TEXT

Provides the full name of the file when it was put or installed on the device.

PrivateBuild

TEXT

Information about the version of the file.

ProductBuildPart

NUMBER

Third position of the Product Version. For example: In version 1.2.3, 3=Build.

ProductMajorPart

NUMBER

First position of the Product Version. For example: In version 1.2.3, 1=Major.

ProductMinorPart

NUMBER

Second position of the Product Version. For example: In version 1.2.3, 2=Minor.

ProductName

TEXT

String that matches the Product Name of the Windows property.

ProductPrivatePart

NUMBER

Fourth position of the Product Version. For example: In version 1.2.3.4, 4=Private.

ProductVersion

TEXT

The full production version.

Also see ProductVersionEquals, ProductVersionGreaterThan, and ProductVersionLessThan.

SpecialBuild

TEXT

Additional information about the build.

Testing for Linux and Mac file attributes

On Linux and Mac devices you can use the following arguments to test file attributes:

Attribute

Type

Description

access_time

DATE

The last time the user or system accessed the file

block_size

NUMBER

The block size of the file

blocks

NUMBER

The number of blocks used by the file

creation_time

DATE

The time the file was created

device_number

NUMBER

The identification number of the device (disk) containing the file

group

TEXT

The group name of the file owner

inode

NUMBER

The inode number of the file

modification_time

DATE

The last time a change was made and saved

number_links

NUMBER

The number of hard links to the file

owner

TEXT

The username of the person who owns the file

size

NUMBER

The size of the file

Specifying the datatype

type identifies the type of data you are testing or returning.

The KACE SMA Agent supports the following types:

TEXT is a string. Only valid for exactly matching in conditional rules such as Equals. In ValueReturn rules, this sets the Custom Inventory Field type to string and therefore limits search criteria and filtering to matching operators.
NUMBER is an integer. Valid in all conditional rules, this allows you to specify a whole number for comparison.
DATE must be in the format of MM/dd/yyyy HH:mm:ss. For example:09/28/2006 05:03:51. Time is required. For example, in a comparison such as greater than, you must at least specify the time as 00:00:00.

Specifying values to test

value typically follows type except in a rule where the datatype is known, such as in a version rule. The value you specify must match the type. See Specifying the datatype.

Specifying the name of a registry entry (Windows only)

valueName is a string that matches the name of the registry entry you want to test. Used only in registry tests for Windows devices.

Specifying a PLIST key (Mac only)

entry is either NUMBER, TEXT, or DATE and matches a key in a PLIST file on a Mac OS X device. If the wanted key is contained in an array/dictionary within the PLIST file, it can be referenced by specifying the name/integer for the array/dictionary, using a delineating colon, and then the name/integer of the key (dictionary:key) in the entry argument.

Argument examples:

A key, Item 0, within an array, PackageGroups, is referenced by using PackageGroups:0 for the argument
A key, contentType, within the dictionary, Item 102, is referenced by using 102:contentType for the argument.

Using a regular expression

regex is a regular expressions that matches a filename in a Conditional or Value Return rule. See Matching filenames to regular expressions for more details.

Defining commands

The shell command functions allow you to specify the command you want to run on the device. The guidelines for writing rule arguments do not apply to commands. However, white space after the opening parenthesis, and immediately before the closing parenthesis, is stripped from the command.

Test Custom Inventory rules

Test Custom Inventory rules

To test Custom Inventory rules you can run a custom inventory command on a KACE SMA Agent-managed device. This ability enables you to debug Custom Inventory rules without running the entire inventory process.

2.
Enter the following command: kdeploy -custominventory

The Agent contacts the KACE SMA and runs the Custom Inventory. Queries and return values are displayed.

Related Documents