> For the complete documentation index, see [llms.txt](https://wiki.datadike.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.datadike.com/es/sonar/deploy-operate/install-agent-linux.md).

# Instalar el agente en Linux

Descargue el script de instalación para Linux en Agents › Install Agent, ejecútelo como root y confirme el servicio systemd sonaragent y el dispositivo en Sysadmin.

## Qué es y cuándo usarlo

En Linux, **Agents › Install Agent** produce un script de shell vinculado a un cliente y a un sitio. Ejecutado como root en el dispositivo, el script descarga el agente de SONAR, instala el agente de acceso remoto, registra el dispositivo y crea el servicio systemd `sonaragent`. El mismo script puede reutilizarse en cualquier número de dispositivos Linux de ese sitio mientras siga siendo válido, y además sirve de desinstalador.

## Antes de empezar

* Su rol tiene el permiso **Install Agents** en **Admin Center › Roles** y acceso al sitio de destino.
* El dispositivo ejecuta una distribución Linux con systemd como sistema de inicio: `ps --no-headers -o comm 1` debe mostrar `systemd`. Vea [Requisitos de los dispositivos](/es/sonar/deploy-operate/requirements.md).
* Puede ejecutar comandos como `root` en el dispositivo, por SSH o desde una consola de texto. El script se niega a ejecutarse desde una sesión gráfica.
* `bash` y `wget` están instalados.
* El dispositivo puede alcanzar la dirección de la API y la dirección de acceso remoto de SONAR en 443/tcp. Vea [Requisitos de red](/es/sonar/deploy-operate/network-requirements.md).

## Pasos

1. Abra **Agents › Install Agent**, o haga clic en **New Agent** en la lista de dispositivos de **Dashboard › Sysadmin**.
2. Elija el **Client** y el **Site**.
3. En **Operating system**, seleccione **Linux**.
4. En **Agent type**, seleccione **Workstation** o **Server**.
5. En **Architecture**, seleccione **64-bit**, **32-bit**, **ARM 64-bit** o **ARM 32-bit**, según el dispositivo (`uname -m`: `x86_64`, `i686`, `aarch64`, `armv7l`).
6. Si lo desea, active **Enable token expiration (hours)** e indique en **Hours** durante cuántas horas sigue siendo válido el script.
7. Haga clic en **Download Linux install script (.sh)**. El archivo se llama `sonar-<client>-<site>-<type>.sh`.
8. Copie el script al dispositivo, por ejemplo con `scp`.
9. En el dispositivo, ejecútelo como root:

   ```bash
   sudo bash ./sonar-<client>-<site>-<type>.sh
   ```

   Para ver una salida detallada mientras se registra el agente, añada `--debug`. Para instalar el agente de SONAR sin el agente de acceso remoto, añada `--nomesh`; en ese caso, el control remoto no está disponible en ese dispositivo.

Las opciones de **Optional features** se aplican a los dispositivos Windows. El script para Linux no las usa.

## Qué debe ver

El script muestra su progreso:

```
Downloading sonar agent...
Downloading and installing mesh agent...
Getting mesh node id...
```

seguido de la salida del propio registro del agente, que termina con *Installation was successful!*

Lo que instala el script:

| Elemento                 | Dónde                                                                                                                                                                                                                     |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Agente de SONAR          | `/usr/local/bin/sonaragent`                                                                                                                                                                                               |
| Servicio del agente      | `sonaragent.service`, archivo de unidad `/etc/systemd/system/sonaragent.service`, descripción *Sonar RMM Linux Agent*. Se ejecuta como `root`, está habilitado en el arranque y se reinicia automáticamente si se detiene |
| Configuración del agente | `/etc/sonaragent.json`                                                                                                                                                                                                    |
| Registro del agente      | `/var/log/sonaragent.log`                                                                                                                                                                                                 |
| Agente de acceso remoto  | `/opt/sonarmesh/`, servicio `meshagent.service`                                                                                                                                                                           |

Antes de instalar, el script elimina cualquier agente de SONAR y agente de acceso remoto anteriores que encuentre en el dispositivo, de modo que volver a ejecutarlo hace una reinstalación limpia. Antes de instalar el agente de acceso remoto, también genera la configuración regional `en_US.UTF-8` y la establece como configuración regional del sistema.

## Cómo verificar que funcionó

1. En el dispositivo:

   ```bash
   systemctl status sonaragent
   systemctl status meshagent
   ```

   Ambos deben indicar `active (running)`.
2. En la consola, abra **Dashboard › Sysadmin**, elija el cliente y busque el nombre de host. La fila muestra **Agent Status** **Online**, el **OS** informado por el dispositivo, el **Client**, el **Site** y el **Type** que eligió, y la fecha de hoy en **First Seen**.
3. Seleccione la fila. La cabecera del panel de detalles muestra la versión del agente, y ningún indicador **Remote Offline** una vez que el agente de acceso remoto se ha conectado.
4. En **Reports & Audits › Audits**, una entrada **Agent Install** registra el nuevo agente con su nombre de host.

## Errores comunes

| Síntoma                                                                                                | Causa                                                                                                                                                     | Solución                                                                                                                       |
| ------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| *ERROR: Must be run as root*                                                                           | El script no se ejecutó como root                                                                                                                         | Ejecútelo con `sudo` o como `root`                                                                                             |
| *This install script only supports systemd*                                                            | La distribución no usa systemd                                                                                                                            | El agente necesita systemd; vea [Requisitos de los dispositivos](/es/sonar/deploy-operate/requirements.md)                     |
| *ERROR: Display detected. Installer only supports running headless, i.e from ssh.*                     | El script se inició desde una sesión gráfica, o con reenvío X                                                                                             | Ejecútelo por SSH, cambie a una sesión de texto con `sudo systemctl isolate multi-user.target` o ejecute antes `unset DISPLAY` |
| *ERROR: Unknown parameter: …*                                                                          | Se pasó un argumento que el script no acepta. Con `uninstall` como único argumento el script desinstala; en los demás casos acepta `--debug` y `--nomesh` | Quite el argumento                                                                                                             |
| *ERROR: Unable to download sonar agent*                                                                | El dispositivo no puede descargar desde la dirección de la API                                                                                            | Compruebe el 443/tcp y la resolución de nombres de la dirección de la API                                                      |
| *Installer token has expired. Please generate a new one.*                                              | El script se generó con caducidad del token y el plazo ya pasó                                                                                            | Descargue un nuevo script                                                                                                      |
| *Old installer detected (version …). Latest version is … Please generate a new installer from the RMM* | El script se guardó antes de que cambiara la versión del agente de SONAR                                                                                  | Descargue un nuevo script                                                                                                      |
| El script se queda en *Getting mesh node id...*                                                        | El agente de acceso remoto no se inició o no puede alcanzar la dirección de acceso remoto                                                                 | Revise `systemctl status meshagent` y la conectividad con la dirección de acceso remoto en 443/tcp                             |
| `sonaragent` está en ejecución pero el dispositivo nunca aparece como **Online**                       | El agente no consigue mantener su conexión con la dirección de la API                                                                                     | Vea [Solucionar problemas de los agentes](/es/sonar/deploy-operate/troubleshooting.md)                                         |

## Referencia de campos

| Campo                               | Qué hace                                                                                                   | Valores aceptados                                      | Valor predeterminado               |
| ----------------------------------- | ---------------------------------------------------------------------------------------------------------- | ------------------------------------------------------ | ---------------------------------- |
| **Client**                          | Cliente en el que se registra el dispositivo                                                               | Clientes a los que su rol da acceso                    | Primer cliente de la lista         |
| **Site**                            | Sitio en el que se registra el dispositivo                                                                 | Sitios del cliente elegido                             | Primer sitio del cliente           |
| **Operating system**                | Plataforma del instalador                                                                                  | **Windows**, **Linux**, **macOS**                      | **Windows**                        |
| **Agent type**                      | Registra el dispositivo como estación de trabajo o como servidor, lo que se muestra en la columna **Type** | **Workstation**, **Server**                            | **Workstation**                    |
| **Architecture**                    | Arquitectura de procesador del agente que descarga el script                                               | **64-bit**, **32-bit**, **ARM 64-bit**, **ARM 32-bit** | **64-bit**                         |
| **Enable token expiration (hours)** | Si está activado, el script deja de funcionar tras el número de horas indicado                             | Activado, desactivado; **Hours** de 1 a 999999         | Desactivado; 24 horas al activarlo |

### Argumentos del script

| Argumento   | Qué hace                                                                                                                                         |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `--debug`   | Muestra una salida detallada mientras se registra el agente                                                                                      |
| `--nomesh`  | No instala el agente de acceso remoto                                                                                                            |
| `uninstall` | Retira el agente de SONAR y el agente de acceso remoto en lugar de instalarlos. Vea [Retirar agentes](/es/sonar/deploy-operate/remove-agents.md) |

## Páginas relacionadas

* [Requisitos de los dispositivos](/es/sonar/deploy-operate/requirements.md)
* [Requisitos de red](/es/sonar/deploy-operate/network-requirements.md)
* [Desplegar agentes a escala](/es/sonar/deploy-operate/mass-deployment.md)
* [Retirar agentes](/es/sonar/deploy-operate/remove-agents.md)
* [Solucionar problemas de los agentes](/es/sonar/deploy-operate/troubleshooting.md)
