Avec la commande target, tu gères tes destinations depuis la ligne de commande : afficher, créer, modifier, tester, vérifier, nettoyer et retirer. S’y ajoutent les actions pour un conflit d’empreinte et pour retrouver des sauvegardes.
WP-CLI n’est pas encore installé ? Alors commence par Installer WP-CLI. Ce qui vaut pour chaque commande, par exemple l’utilisateur et le paramètre --background, se trouve dans Les commandes en un coup d’œil.
Les mots de passe et les clés restent réservés à la page Destinations
La ligne de commande n’accepte jamais de mot de passe ni de clé : chaque valeur y figurerait dans la liste des processus et dans l’historique du shell. Tu ne peux donc créer ici qu’un dossier local. Les destinations avec identifiants se configurent sur la page Destinations. Il en va de même pour une destination de type Google Drive ou Dropbox : l’accord chez le fournisseur se donne dans le navigateur. Les autres actions fonctionnent ensuite aussi avec ces destinations.
Nommer une destination
Tu nommes une destination par son identifiant ou par son nom. L’identifiant se compose du type de destination et d’un numéro d’ordre, par exemple local-1 ou sftp-1. L’identifiant ne change jamais, même si tu renommes la destination. Pour les noms, la casse ne joue aucun rôle ; un nom contenant des espaces se met entre guillemets.
Chaque action sauf list vérifie que tu travailles en tant que l’utilisateur à qui appartiennent les dossiers de l’extension. --force passe outre cette vérification.
Afficher les destinations : list
# Afficher toutes les destinations avec identifiant et état wp cloneworx-backup target list
La sortie affiche une ligne par destination : identifiant, type de destination, nom, état et emplacement. La dernière ligne commence par Types: et énumère les types de destination disponibles : local, ftp, sftp, webdav, amazon-s3, s3, google-drive et dropbox. S’il manque quelque chose au serveur pour un type de destination, c’est indiqué entre parenthèses à la suite.
| État dans la sortie | Signification | Utilisable |
|---|---|---|
connected (tested …) |
Le dernier test de connexion a réussi ; son moment figure à la suite. | oui |
not tested yet |
Enregistrée, mais sans test réussi depuis la dernière modification des réglages. | non |
test failed (…) |
Le dernier test de connexion a échoué ; le code de la raison figure entre parenthèses. | non |
disconnected (…) |
Les identifiants enregistrés ne sont plus utilisables ; le code de la raison figure entre parenthèses, par exemple secrets_unreadable (plus lisibles) ou auth_failed (refusés par la destination). Saisis-les à nouveau sur la page Destinations : Renouveler les identifiants d’une destination. Pour une destination de type Google Drive ou Dropbox, le code est grant_invalid si le fournisseur n’accepte plus l’accord ; tu la reconnectes là-bas. |
non |
type not available |
Il manque quelque chose au serveur pour ce type de destination. | non |
removed |
Retirée ; des sauvegardes de la liste font encore référence à la destination. | non |
Deux indications peuvent suivre l’état. CATALOG CONFLICT est un conflit d’empreinte : le catalogue sur la destination appartient à une autre installation, la sortie en indique l’adresse. catalog stale signifie : le catalogue sur la destination n’a pas pu être écrit la dernière fois ; la sauvegarde est malgré tout bonne, et la prochaine sauvegarde réécrit le catalogue.
Créer une destination : add
# Créer un dossier local comme destination wp cloneworx-backup target add local --name="Archiv" --set-path=/var/backups # Tester la nouvelle destination wp cloneworx-backup target test local-1
| Indication | Signification | Valeurs autorisées |
|---|---|---|
| Type de destination | Figure directement après add. |
local. Les autres types de destination exigent un mot de passe ou une clé et ne peuvent donc pas être créés ici. google-drive et dropbox sont refusés par la commande, qui indique le chemin dans le navigateur : page Destinations, Ajouter une destination. |
--name=<nom> |
Ton nom pour la destination. Sans ce paramètre, l’extension attribue sa proposition. | Au plus 100 caractères. Tout nom qui n’est pas encore utilisé convient, pas même par une destination retirée. |
--set-path=<dossier> |
Le dossier sur le serveur, dans le formulaire le champ Dossier sur le serveur. Obligatoire. | Un chemin absolu vers un dossier qui existe déjà et dans lequel il est permis d’écrire. Il ne doit pas se trouver dans le répertoire de l’extension, que WordPress supprime à chaque mise à jour. |
--force |
Passe outre la vérification de l’utilisateur. |
La commande enregistre la destination et indique son identifiant. Elle n’est pas encore testée pour autant : une destination ne devient utilisable qu’après un test de connexion réussi. Tu n’as pas besoin de créer le dossier propre de l’extension ; il naît dans le dossier que tu indiques.
Avec ta première destination, l’extension crée le plan « Sauvegarde quotidienne ». Il est en pause jusqu’à ce que tu l’actives. Pour en savoir plus : Gérer les plans de sauvegarde avec WP-CLI.
Si une indication ne convient pas, la commande n’enregistre rien. Elle nomme le champ avec un code et se termine par Settings are not valid.
| Code | Signification |
|---|---|
required |
Un champ obligatoire est vide. |
base_invalid |
Le chemin n’est pas absolu, ou le dossier n’existe pas. |
base_in_plugin |
Le dossier se trouve dans le répertoire de l’extension. |
base_not_writable |
Il n’est pas permis d’écrire dans le dossier. |
taken, too_long
|
Le nom est déjà utilisé ou dépasse 100 caractères. |
invalid, out_of_range
|
La valeur n’est pas autorisée ou est hors de ses limites. |
Modifier une destination : edit
# Renommer une destination wp cloneworx-backup target edit local-1 --name="Archiv 2" # Modifier un réglage, puis tester à nouveau wp cloneworx-backup target edit sftp-1 --set-port=2222 wp cloneworx-backup target test sftp-1
edit a besoin au minimum de --name ou d’un réglage. Un réglage se définit avec --set-, suivi du nom du réglage et de sa valeur, par exemple --set-port=2222. Les mots de passe et les clés enregistrés sont conservés. Après un réglage modifié, la destination est de nouveau considérée comme non testée : teste-la à nouveau, sinon les plans et les sauvegardes l’ignorent. Un nouveau nom n’y change rien.
| Réglage | Champ du formulaire | Types de destination | Valeurs autorisées |
|---|---|---|---|
path |
Dossier sur le serveur, Dossier sur le serveur FTP, Dossier sur le serveur SFTP, Dossier dans le bucket, Dossier dans Google Drive | local, ftp, sftp, amazon-s3, s3, google-drive | Obligatoire pour local. Sinon, la valeur peut être vide. |
host |
Serveur | ftp, sftp | Nom d’hôte ou adresse IP |
user |
Nom d’utilisateur | ftp, sftp, webdav | |
port |
Port | ftp, sftp | 1 à 65535. Vide signifie 21 pour ftp, 990 pour FTPS implicite, 22 pour sftp. |
timeout |
Délai de connexion (secondes) | ftp, sftp, webdav, amazon-s3, s3, google-drive, dropbox | 3 à 60, par défaut 10 |
security |
Chiffrement | ftp |
explicit (FTPS avec TLS), none (aucun), implicit (FTPS implicite) |
mode |
Mode de transfert | ftp |
passive, active
|
auth |
Connexion | sftp |
password, key
|
url |
Adresse du dossier | webdav | L’adresse complète |
method |
Méthode d’envoi | webdav |
range, chunks, whole. Vide signifie : ce que le test de connexion a déterminé. |
upload_rate |
Débit d’envoi (octets par seconde) | webdav, amazon-s3, s3, google-drive, dropbox | 1024 à 1073741824. Vide signifie : ce que le test de connexion a mesuré. |
bucket |
Bucket | amazon-s3, s3 | |
access_key |
Clé d’accès | amazon-s3, s3 | |
region |
Région | amazon-s3, s3 | |
endpoint |
Adresse du service | s3 | L’adresse sans le bucket |
style |
Forme de l’adresse | s3 |
path, virtual. Vide signifie : ce que le test de connexion a déterminé. |
Ce qui est secret ne peut pas être accepté : password, private_key et secret_key. Les réglages tls_pin et host_key portent un certificat accepté ou la clé confirmée d’un serveur. Les deux sont définis par la page Destinations quand tu y acceptes un certificat ou une clé de serveur. Si tu nommes un réglage que le type de destination ne connaît pas, la commande énumère les réglages du type de destination.
Tester la connexion : test
# Tester la connexion d’une destination wp cloneworx-backup target test sftp-1
Le test écrit un petit fichier sur la destination, le relit, le compare et le supprime. Le résultat est enregistré sur la destination : après un test réussi, la destination est utilisable.
La sortie indique les détails du test sous forme de lignes nom et valeur, par exemple l’espace libre dans la ligne free_space. La dernière ligne dit si la destination fonctionne (works) ou pour quelle raison le test a échoué (failed). Si les nouveaux fichiers appartiennent à un autre utilisateur que le dossier de la destination, la commande avertit : le site ne pourra peut-être pas modifier ni supprimer de tels fichiers.
Vérifier les sauvegardes d’une destination : check
# Vérifier chaque sauvegarde de cette destination wp cloneworx-backup target check sftp-1 # Seulement lancer la vérification ; le site la poursuit wp cloneworx-backup target check sftp-1 --background
La vérification lit chaque sauvegarde stockée sur cette destination, la plus récente en premier : chaque fichier, le fichier d’information, chaque partie par rapport à sa somme de contrôle et chaque bloc. Rien n’est restauré. Le résultat figure ensuite aussi dans la liste des sauvegardes.
La sortie indique une ligne par sauvegarde avec le résultat et, à la fin, le total :
| Résultat dans la sortie | Signification |
|---|---|
ok |
La sauvegarde est lisible et complète. Suivent le nombre de parties, le nombre d’entrées et la quantité lue. |
damaged or incomplete |
La sauvegarde est endommagée ou incomplète sur cette destination. Ce qui ne va pas figure à la suite. |
not checked |
La destination n’a pas répondu. C’est un avertissement, pas un dommage de la sauvegarde. |
not complete at this target |
La sauvegarde n’est pas complète sur cette destination. |
Est vérifiée chaque bonne sauvegarde qui est complète sur la destination ou qui y est notée comme endommagée. S’il n’y en a aucune, la vérification ne démarre pas et le dit.
Nettoyer les restes : cleanup
# Afficher seulement ce qui serait supprimé wp cloneworx-backup target cleanup local-1 --dry-run # Supprimer les restes wp cloneworx-backup target cleanup local-1
Un reste est un dossier qu’une tâche interrompue a laissé sur la destination et qui ne deviendra jamais une sauvegarde : il n’a pas de fichier d’information, n’appartient pas à la tâche en cours, et la liste des sauvegardes ne le mentionne pas sur cette destination. Un envoi inachevé compte aussi comme reste. La même exécution supprime les anciens fichiers du dossier de travail de l’extension sur le serveur. Un dossier avec fichier d’information reste toujours en place, et ce qui figure dans la liste n’est jamais touché par le nettoyage.
| Paramètre | Signification |
|---|---|
--dry-run |
Affiche par dossier le nombre de fichiers et la taille, et ne supprime rien. Aucune tâche ne s’exécute. |
--background |
Lance la tâche ; le site la poursuit. |
--force |
Passe outre la vérification de l’utilisateur. |
La sortie indique par destination le nombre de dossiers et de fichiers supprimés et leur taille, ainsi que le nombre de dossiers de sauvegarde qui restent bien que la liste ne les connaisse pas. De telles sauvegardes, tu les récupères dans la liste avec rebuild. Le nettoyage s’exécute aussi de lui-même après chaque bonne sauvegarde, sur les destinations où cette sauvegarde est arrivée.
Répondre à un conflit d’empreinte : moved et copy
Avant d’écrire sur une destination, l’extension compare l’empreinte du catalogue sur la destination avec la sienne. Si les deux ne concordent pas, elle n’y écrit ni ne supprime rien jusqu’à ce que tu décides. Quelle réponse est la bonne et quand, c’est expliqué dans Le site a déménagé ou est une copie.
# Même site, nouvelle adresse ou nouveau chemin : a déménagé wp cloneworx-backup target moved sftp-1 # Cette installation est une copie de l’original wp cloneworx-backup target copy sftp-1 --yes
| Action | Ce qui se passe |
|---|---|
moved |
Le catalogue sur la destination est réécrit avec l’empreinte de cette installation, le conflit noté est réglé, et la destination est de nouveau utilisée. La sortie indique l’adresse que le catalogue portait auparavant. N’utilise jamais moved pour une copie. |
copy --yes |
Cette installation reçoit un nouveau code de dossier et donc son propre dossier sur chaque destination. Le dossier des journaux et le dossier de travail suivent. Les sauvegardes de la liste de cette installation appartiennent à l’original et disparaissent de la liste ; rien n’est supprimé sur les destinations. Tous les conflits notés sont réglés. La prochaine sauvegarde écrit dans le nouveau dossier. |
copy vaut pour toute l’installation, pas seulement pour la destination nommée. Sans --yes, la commande ne change rien : elle indique les conséquences et le nombre d’entrées qui disparaîtraient de la liste.
Retrouver des sauvegardes : sites, adopt et rebuild
Chaque installation de l’extension a son propre code de dossier, et ses sauvegardes se trouvent sur chaque destination dans le dossier cloneworx-backup-<code>. Après une perte totale, l’installation fraîche ne connaît pas le dossier de l’ancienne. Tout le parcours est décrit dans Retrouver des sauvegardes après une perte totale.
# Afficher ce qui se trouve à l’emplacement de la destination wp cloneworx-backup target sites sftp-1 # Reprendre le dossier d’une installation précédente wp cloneworx-backup target adopt sftp-1 --folder=cloneworx-backup-0123456789abcdef0123456789abcdef # Ajouter à la liste les sauvegardes de son propre dossier wp cloneworx-backup target rebuild sftp-1
sites
La sortie commence par le dossier propre : si son catalogue est lisible, combien de sauvegardes le catalogue indique, combien de sauvegardes la liste mentionne sur cette destination et combien de sauvegardes du dossier manquent dans la liste. Suivent les dossiers d’autres installations, par dossier avec l’adresse du site tirée de son catalogue, le nombre de sauvegardes, la date de la dernière et la version de l’extension. La dernière ligne dit si la reprise est actuellement possible.
adopt
| Paramètre | Signification | Valeurs autorisées |
|---|---|---|
--folder=<nom> |
Le dossier de l’ancienne installation sur la destination. Obligatoire. | Le nom du dossier, cloneworx-backup- et 32 caractères, ou les 32 caractères seuls. |
--background |
Lance l’ajout à la liste ; le site le poursuit. | |
--force |
Passe outre la vérification de l’utilisateur. |
Cette installation continue ensuite avec le code de dossier de l’ancienne. Le dossier des journaux et le dossier de travail suivent, les dossiers vides portant l’ancien code sont supprimés sur les destinations locales, et les sauvegardes du dossier sont ajoutées à la liste. Reprendre confirme en même temps que le site a déménagé.
Uniquement pour ton propre site, uniquement sur une installation fraîche
Ne reprends que le dossier de ton propre site. Tant que la liste de cette installation contient des sauvegardes ou qu’une tâche est en cours, la commande refuse la reprise. Après la reprise, les prochaines sauvegardes vont dans le dossier repris.
rebuild
rebuild ajoute à la liste les sauvegardes du dossier propre sur la destination qui y manquent, par exemple après qu’une destination a été retirée puis reconfigurée. La tâche lit le catalogue sur la destination, et sans catalogue lisible, la liste des dossiers. Pour chaque sauvegarde, elle récupère le fichier d’information et vérifie que chaque fichier se trouve sur la destination avec sa taille. Avec --background, le site poursuit la tâche.
La dernière ligne indique le résultat : combien de sauvegardes ont été trouvées, combien ont été nouvellement ajoutées à la liste, combien y figuraient déjà et combien sont incomplètes. L’extension ne supprime jamais automatiquement les sauvegardes retrouvées.
Retirer une destination : remove
# Retirer la destination ; ses sauvegardes restent en place wp cloneworx-backup target remove local-1 # Supprimer d’abord toutes les sauvegardes sur la destination, puis retirer la destination wp cloneworx-backup target remove local-1 --with-backups
La commande ne demande pas de confirmation
Contrairement à la page Destinations, remove n’affiche aucune demande de confirmation. Avec --with-backups, les sauvegardes sur cette destination sont ensuite supprimées.
| Paramètre | Signification |
|---|---|
| sans paramètre | La destination est retirée. Les sauvegardes restent sur la destination, où elles sont. |
--with-backups |
L’extension supprime d’abord chaque sauvegarde sur cette destination, puis retire la destination. La commande mène elle-même la tâche jusqu’au bout. Si des sauvegardes verrouillées sont stockées sur la destination, elle refuse : déverrouille-les d’abord, ou retire la destination sans ses sauvegardes. |
--force |
Passe outre la vérification de l’utilisateur. |
- Si des sauvegardes de la liste font encore référence à la destination, son entrée reste marquée comme retirée, sans réglages et sans identifiants. La sortie indique le nombre d’entrées qui y font encore référence.
- Si plus aucune sauvegarde n’y fait référence, la commande supprime complètement l’entrée. Cela vaut aussi pour une destination déjà retirée.
- Une destination retirée quitte chaque plan de sauvegarde. Un plan sans destination est mis en pause. Il ne peut être réactivé que lorsque tu lui donnes une destination.
- Pour une destination de type Dropbox, l’extension retire chez Dropbox, après le retrait, l’accès que la destination détenait. Les sauvegardes restent dans ta Dropbox. Le retrait n’a pas lieu si les identifiants enregistrés ne sont plus lisibles, si la destination était déjà retirée ou si cURL manque. Il échoue si Dropbox ou le service de connexion est injoignable à ce moment-là. La destination est malgré tout retirée. L’accès reste alors valable chez Dropbox jusqu’à ce que tu déconnectes l’application dans ton compte Dropbox.
- Pour une destination de type Google Drive, l’extension ne retire rien : l’accès que la destination détenait reste valable chez Google, et l’accord reste dans ton compte Google jusqu’à ce que tu l’y retires.