Mes Fichiers

Ce plugin fabrique un fichier d’archives contenant les données de personnalisation du site comme le dernier dump de sauvegarde de la base, le(s) dossier(s) des squelettes nommés, le dossier images…

Faire un paquet des données du site

Il est possible d’effectuer une sauvegarde de la base de données avec SPIP, mais les fichiers ne le sont généralement pas.

En plus des données, il est recommandé de faire une copie du répertoire servant de dépôt documentaire, le fameux répertoire IMG/ contenant tous les logos et les documents joints. Par précaution, on peut aussi faire une copie du dossier squelettes/ contenant toutes les personnalisations du site ainsi que le fichier config/mes_options.php, le fichier .htaccess ainsi que la sauvegarde de la configuration d’un squelette tel que Sarka-SPIP peuvent être ajoutées à la liste.

Ceci représente, quand elles sont effectuées manuellement, un nombre de manipulations longues et fastidieuses, par ftp, fichier par fichier. Il est donc plus confortable de transporter en une seule archive l’ensemble de ces fichiers, base comprise, que le site peut fabriquer à la demande. C’est le rôle du plugin « mes_fichiers » : faire un paquet des données du site [1].

Utilisation de base

Lorsqu’il est activé, ce plugin propose deux actions principales aux administrateurs du site (ou aux utilisateurs possédant l’autorisation « sauvegarder » sous SPIP 3).

Sauvegarder mes fichiers

Cette option fabrique le fichier « mf2_aaaammjj_hhmmss.zip » dans le dossier tmp/mes_fichiers/. Ce fichier d’archive peut contenir :

  • le fichier config/mes_options.php, s’il existe,
  • le fichier .htaccess lié à la réecriture d’urls, s’il existe,
  • le répertoire IMG/ complet,
  • le répertoire squelettes/ complet, s’il existe,
  • le dernier fichier de sauvegarde de la base créé en utilisant l’interface privée de SPIP ou généré par le plugin « saveauto »,
  • et enfin les répertoires et/ou fichiers rajoutés via le pipeline mes_fichiers_a_sauver par certains plugins comme Saveauto et Sarka-SPIP 3 (tmp/cfg/ en ce qui concerne la sauvegarde de la configuration de Sarka-SPIP par exemple) et ieconfig.

Depuis la version 2.0 pour SPIP 3, il est aussi possible de sauvegarder la base SQLite du site si celui-ci utilise ce format de données.

Il est possible de sélectionner tout ou partie de ces éléments avant de lancer la sauvegarde.

Formulaire de sauvegarde sous SPIP 3

Télécharger une sauvegarde

Cette option liste les fichiers d’archives disponibles, et permet de visualiser leurs constituants et / ou de les télécharger sur le disque local.

Liste des archives sous SPIP 3

Utilisation avancée

Configuration

Le plugin permet de configurer certains paramètres de sauvegarde comme illustré ci-dessous :

Configuration sous SPIP 3

Les paramétrages les plus notables sont :

  • la limite de taille sur les répertoires sauvegardés très utile quand le dossier IMG/ commence à grossir.
  • la possibilité d’activer une sauvegarde automatique de l’ensemble des fichiers / dossiers de personnalisation avec une fréquence réglable en jours.
  • la possibilité d’activer le nettoyage journalier des sauvegardes.
  • l’activation des notifications sur les actions.

Sauvegarde automatique

Dès qu’elle est activée, cette option génère à intervalle régulier une archive contenant l’ensemble des fichiers dont la taille est inférieure au seuil prescrit.

Nettoyage des archives

Dès qu’il est activé, les archives les plus anciennes sont supprimées afin d’éviter de remplir le quota du site. La durée de conservation des archives est paramétrable.

Notifications

Dès qu’elle est activée, cette option notifie au webmestre ainsi qu’à une liste d’adresses configurables l’ensemble des actions manuelles et automatiques.

Évolutions

  • Le 28 octobre 2012 : création de la branche 2.0 pour SPIP 3
  • Le 19 février 2022 : création de la branche 3 pour SPIP 4.1 utilisant le plugin Archiviste

Notes

