UiPath Documentation
test-cloud
latest
false
Guide de l'administrateur de Test Cloud
Important :
La localisation du contenu nouvellement publié peut prendre 1 à 2 semaines avant d’être disponible.

Déploiement du client de relais sur Linux

Déploiement du client Relay en tant que service systemd sur Linux pour établir un tunnel sortant entre votre réseau et Test Cloud.

Cette page couvre les détails de la configuration de production spécifiques à Linux. Pour les prérequis multiplate-formes et les exigences réseau, consultez Déploiement du client de relais.

Configuration système requise pour le système d’exploitation

Le client de relais nécessite systemd 229 ou une version ultérieure. À vérifier: systemctl --version.

DistributionVersion minimale
Ubuntu20.04 assistance longue durée
Déban10
Red Hat Enterprise Linux8
Amazon Linux2023
Serveur d'entreprise SUtiliser Linux15
Oracle Linux8

Toute distribution Linux avec systemd 229+ est censée fonctionner. Pour les environnements sans système, le client de relais peut s'exécuter en mode de premier plan (--detach=false), mais vous êtes responsable de la gestion des processus, du démarrage automatique et de la récupération.

Privilèges requis: l'accès sudo (root) est nécessaire pour installer les services système (/etc/systemd/system/), créer des répertoires de données et de journaux par défaut, et copier le binaire dans /usr/local/bin/. Pour les installations sans racine, voir Mode utilisateur.

Prérequis

Système

  • Distribution Linux prise en charge avec systemd 229+
  • Accès à sudo (root), ou plan d’utilisation de --user-mode
  • 200 Mo d’espace disque libre minimum
  • Si vous utilisez une connexion basée sur TCP qui nécessite l'exécuteur sur site:

Réseau

  • Pour le client de relais 26.4.2 ou version ultérieure, le HTTPS sortant vers cloud.uipath.com est autorisé, y compris les mises à niveau WebSocket
  • Pour les versions de client de relais antérieures à 26.4.2, le TLS sortant (port 443) vers <region>-relay.uipath.com est autorisé et l’interception TLS est configurée
  • L'hôte de relais peut résoudre et se connecter à chaque point de terminaison HTTP ou HTTPS enregistré, ainsi qu'à l'hôte et au port de chaque point de terminaison basé sur TCP pris en charge

Sécurité

  • Exclusions SELinux / AppArgor / fapolicyd configurées (le cas échéant) (voir Infrastructures de sécurité)
  • Si vous utilisez l'exécuteur local: un répertoire de dépendances appartenant à l'administrateur et une installation Java qu'aucun compte non privilégié ne peut écrire. L'exécuteur charge le code des deux, avec les privilèges du compte de service de relais

Configuration

Valider les prérequis

Exécutez les commandes suivantes :

# Check systemd version (must be 229+)
systemctl --version

# Verify sudo access
sudo -v

# Check available disk space
df -h /var/lib

# On-prem executor only: Java 21+ on PATH, or pass --onprem-executor-java-home
java -version
# Check systemd version (must be 229+)
systemctl --version

# Verify sudo access
sudo -v

# Check available disk space
df -h /var/lib

# On-prem executor only: Java 21+ on PATH, or pass --onprem-executor-java-home
java -version

Installer

1. Télécharger et extraire

Téléchargez l'archive du client Relay pour votre architecture (x86_64 ou ARM64) à partir du Customer Portal UiPath.

unzip relay_linux_amd64.zip && chmod +x relay
unzip relay_linux_amd64.zip && chmod +x relay

À partir du client de relais 26.4.3, l’archive contient également onprem-executor.jar. Laissez-le à côté du binaire relay dans le répertoire extrait et exécutez les commandes d'installation ou de mise à niveau à partir de ce répertoire.

2. Démarrer

Vous pouvez fournir la chaîne de configuration client (générée dans l’administration UiPath, comme décrit dans Configuration d’un groupe de relais) de deux manières:

Option A: en ligne. Transmettez la chaîne de configuration directement. Aucun fichier à créer ou à nettoyer:

sudo ./relay start --config "<your-config>" --accept-license-agreement
sudo ./relay start --config "<your-config>" --accept-license-agreement

