The XML Importer is used to inventory Linux and MacOS clients. It can be installed during the installation of the Agentless Scanner or alone at a later time on the ACMP server. In order to inventory the clients, a local Python script will run on the Linux and Mac clients to collect the necessary information of the client and store it in an XML file. Each client creates a separate XML file with inventory data. This XML file is then stored on a network share. This Python script can be distributed to the clients and executed with the Client Commands "Linux and MacOS Inventory" in "Advanced Inventory." The XML Importer service periodically scans the configured network shares, reads out the inventory information from the XML files and writes them to the ACMP database.
In the query manager, Linux and MacOS clients are marked with a tux or an apple icon.
Agentless Scanner: XML Importer
It is important to note that neither the NT notation (with \), nor the UPN notation (with @) can be used for the user name for logging in at the share. If a local user is to be used, you must enter the machine name in the Domain field. In addition, the password must not contain an @-sign.
Linux distributions Debian as from 6.0.3, Fedora as from 16, Open Suse as from 11.4 and Ubuntu as from 12.04 and MacOS X as from 10.6 Snow Leopard version are supported. In addition, the following requirements must be fulfilled:
• | Python 2.6 is installed |
• | Sufficient privileges to execute commands with "sudo" |
• | SSH service must be installed, started and accessible |
In addition, the following aspects must be observed for the inventory of Linux clients:
• | Only software that was installed with the package managers "dpkg" or "rpm" is inventoried. |
• | The following programs must be installed: |
▪ | „hdparm“ for reading out hard drives and drive ifnormation. |
▪ | „dmidecode“ for reading out BIOS information |
▪ | „lsb_release“ for reading out distribution information |
▪ | „aptitude“ for reading out software information (only for package manager dpkg) |
▪ | "unzip" |
▪ | "smbclient" |
In addition to running the Client Command described above, you also have the option to launch the scripts manually or automatically with a cron job to implement a regular inventory. The scripts can be found in the installation directory of the ACMP server in the "\Installers\AgentlessScan\InventoryScripts" folder.
Note |
If you automate the inventory with a cron jobs, note that "cron" must be installed on the clients. For more information about creating a cron jobs on Linux and MacOS X clients, see the following chapters. |
There are various parameters to choose from:
Parameter |
Alternative |
Description |
-? |
-h |
Issues a mini-guide |
-c |
check |
Check feasibility in this environment |
-d |
debug |
System calls, including results, are saved in the log file "/var/log/aagon-inventory-debug.log." |
-s |
silent |
Processed results not issued |
noBios |
Bios information not read |
|
noCpu |
CPU information not read |
|
noDrives |
Hard drives/drives not read |
|
noMachine |
Housing information not read |
|
noMemory |
Memory information not read |
|
noMonitors |
Monitor data not read (MacOS only) |
|
noNetwork |
Network cards not read |
|
noOs |
Operating system data not read |
|
noSoftware |
Installed software not read |
|
smbOutput |
Data are copied to a SMB share after completion of the scan process (=FILENAME,UNC-PATH,USER,PASSWORD,DOMAIN) |
For example, to output all executed system commands and their output, but not the XML file, the following command must run:
> sudo python inventory.py –s –d
or
> sudo python inventory.py silent debug
If you want to read all data, except RAM data and information on installed software, the following command is required:
> sudo python inventory.py noSoftware noMemory
If you would like to specify a certain memory location for the XML file, you require the following command.
In doing so, all data are read and saved in the file "192.168.0.64.xml" on the "//fileserver/inventory" share. For authentication on the server of the share, the "inventoryUser" with the password "secret" from the "aagon.local" domain is used:
> sudo python inventory.py smbOutput=192.168.0.64.xml,//fileserver/inventory,inventoryUser,geheim,aagon.local
To set up a cron job on MacOS, see here and for Linux here.
The following points must be observed when working with the XML Importer:
• | If two clients have to store their data in the same XML file, then the second client will overwrite the data of the first. |
• | The XML Importer deletes the XML files after importing |
• | Defective files or files that are not intended for the XML Importer are also deleted; therefore only files for the XML Importer may be deposited in the share |
• | It is not possible to store the XML files in a subdirectory of the share. |
• | Software inventory with the dpkg package manager may take some time to complete (15-20 min). The software inventory can be turned off by using the "noSoftware" parameter. |
• | Linux software is hidden by default in the license management, as is generally assumed that it is open source software. However, it can also be displayed again. |
The configuration of the XML Importer can be accessed via the configuration manager of the Agentless Scanner. It is possible to specify multiple network shares.
Agentless Scanner: XML Importer configuration
For each share you have to specify the UNC path to the XML file. In addition, further information on the domain, the user and the password is required for login. The login password may not contain an @-sign. In addition, the intervals at which the XML Importer searches the UNC paths can be defined in seconds.
Agentless Scanner: XML Importer share information
In order to better control the load resulting from a large number of inventoried clients on the server and the database, three additional setting options are available. The maximum number of XML files to be processed simultaneously can be limited with Max queue length. Furthermore, it is to possible to interrupt the process for a certain period of time after a certain number of processed XML files. For this purpose, the number of XML files can be set with Wait every n cycles, and the wait time can be set with Wait time. In this way it is possible to relieve the database.
New data fields in software\Linux software:
|
New data fields in software\Mac OS software:
|
Last change on 12.04.2017