Problème de sauvegarde avec Jeedom Backup

Bonsoir à tous,
Je suis un nouvel utilisateur de Jeedom dont les notions Linux sont proches de zéro…
Mon installation a été faire selon le tuto officiel sous Docker. Mon NAS est un Synology DS 718+.
Jeedom est opérationnel mais j’ai un message d’erreur qui apparait à chaque sauvegarde :
[START BACKUP]
Start of Jeedom backup at 2020-01-25 17:31:55
Envoi l’évènement de début de sauvegarde…OK
Vérification des droits sur les fichiers…chmod: changing permissions of ‹ /var/www/html/core/class/…/…/… ›: Operation not permitted
OK
Backup plugin netatmoWelcome…OK
Vérification de la base de données…sh: 1: mysqlcheck: not found
OK
Sauvegarde la base de données…sh: 1: mysqldump: not found
Erreur durant la sauvegarde : Echec durant la sauvegarde de la base de données. Vérifiez que mysqldump est présent. Code retourné : 127Détails : Array
(
)
[END BACKUP ERROR]
PHP Fatal error: Uncaught Exception: Echec durant la sauvegarde de la base de données. Vérifiez que mysqldump est présent. Code retourné : 127 in /var/www/html/install/backup.php:115
Stack trace:
#0 {main}
thrown in /var/www/html/install/backup.php on line 115

Pouvez-vous m’aider ?
Merci.

En fait, il y a plusieurs soucis dans ta configuration

  1. Le problème de droits

Lance lance commande suivante pour mettre à plats les droits user dans ton container

$ docker container ps

Identifie le nom du conteneur faisant tourner jeedom

$ docker container exec -it <Nom_du_container> chown -R www-data:www-data /var/www/html
  1. Le problème mysql

C’est juste que ton conteneur n’a pas le client mysql

$ docker container exec -it <Nom_du_container> apt install -y mysql-client

Cela va installer les binaires nécessaires pour faire les opération de bases de données

1 « J'aime »

Merci pour ta réponse.

Voici ce que me répond la machine : à chacun de tes deux premières commandes :

bash: $: command not found

J’ai oublié de préciser une chose en effet. Comme tu le disais tes connaissances Linux sont proches de zéros. J’aurais du être plus dans le détails.

En fait, il faut que tu lance ces commandes sur la machine ou se trouvent les conteneurs. En gros dans un shell du Synoplogy.

Tout d’abord vérifie que tu as bien docker installé dans ton shell

normalement, si tu n’as pas de droit sur le deamon docker, il te faudra lancer la commande en root ou en sudoers

$ sudo docker version

Si la commande réponds vérifie que tu n’a pas d’erreur sur

{...}
Server: Docker Engine - Community
 Engine:
  Version:          19.03.5
{...}

Si tout est oki cela signifie que tu pourras lancer les commandes.

Tu as le choix de les lancer telles qu’écrite plus aussi (en pseudo tty), ou en entrant dans le conteneur de jeedom

$ docker container exec -it <Nom_du_container> bash

et dans le conteneur, lancer les commandes

$ chown -R www-data:www-data /var/www/html
$ apt install -y mysql-client

Est-ce plus clair ainsi ?

Oui, en effet, je comprends que je dois être sur le NAS en ligne de commande.

quand je me connecte en SSh voici le message qui s’affiche: Could not chdir to home directory /var/services/homes/admin: No such file or dir

Puis à la commande $ sudo docker version voici ce qui s’affiche :
Client:
Version: 18.09.8
API version: 1.39
Go version: go1.11
Git commit: 2c0a67b
Built: Fri Sep 6 02:50:44 2019
OS/Arch: linux/amd64
Experimental: false

Server:
Engine:
Version: 18.09.6
API version: 1.39 (minimum version 1.12)
Go version: go1.11
Git commit: 1d8275b
Built: Fri Sep 6 02:51:05 2019
OS/Arch: linux/amd64

et enfin à la commande docker container exec -it <Nom_du_container> bash :
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.39/containers/jeedom/json: dial unix /var/run/docker.sock: connect: permission denied

Bon j’ai fini par me débrouiller avec la commande sudo et le mot de passe

Voici ce que la machine me répond à la commande apt install -y mysql-client :

Reading package lists… Done
Building dependency tree
Reading state information… Done
Package mysql-client is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package ‹ mysql-client › has no installation candidate

Bonjour,

J’ai résolu mon problème en grande partie grâce à toi qui m’a mis sur la voie. J’ai trouvé un post dans le forum dans la partie sauvegarde dont l’utilisateur avait sensiblement la même erreur que moi.
J’ai tapé cette commande : apt-gt install mariadb-server et tout est rentré dans l’ordre…
Merci à toi

Ah super, j’en suis content.

Je vais revenir sur tes derniers soucis afin que tu aies une explication des causes.

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.39/containers/jeedom/json: dial unix /var/run/docker.sock: connect: permission denied

Cette erreur est normale. Comme tu as pu le constater, il faut être sudoers pour avoir accès à la socker. Ou alors, tu peux également donner les droits à l’utilisateur. Pour cela il faut le rajouter dans le groupe docker

sudo usermod -aG docker <user>

Et pour la Bdd, tu as trouvé. Pour ma part je suis sous mysql, donc j’avais utilisé ce moteur bdd dans l’exemple

Merci beaucoup pour ton aide ainsi que ton explication cela m’aide à éclaircir un peu mieux ma situation

1 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.