Option B: fichier. Enregistrez la configuration dans un fichier, puis référencez-la. Il s’agit de l’option recommandée, car elle permet de maintenir la clé secrète en dehors de l’historique du shell:

sudo ./relay start --config-file /path/to/config.txt --accept-license-agreement
sudo ./relay start --config-file /path/to/config.txt --accept-license-agreement

Pour une connexion basée sur TCP prise en charge qui nécessite l’exécuteur sur site, stockez d’abord les bibliothèques de connecteurs, comme décrit dans Ajouter des dépendances de connecteur, puis démarrez le client avec une seule commande.

Ajouter des dépendances de connecteurs

Certains connecteurs nécessitent des bibliothèques tierces qui ne sont pas incluses avec le client de relais. Obtenez-les auprès du fournisseur du connecteur et placez-les tous dans un répertoire dédié sur l’hôte de relais. Le client de relais stocke le chemin du répertoire mais ne copie pas les bibliothèques.

Important :

L'exécuteur local charge et exécute ces bibliothèques avec les autorisations du compte de service de relais. Conservez le répertoire, ses parents et chaque fichier qu’il contient sous le contrôle de root, avec un accès en lecture pour le compte de service. Toute personne pouvant modifier son contenu peut exécuter du code avec ces autorisations.

Pour les installations sans accès root, voir Exécuteur sur site en mode utilisateur.

Pour SAP BAPI, obtenez les bibliothèques SAP JCo 3 auprès de SAP et placez ces fichiers dans le répertoire des dépendances:

Fichier requisObjectif
sapjco3.jarBibliothèque Java SAP JCo
sapidoc3.jarBibliothèque Java SAP IDoc
libsapjco3.soBibliothèque native SAP JCo Linux correspondant à l’architecture d’exécution Java

Pour un autre connecteur pris en charge, placez les bibliothèques de fournisseurs répertoriées dans la documentation de ce connecteur dans le même répertoire.

Commencer avec l’exécuteur sur site

Créez le répertoire des dépendances, copiez les bibliothèques et démarrez le client de relais avec l’exécuteur activé. Pointez --onprem-executor-java-home sur un runtime Java 21 ou plus récent, en utilisant un chemin absolu, pour que l'exécuteur utilise le runtime que vous avez prévu:

sudo ./relay start --config-file /path/to/config.txt \
  --accept-license-agreement \
  --enable-onprem-executor \
  --onprem-executor-java-home /usr/lib/jvm/java-21-openjdk \
  --onprem-executor-dep-dir /opt/uipath/relay/executor-deps
sudo ./relay start --config-file /path/to/config.txt \
  --accept-license-agreement \
  --enable-onprem-executor \
  --onprem-executor-java-home /usr/lib/jvm/java-21-openjdk \
  --onprem-executor-dep-dir /opt/uipath/relay/executor-deps
Remarque :

Les indicateurs --config et --config-file sont mutuellement exclusifs. Pour exécuter au premier plan plutôt qu'en tant que service d'arrière-plan (utile pour le débogage), saisissez --detach=false.

Le client de relais valide la connectivité, s'authentifie avec OAuth, s'enregistre avec Test Cloud, télécharge la configuration du proxy, chiffre les identifiants et installe un service systemd, le tout dans une seule commande.

Sortie attendue :

Running prerequisite checks...
  ✓ Directory permissions: OK
  ✓ Cloud portal connectivity: OK
✓ All prerequisite checks passed
Waiting for service to start...
  ✓ Service is running

✓ Relay is now running in the background.
Check status: systemctl status relay-<id>
Running prerequisite checks...
  ✓ Directory permissions: OK
  ✓ Cloud portal connectivity: OK
✓ All prerequisite checks passed
Waiting for service to start...
  ✓ Service is running

✓ Relay is now running in the background.
Check status: systemctl status relay-<id>
Remarque :

Lors du démarrage, le client de relais copie automatiquement le binaire dans /usr/local/bin/relay. Tous les groupes de Relay sur la machine partagent ce fichier binaire unique. Remplacez le répertoire d'installation par --bin-dir.

3. Vérifier

relay list
relay list