[1Et comme il s’agit de données, les plugins du dossier plugins/ ne sont pas pris en compte, considérant qu’ils font partie du système d’une part et qu’ils font bien souvent l’objet d’une offre de sauvegarde mutualisée sur la zone, d’autre part.

Discussion

28 discussions

  • 3

    Merci pour ce plugin qui permet de choisir finement ce que l’on veut sauvegarder.

    Avec un site sous SPIP 4.1.5 j’avais forcé la version 1.2.7 du plugin « sauvegarder automatique » mais en SPIP 4..1 celui-ci ne zip plus ni n’envoie de notification par mail.

    Avec « mes fichiers 3.0.1 » le zip se fait bien mais n’est pas envoyé en fichier joint dans la notification.
    Dans la notification il n’y a pas non plus de lien vers la sauvegarde.

    Question : est-ce que le plugin « sauvegarder automatique » apporte quelque chose à « mes fichiers » ?

    Merci
    dd

    • En fait, Sauvegarde automatique crée une sauvegarde de la base comme on peut le faire avec SPIP. On peut donc s’en passer sauf si on préfère le format de Sauvegarde automatique.

    • OK merci, je vais attendre que « sauvegarde automatique » soit compatible avec SPIP 4.1 afin de pouvoir récupérer mes sauvegardes auto vers un autre serveur via un zip (envoyé par mail). I
      I y a sans doute des API ou autre service externe qui pourraient le faire de manière sécurisée, mais j’ai pas encore trouvé.

      dd

    • @DD
      Je ne sais pas si ta recherche d’API est encore d’actualité, mais le plugin Dropbox peut éventuellement répondre à ton besoin en se couplant avec Sauvegarde automatique.

    Répondre à ce message

  • 5
    Michel Suquet

    Bonjour,

    j’utilise la version 2.0.17 et il est proposé la mise à jour vers la version 3.0.0 mais impossible de la réaliser : est-ce normal ?

    D’ailleurs, je vois que dans l’interface, cette version est compatible avec spip mais sans mentionner une version telle que 4.0 : est-ce la cause de la non-mise à jour ?

    Nous sommes en spip 4.0.4

    Cordialement,

    Michel Suquet
    https://www.apmep-iledefrance.fr/

    • Bonjour,

      Oui c’est « normal » sans l’être vraiment.
      Cette nouvelle version est compatible uniquement à partir de spip 4.1 qui n’est encore qu’en beta. Par contre, le fonctionnement entre SVP et Plugins SPIP me semble suspect dans ce cas. Je vais remonter le souci mais de toute façon il faudra attendre de passer en SPIP 4.1 Pour utiliser la branche 3 de Mes fichiers.

    • Michel Suquet

      Bonjour,

      nous sommes passé en spip 4.1 et la mise à jour s’est bien faite en 3.0.0 mais pour l’activer, il y a un message d’erreur :
      • Le plugin Mes fichiers dépend du plugin ARCHIVISTE ≥ 2.2.0-dev.

      Pourquoi cette dépendance ? Que faut-il faire ? Cette dépendance n’est pas indiquée dans la doc.

      Cordialement,

      Michel Suquet

    • Le plugin Archiviste est nécessaire à partir de cette branche car la librairie pclzip a été supprimée de spip au profit de l’api de Archiviste.

      Par contre, le nécessite est complètement faux. Je le corrige et je sors une nouvelle version dans la foulée.

    • Voilà le tag v3.0.1 a été créé, il sera bientôt disponible en zip.

    • Michel Suquet

      Merci pour cette modification : j’ai pu activer le plugin sans problème.

      Cordialement,

      Michel Suquet

    Répondre à ce message

  • 3
    lagrenouille

    Bonjour
    nous avons mis ce plugin dans la mutualisation de PIC
    suite à des test dans plusieurs sites mutualisés, le plugin fonctionne parfois bien et parfois pas du tout..
    il y a ce message
    « Aucune sauvegarde disponible au téléchargement. »

    Nous cherchons, mais nous n’avons pas encore trouvé la faille

    Si vous avez une idée, merci

    • lagrenouille

      Suite du feuilleton
      au téléchargement le fichier
      mf2_20181124_084730.zip.part ne fini pas le boulot

      le fichier zip à donc reste à zéro octet

      je confirme que c’est le seul qui me fait ça
      tout autre téléchargement de fichier archivé se décompresse sans problème..

    • lagrenouille

      bon, mauvaise écriture
      j’ai fait un site en local et j’ai testé le plugin
      nickel
      dont, c’est dans les nombreuses conf de notre mutu spip,
      désolé du bruit

    • lagrenouille

      résolu.

      Nous avons nginx comme proxy

      dans le fichier « mes_fichiers_telecharger.php » du plugin, la redirection à la fin est supprimé

      // redirige_par_entete(generer_url_ecrire(’mes_fichiers’, ’etat=ok_tele’, true)) ;

    Répondre à ce message

  • 1
    stéphane

    Bonsoir,

    j’ai pu lire que le plugin stocké les sauvegarde dans le répertoire ./tmp/mes fichiers

    a priori via les lignes de code suivante

    // Repertoire de stockage des archives creees
    if (!defined('_DIR_MES_FICHIERS')) define('_DIR_MES_FICHIERS', _DIR_TMP . 'mes_fichiers/');
    define('PCLZIP_TEMPORARY_DIR', _DIR_TMP)

    ma question est comment modifié les lignes pour pouvoir envoyé les sauvegardes dans le répertoire /data situé a la racine du serveur alors que spip est dans un répertoire

    merci pour votre aide

    • Bonjour,

      A priori (je n’ai pas testé), en définissant dans mes_options.php
      (ou mieux mes_fonctions.php , car il ne serait utilisé qu’en privé ) :
      define('_DIR_MES_FICHIERS', ' le chemin accessible que l'on veut !/');.

      YannX
      http://spippourlesnusl.fr

      PS je me demandais pourquoi les divers connect....php n’y sont pas proposés, dans ../plugins/auto/mes_fichiers/v2.0.16/formulaires/mes_fichiers_sauver.html
      non plus que le (futur) paquet plugins_site.xml (cf. Lister les pugins nécessaires !

    Répondre à ce message

  • 2

    Bonjour,

    Très bien la sauvegarde mais comment faire la restauration ?

    Celle de la base de données OK mais tous les autres fichiers (rubriques, sous-rubriques, articles, img, etc.) ?

    Je ne trouve pas comment faire…

    • il n’y pas de fichier rubriques/articles etc, c’est en BDD. J’imagine que vous voulez parler des logos et des documents. Et bien normalement, il suffit de les mettres dans le dossier IMG.

    • OK merci ;-)

    Répondre à ce message

  • Bonjour,
    J’ai eu un problème avec un serveur où des liens symboliques ont été installés dans le répertoire IMG. Ce qui fait que ce problème ne doit affecter quasiment personne...

    Dans mon cas les certains liens symboliques pointent vers des zones communes ce qui a fait que les tailles calculées étaient aberrantes.

    En regardant dans la doc php on voit que la fonction « is_dir » suit les liens symboliques, c’est à dire qu’elle ne les voit pas.

    La sauvegarde devrait suivre le principe annoncé par le module pclzip qu’elle utilise c’est à dire ignorer les liens symboliques. Pour cela il faut tester les liens symboliques avant les répertoires (ce que pclzip oublie de faire).

    Pour mes_fichiers il a suffit de modifier la fonction mes_fichiers_dirsize (dans inc/mes_fichiers_utils) en rajoutant un test :

                    // Get list of directories or filesizes
                    $path = $queue[$i] . $entry;
    if (!is_link($path)) { //ignorer les liens symboliques
                    if (is_dir($path)) {
                        $path .= DIRECTORY_SEPARATOR;
                        $subdirs[] = $path;
                    } elseif (is_file($path)) {
                        $size += filesize($path);
                    }
                }
    }

    Pour pclzip (dans le core de spip) il m’a fallu changer l’ordre des tests dans la fonction privFileDescrExpand (/ecrire/inc/pclzip.php) de façon à tester les liens en premier.

    Jean-Daniel

    Répondre à ce message

  • Bonjour,

    Env : SPIP 3.0.16 - Mes Fichiers 2.0.12 stable

    Ce plugin est exactement ce que recherchais !

    L’installation s’est douroulée sans problème et le backup distant exécuté comme prévu.

    Le problème se pose au téléchargement : alors que l’archive annonce une taille de 155,5 MB, la version téléchargée localement ne fait que 257 bytes et est corrompue ! Voir la copie d’écran en piéce jointe...

    J’ajoute que le test a été effectué sous OSX Lion avec les browsers Firefox, Chrome et Safari.

    Une idée ?

    Répondre à ce message

  • 2
    Sylvain

    Bonjour,

    je test le plugin actuellement tout marche plutôt pas mal par contre le bouton « télécharger » ne fonctionne pas du tout ? C’est normal ?

    ++ Sylvain

    • Bonjour,

      Non, il n’est pas normal que le bouton télécharger ne fonctionne pas et je n’est jamais eu ce type problème jusqu’alors.
      Quelle version du plugin utilises-tu ? Sur quelle version de SPIP ?

    • Sylvain

      C’est la version 1.0.5 du plugin (la seule proposée dans les listes d’installation de la page plugin sur la branche 2.1) j’ai testé initialement en ligne sur un SPIP 2.1.2, puis en local sur un 2.1.11 et un 2.1.21.

    Répondre à ce message

  • 5

    Bonjour

    Ce plugin me semble très intéressant, mais impossible de l’installer sur mes sites en version 2.1.12 de spiip. Au moment de l’installation, il m’est demandé de créer un répertoire /lib, je suppose à la racine du site. Ce que je fais. Quand je relance l’installation, celle-ci se déroule normalement, sauf que « Mes fichiers » n’apparaît nulle part dans ma liste des plugins, et que le répertoire /lib ne contient rien.

    Comment faire ?

    Merci d’avance.

    • Salut Bcolo,

      Ce plugin ne nécessite aucune librairie pour fonctionner. Je ne vois pas vraiment quel est le souci que tu peux avoir. Avec quel outil installes-tu le plugin ?

    • J’ai essayé en auto depuis l’admin. Puis j’ai refait une tentative en installant le plugin directement par ftp, et là ça a marché.

      Le répertoire /lib est demandé au moment de l’installation. Et après vérification, j’ai bien un dossier mes_fichiers créé dans /lib à la racine du site.

    • Bonjour

      Tu as charger la mauvaise version via le chargeur automatique manifestement.
      Je pense que dans le dossier lib/ tu as un paquet.xml et pas un plugins.xml

    • Bcolo,

      Il serait intéressant aussi que tu mettes à jour ta version de SPIP en 2.1.19 pour combler les failles de sécu a minima et que tu fasses aussi une mise à jour de tes plugins.
      Ce problème de chargement du plugin dans le dossier lib/ est pas nouveau et devrait être corrigé avec des versions à jour... enfin j’espère. En tout cas, il n’existe plus avec SPIP 3.

    • OK, merci beaucoup pour ces précisions. Effectivement je vais passer dans les prochains jours à SPIP 3. Sinon, très bon plugin, très utile.

    Répondre à ce message

  • 1
    Jean-Louis

    J’aide un webmestre d’établissement

    Au démarrage de son SPIP 3.0.5 Sarka, il a les erreurs suivantes :

    7 Erreur(s) dans le squelette Numéro message squelette boucle Ligne
    1 Erreur SQL 1146
    La table ’w0341705u.v2_petitions’ n’existe pas
    SELECT * FROM spip_petitions LIMIT 1
    / /
    2 Erreur SQL 1146
    La table ’w0341705u.v2_depots’ n’existe pas
    SELECT * FROM spip_depots LIMIT 1
    / /
    3 Erreur SQL 1146
    La table ’w0341705u.v2_plugins’ n’existe pas
    SELECT * FROM spip_plugins LIMIT 1
    / /
    4 Erreur SQL 1146
    La table ’w0341705u.v2_paquets’ n’existe pas
    SELECT * FROM spip_paquets LIMIT 1
    / /
    5 Erreur SQL 1146
    La table ’w0341705u.v2_mots_liens’ n’existe pas
    SELECT * FROM spip_mots_liens LIMIT 1
    / /
    6 Erreur SQL 1146
    La table ’w0341705u.v2_depots_plugins’ n’existe pas
    SELECT * FROM spip_depots_plugins LIMIT 1
    / /
    7 Erreur SQL 1146
    La table ’w0341705u.v2_urls’ n’existe pas
    SELECT * FROM spip_urls LIMIT 1

    Comment résoudre son problème

    Effectivement les tables ne sont pas présentes

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom