---
sourceDocument: Xanadu IT Operations Management
sourceDocumentLink: https://www.servicenow.com/docs/r/xanadu/it-operations-management

 Release :

    - xanadu

ft:locale :

    - en-US

ft:publication_title :

    - Xanadu IT Operations Management

ft:clusterId :

    - itom

bundleId :

    - itom

workflow :

    - Technology


---

# Install MID-less Agent Client Collector manually in a Linux environment

# Install MID-less Agent Client Collector manually in a Linux environment {#ariaid-title1}

* Release version: Xanadu
* 
* Updated July 20, 2025
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 3 minutes to read

Install MID-less Agent Client Collector manually on a Linux machine to enable sending data from the agent to the instance through the cloud. Sending information through the cloud allows the MID Server to be used for more persistent resources.

## Before you begin

* Install the ITOM Cloud Services Core (sn_itom_cloud_svc) plugin.
* Configure an agent registration key. For details, see [Configure an agent registration key](https://www.servicenow.com/docs/QcRD0~RdSE8Ap9liTeiwvg "Configure an agent registration key so that you can deploy Agent Client Collector by using ITOM Cloud Services. With ITOM Cloud Services, you can deploy Agent Client Collector without a MID Server, which saves the MID Server for more persistent resources.").
* Role required: agent_client_collector_admin
{#acc-install-ics-linux-manual__ul_zdx_zpw_1gc}

## About this task

For details on sending data through the cloud in a MID-less deployment, see [DEX Architecture](https://www.servicenow.com/docs/access?context=dex-architecture&version=xanadu&pubname=xanadu-it-service-management&ft:locale=en-US).

## Procedure

1. Download the relevant installation package.
   1. Navigate to Agent Client CollectorDeploymentAgent Downloads.
   2. Download the relevant .rpm or .deb installation file.
   3. Download the relevant signature files to validate the installation files.
   {#acc-install-ics-linux-manual__substeps_ebr_xrw_1gc}
2. **Optional:** Verify the package signature.
   1. Extract the installation file (if it is compressed) by running the following command:  
      `unzip agent_client-collector-<version_number>-x86_64-rpm-rpm.zip`
   2. Validate the installation file signature by running the indicated commands.  
      * On an RPM-based system:  

            openssl dgst -sha256 -verify {<ServiceNow DGST pem key>} -signature {<signature file>} agent-client-collector-<version number>-x86_64.rpm

        Where `<ServiceNow DGST pem key>` is the .pem file extracted from the .zip file, and `<signature file>` is the
        .bin file extracted from the .zip file.  
        For example:

            $ curl -sLO https://install.service-now.com/glide/distribution/builds/package/app-signed/agent-client-collector-3.0.0-x86_64.rpm
            $ curl -sLO https://install.service-now.com/glide/distribution/builds/package/app-signed/agent-client-collector-3.0.0-x86_64-rpm-rpm.zip
            $ unzip agent-client-collector-3.0.0-x86_64-rpm-rpm.zip
            Archive: agent-client-collector-3.0.0-x86_64-rpm-rpm.zip
            inflating: ServiceNow_Digicert_DGST.pem
            extracting: agent-client-collector-3.0.0-x86_64.bin
            $ openssl dgst -sha256 -verify ServiceNow_Digicert_DGST.pem -signature agent-client-collector-3.0.0-x86_64.bin agent-client-collector-3.0.0-x86_64.rpm
            Verified OK

        Note:  
        Each command must appear on a single line.
      * On a Debian-based system:`gpg --import ServiceNow_Digicert_Public.gpg`

        `sudo gpg --verify agent-client-collector-<version
        number>-<distro>_amd64.deb`  
        For example:

            $ curl -sLO https://install.service-now.com/glide/distribution/builds/package/app-signed/agent-client-collector-3.0.0-debian-9_amd64.deb
            $ curl -sLO https://install.service-now.com/glide/distribution/builds/package/app-signed/agent-client-collector-3.0.0-debian-9_amd64-deb-deb.zip
            $ unzip agent-client-collector-3.0.0-debian-9_amd64-deb-deb.zip
            Archive: agent-client-collector-3.0.0-debian-9_amd64-deb-deb.zip
            extracting: ServiceNow_Digicert_Public.gpg
            $ gpg --import ServiceNow_Digicert_Public.gpg
            gpg: /home/admin/.gnupg/trustdb.gpg: trustdb created
            gpg: key 985DD52C6A0ABB45: public key "ServiceNow, Inc. (Signing) <seceng@servicenow.com>"
            imported
            gpg: Total number processed: 1
            gpg: imported: 1
            $ dpkg-sig --verify agent-client-collector-3.0.0-debian-9_amd64.deb
            Processing agent-client-collector-3.0.0-debian-9_amd64.deb...
            GOODSIG _gpgbuilder 9B928FB49771DF6C047430DD985DD52C6A0ABB45 1665054068

        Note:  
        Each command must appear on a single line.
      {#acc-install-ics-linux-manual__ul_jpv_tw4_pvb}
   {#acc-install-ics-linux-manual__substeps_pmf_l54_pvb}
3. Install the Agent Client Collector package using the package manager associated with Linux distribution.  
   {#acc-install-ics-linux-manual__table_dvq_lsw_1gc__entry__2}

   | OS | Command |
   |-|-|
   | RHEL-based | `yum / dnf localinstall` |
   | SLES | `zypper install` |
   | Debian-based | `apt-get install` |
   [ ]

   {#acc-install-ics-linux-manual__table_dvq_lsw_1gc}

   Alternatively, if these commands are not configured correctly, you can use the core commands that are configured to run with the package manager commands.
   * RPM-based system: `# rpm -vi agent-client-collector-<version number>-x86_64.rpm`
   * Debian-based system: `# dpkg -i agent-client-collector-<version number>-<distro>_amd64.deb`

   {#acc-install-ics-linux-manual__ul_cny_rsw_1gc}

   Verify that the package commands are configured correctly with your system administrator.  
   Note:  
   Some file systems may have restrictions enabled; for example, /var/ may be mounted with a noexec flag. Because the agent must execute Agent Client Collector plugins that are normally store in the /var/cache directory, you must deploy the application into specific folders by customizing the installation paths using the --relocate option as an .rpm parameter.

   For example: `rpm -i --relocate /var/cache=/opt/cache
   agent-client-collector-<version_number>-x86_64.rpm`  
   The following paths can be relocated:{#acc-install-ics-linux-manual__table_gvq_wsw_1gc__entry__2}

   | Path | Notes |
   |-|-|
   | /etc | When updating, you must also update the allow-list parameter in the acc.yml file with the new path. |
   | /usr/share | N/A |
   | /var/cache | Updating the /var directory retains all /var subdirectories, nested under the new directory. |
   | /var/log | Updating the /var directory retains all /var subdirectories, nested under the new directory. |
   | /var/run | Updating the /var directory retains all /var subdirectories, nested under the new directory. |
   | /var | Updating the /var directory retains all /var subdirectories, nested under the new directory. |
   [ ]

   {#acc-install-ics-linux-manual__table_gvq_wsw_1gc}Review the paths in /usr/lib/systemd/system/acc.service to ensure that they appear as expected.
4. When installing a .deb package, configure the agent's acc.yml configuration file.
   1. Copy the sample configuration file by running the following command.  
      `# cp -p /etc/servicenow/agent-client-collector/acc.yml.example /etc/servicenow/agent-client-collector/acc.yml`
   2. Rename the allow list file.  
      `# cp -p /etc/servicenow/agent-client-collector/check-allow-list.json.default /etc/servicenow/agent-client-collector/check-allow-list.json`

   {#acc-install-ics-linux-manual__substeps_ehc_nfp_pvb}  
   Note:  
   This step is not relevant for .rpm packages, which come with acc.yml and check-allow-list.json files included in the base system.
5. In the acc.yml configuration file:
   1. Set the following parameters:  
      {#acc-install-ics-linux-manual__table_j5q_mjx_1gc__entry__2}

      | Parameter | Value |
      |-|-|
      | backend-url | "\<gateway URL\>" |
      | connect-without-mid | true |
      | instance-url | "\<instance URL\>" |
      | registration-key | "\<regsitration-key\>" |
      | insecure-skip-tls-verify | false |
      [ ]

      {#acc-install-ics-linux-manual__table_j5q_mjx_1gc}
   2. Comment out the api-key parameter.
   {#acc-install-ics-linux-manual__substeps_wb3_ynw_1gc}
6. Save the configuration file.
7. Configure sudoers.  
   Configuration is typically automated by your Linux sysadmin. To configure manually if you want to ensure correctness before full configuration, run the following.

       # visudo -f /etc/sudoers.d/01_servicenow
       User_Alias ACC_USERS = servicenow
       Cmnd_Alias ACC_CMD = /usr/sbin/dmidecode -s baseboard-serial-number,/usr/sbin/dmidecode -s chassis-serial-number,/usr/sbin/dmidecode -s system-serial-number,/usr/sbin/dmidecode -s system-uuid,/usr/sbin/ss -tanp
       ACC_USERS ALL = (root) NOPASSWD:ACC_CMD
       Defaults:ACC_USERS !requiretty

8. Configure the agent to run as a service.
   1. Safeguard resource consumption by adding the indicated values to the /usr/lib/systemd/system/acc.service file.  
      * CPUShares=128
      * CPUQuota=10%
      * MemoryLimit=192M
      * BlockIOWeight=10
      * LimitNICE=15

      {#acc-install-ics-linux-manual__ul_eyh_msp_pvb}

      For example:

          # vi /usr/lib/systemd/system/acc.service
          [Unit]
          Description=Agent-Now acc
          After=network-online.target
          [Service]
          Environment=AGENT_ROOT=/usr/share
          Environment=AGENT_CACHE_ROOT=/var/cache
          Environment=AGENT_CONFIG_ROOT=/etc
          Environment=AGENT_LOG_ROOT=/var/log
          Environment=AGENT_RUN_ROOT=/var/run
          Environment=RUBYOPT=-Eutf-8
          User=servicenow
          Group=servicenow
          ExecStart=/usr/share/servicenow/agent-client-collector/bin/acc-service start acc
          KillMode=process
          Restart=on-failure
          RestartSec=1min
          CPUShares=128
          CPUQuota=10%
          MemoryLimit=192M
          BlockIOWeight=10
          LimitNICE=+15
          [Install]
          WantedBy=network-online.target

   2. Run the reload daemon command If you modified the service file after enabling the acc service.  
      `# systemctl daemon-reload`
   3. Enable and start the service by running the following commands.  
      `# systemctl enable acc`

      `# systemctl start acc`
   {#acc-install-ics-linux-manual__substeps_v55_ry1_rvb}

*[\>]: and then