Un client sain affiche ● running dans la colonne STATUT. La valeur ID affichée est utilisée dans toutes les commandes suivantes (relay stop <id>, relay logs <id>, etc.). Il est également disponible dans l’administration d’UiPath sous la page des détails du groupe de Relay.

Confirmez que le tunnel est établi en vérifiant les journaux pour login to server success:

sudo relay logs <id> -f
sudo relay logs <id> -f

Si l’exécuteur local est activé, confirmez sa configuration:

sudo relay describe <id>
sudo relay describe <id>

La section Exécuteur local rapporte Enabled: true avec le port d'écoute, la version du runtime, le chemin d'accès au runtime, l'accueil Java et le répertoire des dépendances qu'il utilise. Vérifiez que les répertoires d'accueil et de dépendances Java sont ceux que vous avez prévu.

Vérifiez ensuite que l’exécuteur a démarré. Son journal contient une entrée Started OnPremRuntimeApplication une fois qu'il est prêt:

sudo grep "Started OnPremRuntimeApplication" /var/log/uipath-relay/logs/<id>/onprem-executor.log
sudo tail -n 20 /var/log/uipath-relay/logs/<id>/onprem-executor.log
sudo grep "Started OnPremRuntimeApplication" /var/log/uipath-relay/logs/<id>/onprem-executor.log
sudo tail -n 20 /var/log/uipath-relay/logs/<id>/onprem-executor.log

Si vous avez configuré un répertoire de journaux personnalisé, utilisez plutôt son chemin d’accès onprem-executor.log. Exécutez ensuite un appel de test depuis le connecteur qui utilise ce point de terminaison pour confirmer que le chemin complet fonctionne.

Gérer (Manage)

List

Affiche tous les groupes de Relay installés sur cette machine avec le statut, la version et le nom de groupe lorsqu'il est disponible. Ne nécessite pas sudo.

relay list
relay list --json
relay list
relay list --json

Décrire

Remarque :

Disponible avec le client de relais 26.4.2 et versions ultérieures. Exécutez relay version pour vérifier votre version installée.

Affiche des informations détaillées sur un groupe de Relay, y compris les paramètres de service, les chemins configurés, le statut, la version et le nom du groupe lorsqu'il est disponible. Ne nécessite pas sudo. Pour un service système où l’exécuteur local est activé, exécutez-le avec sudo afin d’inclure la version de l’exécuteur, qui est lue à partir de l’élément onprem-executor.jar appartenant à la racine.

relay describe <id>
relay describe <id> --json
relay describe <id>
relay describe <id> --json

Arrêter

Arrête le service de relais. La configuration et les journaux sont conservés. Le relais peut être redémarré ultérieurement.

sudo relay stop <id>
sudo relay stop <id>

Redémarrer et mettre à niveau

Redémarre le service de Relay et récupère la dernière configuration du proxy à partir de Test Cloud.

sudo relay restart <id>
sudo relay restart <id>

Mettre à niveau: extrayez la nouvelle archive du client de relais. Conservez le nouveau binaire relay et le fichier onprem-executor.jar correspondant, puis exécutez sudo ./relay restart <id> à partir du répertoire extrait. La commande de redémarrage met à jour le fichier binaire installé et, lorsque l'exécuteur est activé, son JAR.

Pour activer l'exécuteur sur un service déjà installé, exécutez sudo ./relay restart <id> --enable-onprem-executor à partir du répertoire d'archives extraites, afin que l'élément onprem-executor.jar correspondant soit disponible.

ScénarioCommande
Ajout ou suppression de points de terminaison dans Test Cloudsudo relay restart <id>
Rotation de la clé secrète du client (en ligne)sudo relay restart --config "<new-config>"
Rotation de la clé secrète du client (fichier)sudo relay restart --config-file /path/to/new-config.txt
Modification du niveau de journalisationsudo relay restart <id> --log-level debug
Consigner le répertoire ou la modification de la rétentionsudo relay restart <id> --logs-dir /opt/mycompany --log-retention-days 30
Activer l’exécuteur localsudo ./relay restart <id> --enable-onprem-executor
Désactiver l’exécuteur localsudo relay restart <id> --disable-onprem-executor
Mise à niveau du client de relaisExtraire la nouvelle archive, puis exécuter sudo ./relay restart <id>
Remarque :

