Publier vos sites FTP avec lftp

10 juil. 2015

linux

Vous gérez de nombreux sites internet et avez besoin de facilement les mettre à jour. Vous utilisez pour cela un logiciel FTP tel que Filezilla pour sauvegarder l’intégralité de vos sites (adresse, login, mot de passe). Oui mais voilà, lorsque vous modifiez de nombreux fichiers, vous devez vous déplacer dans les différents répertoires de votre site, et publiez chaque fichier modifié.

Vous pouvez également utiliser LFTP, un outil simple et efficace qui vous permet de publier vos fichiers en ligne de commande entre autres fonctionnalités :

  • publier / rapatrier un fichier
  • public / rapatrier un répertoire (et ses sous-répertoires)
  • synchroniser des répertoires (avec suppression des fichiers ayant disparus de la source)

Pour synchroniser des dossiers (fonction miroir), utilisez lftp de la manière suivante :

lftp ftp://$ftp_user:$ftp_pass@$ftp_hote -e "mirror -R $local_dir $remote_dir ; quit";

Comme vous pouvez le voir, cette commande n’est pas forcément évidente à se souvenir, il vous faudra entre autres renseigner à chaque fois le mot de passe, le répertoire distant… Afin de remédier à ce problème, j’ai donc créé un petit script bash qui vous permettra de sauvegarder vos sites sous forme de bookmark et de lancer les commandes « mirror » avec un minimum d’arguments.

Ce script utilise les arguments suivants :

  • c : nom du site (dans le fichier de configuration)
  • r / s : send ou receive (sens du miroir)
  • d : si on doit également effacer les fichiers dans le répertoire de destination
  • f : le répertoire à synchroniser

Aperçu du fichier de configuration / sauvegardes bookmarks :

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<Servers>
 <Server name="NOM DU SITE (argument c)">
 <Host>ADRESSE HÔTE</Host>
 <Port>21</Port>
 <User>UTILISATEUR FTP</User>
 <Pass>MOT DE PASSE FTP</Pass>
 <LocalDir>CHEMIN ABSOLUE EN LOCAL</LocalDir>
 <RemoteDir>REPERTOIRE DE CONNEXION DISTANT (www par exemple, si c'est un compte ftp racine)</RemoteDir>
 </Server>
</Servers>

Important : pour utiliser ce script, vous devez avoir installer xpath (paquet poppler-utils sous Linux Debian)

Documents liés

Commentaires

Me contacter

3 rue Garibaldi
18000 Bourges
SIRET : 81783887300021

contact@clementlevallois.fr

Liens amis
  • Nicolas Vannier, Création de sites à Bourges
  • AuréliA, Photographe à Bourges
  • JM Dubettier, consultant en communication
Mon actualité

Facebook Twitter

Plan du site | Mentions légales | Contactez-moi | Gestion des cookies