Jami sur des serveurs

Note

Ajoutez un compte Jami existant avec des conversations de groupe sur des serveurs qui sont toujours en ligne pour faciliter l’échange de messages. Configurez plusieurs serveurs pour assurer la redondance et la tolérance aux pannes.

Créer un compte utilisateur sur le serveur

Il est recommandé d’ajouter un compte d’utilisateur au serveur pour exécuter Jami sans les permissions de root. Dans cet exemple, le compte utilisateur jamiserver a été ajouté avec la commande :

useradd -s /bin/bash -m jamiserver

Installer le daemon Jami sur le serveur

Seule l’installation du daemon Jami est nécessaire sur le serveur. Il n’est pas nécessaire d’installer le client Jami complet, surtout si le serveur n’a pas d’interface utilisateur graphique. Dans la dernière ligne de commande des instructions d’installation de la distribution GNU/Linux du serveur dans [les instructions d’installation] (/setup/index.md#jami-application), remplacez le texte :

install jami

avec le texte :

install jami-daemon dbus-x11

Copier les fichiers de configuration de Jami

Une copie des fichiers de configuration de Jami est nécessaire sur le serveur. Si le compte Jami est déjà configuré sur un ordinateur (dans cet exemple, un ordinateur fonctionnant sous GNU/Linux), copiez les répertoires .local/share/jami et .config/jami sur le serveur.

Les commandes ci-dessous doivent être exécutées à partir du répertoire personnel de l’utilisateur. Le serveur doit être accessible via SSH depuis l’ordinateur sur lequel Jami est déjà installé, et l’utilisateur jamiserver sur le serveur doit avoir un mot de passe (ou la clé SSH publique de l’utilisateur sur l’ordinateur déjà configuré).

cd
rsync -av .local/share/jami jamiserver@SERVER_NAME_OR_IP_ADDR:~/.local/share/
rsync -av .config/jami jamiserver@SERVER_NAME_OR_IP_ADDR:~/.config/

Sur le serveur, connectez-vous en tant qu’utilisateur jamiserver et assurez-vous que les répertoires ont été copiés correctement.

cd
ls -a .local/share/jami
ls -a .config/jami

Note

Le propriétaire des répertoires du serveur doit être l’utilisateur jamiserver, et non l’utilisateur root.

Create a script file to launch Jami on the server

Create a script file to launch Jami on the server with the Jami Daemon (jamid) and the D-Bus (dbus) by creating (as root) the /usr/local/bin/launchjami file and adding the following contents:

#!/bin/bash
dbus-launch --auto-syntax|grep DBUS_SESSION_BUS_ADDRESS >/tmp/env-jamiserver
source /tmp/env-jamiserver
/usr/libexec/jamid

Note

Le fichier /usr/libexec/jamid a été créé à partir du paquet jami-daemon installé au début.

Ensure that the script file is executable with:

chmod +x /usr/local/bin/launchjami

Astuce

Le fichier jamiserver.service peut être créé et modifié en tant que root avec un éditeur de texte en utilisant la commande de terminal sudo nano /etc/systemd/system/jamiserver.service.

Afin de lancer le serveur Jami en tant que service, créez le fichier systemd jamiserver. Cela permettra d’exécuter le fichier script. Pour ce faire, le fichier /etc/systemd/system/jamiserver.service doit être créé en tant que root, et la configuration suivante doit être ajoutée :

[Unit]
Description=Daemon Jami for my project
After=network-online.target

[Service]
Type=simple
ExecStart=/usr/local/bin/launchjami
ExecStop=/usr/bin/pkill -u jamiserver jamid
User=jamiserver
Group=jamiserver

[Install]
WantedBy=default.target

Récupérez la configuration de systemd avec :

systemctl daemon-reload

Démarrez ensuite le service avec :

systemctl start jamiserver.service

Pour démarrer Jami automatiquement au démarrage du serveur, la commande suivante est nécessaire :

systemctl enable jamiserver.service

Avec la commande :

systemctl status jamiserver.service

Le service doit être défini comme actif :

# systemctl status jamiserver.service jamiserver.service - Daemon Jami for my project
     Loaded: loaded (/etc/systemd/system/jamiserver.service; disabled; preset: enabled)
     Active: active (running) since Fri 2025-03-14 05:29:18 UTC; 17min ago
   Main PID: 982 (launchjami)
      Tasks: 35 (limit: 2260)
     Memory: 65.9M (peak: 70.4M)
        CPU: 24.966s
     CGroup: /system.slice/jamiserver.service
             ├─982 /bin/bash /usr/local/bin/launchjami
             ├─988 /usr/bin/dbus-daemon --syslog --fork --print-pid 4 --print-address 6 --session
             └─989 /usr/libexec/jamid

Important

Si d’autres modifications sont apportées à la configuration de Jami sur l’ordinateur après l’installation sur le serveur, il est nécessaire de recopier les fichiers de configuration sur le serveur (réexécuter les commandes rsync) et de redémarrer le service.