Lorsque --config ou --config-file est fourni, l'argument <id> est facultatif. Il est extrait de la configuration.

Supprimer (Delete)

Arrête le service, se désinscrit de Test Cloud et supprime tous les fichiers de configuration et de journalisation locaux.

sudo relay delete <id>
sudo relay delete <id>

Pour forcer le nettoyage local sans désenregistrement du cloud, par exemple si les informations d’identification sont perdues ou si le groupe de Relay côté cloud a déjà été supprimé:

sudo relay delete <id> --force
sudo relay delete <id> --force

Version

relay version
relay version
Remarque :

Il n'y a pas de mise à niveau automatique. Extrayez la nouvelle archive et exécutez sudo ./relay restart <id> depuis son répertoire pour chaque groupe.

Structure du répertoire

Tous les répertoires sont créés automatiquement lors de la première exécution.

/usr/local/bin/
  relay                                      # Shared binary (755)

/var/lib/uipath-relay/                       # Data root (755)
  groups/<id>/
    client_config                            # OAuth credentials (encrypted, 600)
    metadata.json                            # State, PID, install timestamps (644)
    .credentials.key                         # AES-256-GCM encryption key (600)
    onprem-executor.jar                      # Executor runtime when enabled (600)

/var/log/uipath-relay/                       # Logs root (755)
  logs/<id>/
    relay.log                                # Current log (644)
    relay.YYYYMMDD-HHMMSS.log                # Rotated logs (644)
    onprem-executor.log                      # Executor log when enabled

/etc/systemd/system/
  relay-<id>.service                         # Systemd unit file
/usr/local/bin/
  relay                                      # Shared binary (755)

/var/lib/uipath-relay/                       # Data root (755)
  groups/<id>/
    client_config                            # OAuth credentials (encrypted, 600)
    metadata.json                            # State, PID, install timestamps (644)
    .credentials.key                         # AES-256-GCM encryption key (600)
    onprem-executor.jar                      # Executor runtime when enabled (600)

/var/log/uipath-relay/                       # Logs root (755)
  logs/<id>/
    relay.log                                # Current log (644)
    relay.YYYYMMDD-HHMMSS.log                # Rotated logs (644)
    onprem-executor.log                      # Executor log when enabled

/etc/systemd/system/
  relay-<id>.service                         # Systemd unit file

Autorisations de fichier

Chemin d'accèsModeRaison
Répertoires755Accès en lecture/écriture au relais
client_config600Contient des informations d’identification OAuth chiffrées
.credentials.key600Clé de chiffrement AES-256-GCM
metadata.json644Métadonnées de service (état, PID, horodatage d'installation)
onprem-executor.jar600Runtime de l'exécuteur copié dans le stockage de service protégé
relay.log644Libellé à des fins de résolution des problèmes
Binaire755Exécutable par systemd
Répertoire des dépendances (exécuteur uniquement)755appartenant à rootVous le créez; l'exécuteur charge les JAR et les bibliothèques natives qu'il contient sous forme de code
Fichiers dans le répertoire des dépendances644appartenant à rootL'accès en écriture à l'un d'eux est l'exécution de code en tant que compte de service

Le client Relay crée et gère chaque chemin d'accès dans cette table, à l'exception du répertoire des dépendances. Celui-ci vous appartient de créer et de gérer: conservez-le, ainsi que tout ce qu’il contient, appartenant à root et inscriptible uniquement par root.

Chemins d’accès personnalisés

Remplacez les répertoires par défaut lors de l’installation du client de relais.

sudo ./relay start --config-file /path/to/config.txt \
  --accept-license-agreement \
  --bin-dir /opt/mycompany/bin \
  --data-dir /opt/mycompany \
  --logs-dir /opt/mycompany
sudo ./relay start --config-file /path/to/config.txt \
  --accept-license-agreement \
  --bin-dir /opt/mycompany/bin \
  --data-dir /opt/mycompany \
  --logs-dir /opt/mycompany
DrapeauDefaultDescription
--bin-dir/usr/local/binRépertoire pour le fichier binaire partagé
--data-dir/var/libRacine pour les données de configuration
--logs-dir/var/logRacine pour les fichiers journaux; peut être modifié avec restart

Le client de relais ajoute uipath-relay/ sous les données personnalisées et les racines du journal:

--bin-dir  /opt/mycompany/bin  =>  /opt/mycompany/bin/relay
--data-dir /opt/mycompany      =>  /opt/mycompany/uipath-relay/groups/<id>/
--logs-dir /opt/mycompany      =>  /opt/mycompany/uipath-relay/logs/<id>/
--bin-dir  /opt/mycompany/bin  =>  /opt/mycompany/bin/relay
--data-dir /opt/mycompany      =>  /opt/mycompany/uipath-relay/groups/<id>/
--logs-dir /opt/mycompany      =>  /opt/mycompany/uipath-relay/logs/<id>/
Remarque :

--bin-dir et --data-dir ne sont acceptés que par la commande start . --logs-dir est accepté par start et restart. Les autres commandes (stop, delete, list) dérivent automatiquement des chemins à partir de la configuration du service installé.

Configuration du proxy

Si votre réseau achemine le trafic sortant via un proxy, exportez les variables d’environnement du proxy avant d’exécuter relay start. Utilisez sudo -E pour préserver l'environnement lors de l'élévation:

export HTTPS_PROXY="http://proxy.corp.example.com:8080"
export NO_PROXY="localhost,127.0.0.1,.corp.example.com"
sudo -E ./relay start --config "<your-config>" --accept-license-agreement
export HTTPS_PROXY="http://proxy.corp.example.com:8080"
export NO_PROXY="localhost,127.0.0.1,.corp.example.com"
sudo -E ./relay start --config "<your-config>" --accept-license-agreement

Sans -E, sudo réinitialise l'environnement et les paramètres du proxy sont perdus.

Le client de relais écrit les variables de proxy capturées sous forme de directives Environment= dans le fichier d'unité système, de sorte que le service d'arrière-plan les utilise, et non le système /etc/environment à l'échelle du système.

Pour mettre à jour le proxy après l'installation: exportez les nouvelles valeurs et exécutez sudo -E relay restart <id>.

Pour supprimer le proxy: unset HTTPS_PROXY HTTP_PROXY NO_PROXY, puis sudo relay restart <id>.

Pour vérifier ce que le service utilise: systemctl cat relay-<id> | grep -i environment.

Pour les schémas de proxy et l’authentification pris en charge, consultez la section du proxy dans le déploiement du client de relais.

Infrastructures de sécurité

Si votre environnement utilise SELinux, AppArgor ou fapolicy, assurez-vous que le fichier binaire du client de relais et ses répertoires de données sont autorisés.

Si vous activez l'exécuteur local, le service de relais exécute également l'exécutable Java et charge les bibliothèques natives à partir du répertoire des dépendances. Autorisez les deux, ou l’exécuteur ne démarre pas ou ne peut pas charger ses bibliothèques de connecteurs.

SéLinux

# Check enforcement mode
getenforce

# Relabel the binary if a custom policy blocks it
sudo semanage fcontext -a -t bin_t '/usr/local/bin/relay'
sudo restorecon -v /usr/local/bin/relay
# Check enforcement mode
getenforce

# Relabel the binary if a custom policy blocks it
sudo semanage fcontext -a -t bin_t '/usr/local/bin/relay'
sudo restorecon -v /usr/local/bin/relay

Lorsque l'exécuteur local est activé, le service de relais exécute également l'exécutable Java et charge les bibliothèques natives à partir du répertoire des dépendances. Étiquetez uniquement les chemins qui génèrent des refus. Vérifiez d’abord les refus.

sudo ausearch -m AVC -ts recent | grep -i -e relay -e java
sudo ausearch -m AVC -ts recent | grep -i -e relay -e java

Si les refus indiquent que le processus Java a refusé la lecture ou l'accès au mappage au répertoire des dépendances, labellisez les bibliothèques natives en tant que bibliothèques partagées.

sudo semanage fcontext -a -t lib_t '/opt/uipath/relay/executor-deps(/.*\.so(\..*)?)?'
sudo restorecon -Rv /opt/uipath/relay/executor-deps
sudo semanage fcontext -a -t lib_t '/opt/uipath/relay/executor-deps(/.*\.so(\..*)?)?'
sudo restorecon -Rv /opt/uipath/relay/executor-deps

Pour tous les refus restants, créez un module de politique plutôt que de désactiver l’application.

sudo ausearch -m AVC -ts recent | audit2allow -M uipath-relay-executor
sudo semodule -i uipath-relay-executor.pp
sudo ausearch -m AVC -ts recent | audit2allow -M uipath-relay-executor
sudo semodule -i uipath-relay-executor.pp

Protection de l'application

Assurez-vous qu'aucun profil ne restreint /usr/local/bin/relay de l'accès au réseau ou des écritures de fichiers à /var/lib/uipath-relay/ et /var/log/uipath-relay/. Si vous utilisez des chemins personnalisés, remplacez-les en conséquence.

Si votre organisation configure les services locaux avec ses propres profils AppArgor et que l'exécuteur local est activé, le profil couvrant le fichier binaire du relais doit également lui permettre d'exécuter le runtime Java et permettre au processus Java de lire et de mapper les bibliothèques du connecteur dans le répertoire des dépendances. Vérifiez les refus avec sudo journalctl -k | grep -i apparmor.

Fapolicyd

sudo fapolicyd-cli --file add /usr/local/bin/relay
sudo fapolicyd-cli --update
sudo fapolicyd-cli --file add /usr/local/bin/relay
sudo fapolicyd-cli --update

Lorsque l'exécuteur local est activé, fapolicyd doit également faire confiance à l'exécutable Java, au runtime de l'exécuteur JAR et à chaque bibliothèque de connecteurs. Un runtime Java installé à partir d'une archive plutôt que d'un package de distribution ne se trouve pas dans la base de données des packages et n'est pas approuvé par défaut; un package de runtime tel que java-21-openjdk ne nécessite aucune entrée.

Approuver chaque fichier individuellement.

sudo fapolicyd-cli --file add <java-home>/bin/java
sudo fapolicyd-cli --file add /var/lib/uipath-relay/groups/<id>/onprem-executor.jar
sudo fapolicyd-cli --file add /opt/uipath/relay/executor-deps/sapjco3.jar
sudo fapolicyd-cli --file add /opt/uipath/relay/executor-deps/sapidoc3.jar
sudo fapolicyd-cli --file add /opt/uipath/relay/executor-deps/libsapjco3.so
sudo fapolicyd-cli --update
sudo fapolicyd-cli --file add <java-home>/bin/java
sudo fapolicyd-cli --file add /var/lib/uipath-relay/groups/<id>/onprem-executor.jar
sudo fapolicyd-cli --file add /opt/uipath/relay/executor-deps/sapjco3.jar
sudo fapolicyd-cli --file add /opt/uipath/relay/executor-deps/sapidoc3.jar
sudo fapolicyd-cli --file add /opt/uipath/relay/executor-deps/libsapjco3.so
sudo fapolicyd-cli --update

Réexécutez fapolicyd-cli --file update <path> et fapolicyd-cli --update après une mise à niveau remplaçant un fichier approuvé: une mise à niveau du client de relais qui remplace onprem-executor.jar, une mise à niveau Java ou une nouvelle version de bibliothèque de connecteurs. Les entrées de confiance enregistrent la taille et le hachage de chaque fichier, de sorte qu'elles cessent de correspondre une fois qu'un fichier est modifié. Si l'exécuteur ne démarre pas sur un hôte exécutant fapolicyd, vérifiez sudo journalctl -u fapolicyd -n 50.

Chemins à autoriser

Saisie de texteChemin par défaut
Binaire/usr/local/bin/relay
Données/var/lib/uipath-relay/
Journaux (Logs)/var/log/uipath-relay/
Exécutable Java (exécuteur local uniquement)Le chemin d’accès java résolu à partir de PATH, ou <java-home>/bin/java
Bibliothèques de connecteurs (exécuteur local uniquement)Le répertoire transmis à --onprem-executor-dep-dir

Si vous avez utilisé --bin-dir, --data-dir ou --logs-dir, autorisez plutôt ces chemins personnalisés.

Mode utilisateur

Le mode utilisateur (--user-mode) installe le client de relais en tant que service utilisateur système au lieu d'un service système, ce qui lui permet de s'exécuter sans sudo. Il est adapté aux machines partagées et aux environnements restreints où l’accès root n’est pas disponible.

Prérequis

PrérequisDétails (Details)
système 229+Vérifier : systemctl --version
Répertoire d’accueilDoit exister et appartenir à l’utilisateur cible
session utilisateur systèmeVérification: systemctl --user is-system-running renvoie running ou degraded
Connexion SSHRequis. su / sudo su ne fournissent pas la session D-Bus dont les services utilisateur ont besoin
loginctl lingerRequis pour que le service persiste après la déconnexion et démarre au démarrage

Activer le linger (Unique, nécessite l'administrateur):

sudo loginctl enable-linger <username>
sudo loginctl enable-linger <username>

Sans délai, les services utilisateur s'arrêtent lorsque vous vous déconnectez et ne démarrent pas au démarrage.

Démarrer en mode utilisateur

./relay start --user-mode --config-file /path/to/config.txt --accept-license-agreement
./relay start --user-mode --config-file /path/to/config.txt --accept-license-agreement

Exécuteur local en mode utilisateur

En mode utilisateur, l'exécuteur s'exécute en tant que votre compte utilisateur au lieu de root, et les mêmes indicateurs d'exécuteur s'appliquent:

./relay start --user-mode --config-file /path/to/config.txt \
  --accept-license-agreement \
  --enable-onprem-executor \
  --onprem-executor-java-home <java-home> \
  --onprem-executor-dep-dir <dep-dir>
./relay start --user-mode --config-file /path/to/config.txt \
  --accept-license-agreement \
  --enable-onprem-executor \
  --onprem-executor-java-home <java-home> \
  --onprem-executor-dep-dir <dep-dir>

Le répertoire des dépendances ne doit pas être accessible en écriture de groupe ou de monde. Si un administrateur est disponible, demandez-lui de créer la propriété de root avec un accès en lecture pour votre compte, afin qu’aucun compte non privilégié ne puisse modifier ce que charge l’exécuteur. Sinon, créez-le vous-même avec chmod 0755 dans le répertoire et 0644 dans les fichiers.

Disposition du répertoire en mode utilisateur

~/.local/bin/
  relay                                      # Shared binary (755)

~/.local/share/uipath-relay/
  groups/<id>/
    client_config                            # OAuth credentials (encrypted, 600)
    metadata.json                            # Service metadata (644)
    .credentials.key                         # Encryption key (600)
    onprem-executor.jar                      # Executor runtime when enabled (600)
  logs/<id>/
    relay.log
    relay.YYYYMMDD-HHMMSS.log
    onprem-executor.log                      # Executor log when enabled

~/.config/systemd/user/
  relay-<id>.service                         # Systemd user unit file
~/.local/bin/
  relay                                      # Shared binary (755)

~/.local/share/uipath-relay/
  groups/<id>/
    client_config                            # OAuth credentials (encrypted, 600)
    metadata.json                            # Service metadata (644)
    .credentials.key                         # Encryption key (600)
    onprem-executor.jar                      # Executor runtime when enabled (600)
  logs/<id>/
    relay.log
    relay.YYYYMMDD-HHMMSS.log
    onprem-executor.log                      # Executor log when enabled

~/.config/systemd/user/
  relay-<id>.service                         # Systemd user unit file

Le chemin d'accès ~/.config/systemd/user/ ne peut pas être remplacé. Les chemins d'accès aux fichiers binaires, aux données et aux journaux peuvent être personnalisés avec --bin-dir, --data-dir et --logs-dir.

Commandes de gestion en mode utilisateur

Toutes les commandes fonctionnent sans sudo:

relay list
relay stop <id>
relay restart <id>
relay delete <id>
relay logs <id> -f
relay list
relay stop <id>
relay restart <id>
relay delete <id>
relay logs <id> -f

Quand utiliser le mode utilisateur

ScénarioRecommandé (Recommended)
Serveur de production avec accès rootMode système (par défaut)
Machine partagée, aucun accès rootMode utilisateur
Développement ou testMode utilisateur
Environnements sensibles à la sécuritéMode système (chemin binaire inscriptible)

Désinstaller

  1. Supprimez tous les clients de relais (utilisez relay list pour voir les groupes installés):

    sudo relay delete <id>
    sudo relay delete <id>
    
  2. Supprimez le fichier binaire partagé:

    sudo rm /usr/local/bin/relay
    sudo rm /usr/local/bin/relay
    
  3. Supprimez les données et les répertoires de journaux restants:

    sudo rm -rf /var/lib/uipath-relay /var/log/uipath-relay
    sudo rm -rf /var/lib/uipath-relay /var/log/uipath-relay
    

Pour le mode utilisateur, remplacez les commandes par les équivalents en mode utilisateur (pas sudo) et supprimez ~/.local/bin/relay et ~/.local/share/uipath-relay.

Résolution des problèmes

SymptômeOrigineRésolution
Le service ne démarre pasAutorisations insuffisantesExécuter avec sudo
permission deniedImpossible de créer des répertoiresVérifiez l’accès sudo ou utilisez des chemins personnalisés vers un emplacement inscriptible
systemctl: command not foundnon installéUtiliser le mode premier plan (--detach=false) ou installer systemd
Le service démarre puis s’arrête immédiatementErreur de configuration ou de réseauConsultez relay.log pour obtenir les erreurs de démarrage
Service en cours d’exécution, mais tunnel non établiProblème de réseau ou d'authentificationConsultez relay.log pour obtenir les erreurs login to server ; vérifiez la connectivité à cloud.uipath.com; pour les versions de client de relais antérieures à 26.4.2, vérifiez la transmission TLS au nom d’hôte du relais régional
Blocage de l'exécution par SELinux ou AppArgorPolitique d’infrastructure de sécuritéVoir Infrastructures de sécurité
XDG_RUNTIME_DIR not found (mode utilisateur)Non connecté via SSHConnectez-vous via SSH ou activez le persistant
D-Bus session bus unreachable (mode utilisateur)Non connecté via SSHConnectez-vous via SSH ou activez le persistant
Proxy non utilisé par le serviceVariable non capturée au débutRéexécuter avec sudo -E ou vérifier avec systemctl cat relay-<id> | grep -i environment
Processeur ou mémoire élevéNiveau de journal défini sur trace ou debugDéfinir le niveau de journalisation sur info ou plus

Commandes de diagnostic

# Real-time logs
sudo relay logs <id> -f

# Systemd journal
journalctl -u relay-<id> -f

# Service status
systemctl status relay-<id>

# Connectivity test
nc -zv cloud.uipath.com 443

# Required only for Relay client versions earlier than 26.4.2
nc -zv <region>-relay.uipath.com 443

# Check if binary is blocked by SELinux
sudo ausearch -m AVC -ts recent

# Check AppArmor status
sudo aa-status
# Real-time logs
sudo relay logs <id> -f

# Systemd journal
journalctl -u relay-<id> -f

# Service status
systemctl status relay-<id>

# Connectivity test
nc -zv cloud.uipath.com 443

# Required only for Relay client versions earlier than 26.4.2
nc -zv <region>-relay.uipath.com 443

# Check if binary is blocked by SELinux
sudo ausearch -m AVC -ts recent

# Check AppArmor status
sudo aa-status

Pour les erreurs d'authentification et de connectivité partagées entre les plates-formes, voir Résolution des problèmes.

Référence rapide

ActionCommande
Démarrer (Start)sudo relay start --config-file config.txt --accept-license-agreement
Arrêtersudo relay stop <id>
Redémarrer/Mettre à niveausudo relay restart <id>
Supprimer (Delete)sudo relay delete <id>
Supprimer (forcer)sudo relay delete <id> --force
Listrelay list
Décrirerelay describe <id>
Journaux (Logs)relay logs <id> -f
État du servicesystemctl status relay-<id>
Journal systèmejournalctl -u relay-<id> -f

Cette page vous a-t-elle été utile ?

Connecter

Besoin d'aide ? Assistance

Vous souhaitez apprendre ? UiPath Academy

Vous avez des questions ? UiPath Forum

Rester à jour