Forum Linux.debian/ubuntu rsync ne prend plus en compte le point de montage

Posté par  . Licence CC By‑SA.
Étiquettes :
0
28
août
2018

Bonjour à tous,

Je viens chercher quelques lumières pour résoudre un problème de sauvegarde sur mon serveur.
Il tourne actuellement sous ubuntu 16.04.03 LTS.

J'ai un disque dur externe qui est monté très simplement via le fichier fstab sur le dossier /save
Toutes les nuits, crontab fait un "sh /root/rsync.sh"
Dans ce fichier rsync.sh, je lance 3 rsync sur des répertoires différents. Ex :

sync -rlptgoDv --stats --force /partage/mondossier /save/mondossier

Or, je viens de m'apercevoir que la sauvegarde ne fonctionnait pas pour faute d'espace disque (alors qu'il y a de l'espace sur le dd externe).

Après recherche, il s'avère que les fichiers copiés par rsync se font sur le disque système et non le disque externe, comme si le disque externe n'était pas monté sur /save. Mon filesystem / est ainsi plein à 100% avec le répertoire /save de blindé.

Je dois donc me connecter au serveur, démonter /save, aller dans le répertoire /save qui est blindé et tout supprimer. Mais le problème est systématique et se reproduit chaque nuit.

Le serveur a 7 ans et tout a bien fonctionné jusqu'à fin juin. Le problème a commencé début juillet.
La seule chose qui a été faite à ce moment là, c'est éteindre le serveur et prendre le dd externe avec moi (cause vacances 1 semaine) et le rebrancher et redémarrer la bête début juillet.

Si quelqu'un a une idée ou une piste, je suis preneur !

Merci d'avance,

Stoomm.

  • # Piste dérivée

    Posté par  (site web personnel) . Évalué à 4. Dernière modification le 28 août 2018 à 16:48.

    Salut,

    pas une solution pour le problème de montage, mais un moyen de savoir que ça ne va pas: utiliser le retour de la commande mountpoint (man) pour savoir si le disque a été monté (et si ce n'est pas le cas du peux t'envoyer un email et ne pas faire le rsync).

    Q? tu le montes comment ton disque externe (extrait fstab…) ?

    Python 3 - Apprendre à programmer dans l'écosystème Python → https://www.dunod.com/EAN/9782100809141

  • # Chemin de destination

    Posté par  (site web personnel) . Évalué à -3.

    Bonjour,

    Peut être ai je mal compris la commande, mais je ne vois pas le point de montage de ton disque dur externe:
    sync -rlptgoDv --stats --force /partage/mondossier /save/mondossier

    En décomposé:
    sync -rlptgoDv --stats --force --> Commande rsync

    /partage/mondossier --> Dossier à synchroniser

    /save/mondossier --> Destination

    Tel qu'écrit ici pour moi la destination est C:/save/mondossier

    Après tu as peut être fait des simplifications plutôt que de nous donner ton chemin d'accès vers le disque. A ce moment là, vérifie si le chemin d'accès n'a pas été modifié / cassé lors du démontage du disque.

    Cordialement,

    • [^] # Re: Chemin de destination

      Posté par  . Évalué à 5.

      C'est une ubuntu, pas un windows, il n'y a pas de C:

      • [^] # Re: Chemin de destination

        Posté par  (site web personnel) . Évalué à 0.

        Mauvais vocabulaire de ma part… et pour le raisonnement?

        "Après recherche, il s'avère que les fichiers copiés par rsync se font sur le disque système et non le disque externe, comme si le disque externe n'était pas monté sur /save. Mon filesystem / est ainsi plein à 100% avec le répertoire /save de blindé."

        -->
        Tel qu'écrit ici pour moi la destination est "/"save/mondossier

        Ce qui est bien ce bien ce qui ce produit. Création et remplissage du dossier save dans le filesystem (ou disque C: pour les windowsiens) :-)

  • # réponse

    Posté par  . Évalué à 1. Dernière modification le 28 août 2018 à 17:39.

    lolop : Merci pour l'idée, je vais voir pour tester avant et je tiens au courant.
    Le DD est monté via fstab

    UUID=21a17930-416b-4027-9593-ad4c4366cac4 /save ext4 defaults 0 0

    Benjamin : Je suis sous linux, donc la destination c'est bien /save/mondossier ;)

    Autre point intéressant :

    J'ai lancé le script rsync.sh via ssh : pas de problème.
    J'ai modifié le script rsync.sh pour ne faire qu'un "touch monfichier" et le fichier a bien été créé au bon endroit via crontab.

    Edit : Rajout de la réponse à la question de lolop

    • [^] # Re: réponse

      Posté par  . Évalué à 1.

      un petit "df -H" ou un "mount" permettront de savoir si ton disque externe est monté, avant le rsync et après.

    • [^] # Re: réponse

      Posté par  . Évalué à 2.

      il est monté par fstab, donc le disque est branché en permanence sur la machine

      si ce n'est pas le cas, il ne sera jamais monté automatique, sauf si tu cliques sur l'icone dans le gestionnaire de fichier,

      à ce moment là il sera monté dans /media/tonuser/tondisque

      ton script qui tourne la nuit pourrait verifier que le dossier /save/mondossier/ existe avant de lancer le rsync, et quitter si mondossier n'existe pas

    • [^] # Re: réponse

      Posté par  (site web personnel) . Évalué à 2. Dernière modification le 29 août 2018 à 08:54.

      Essaie de coller un mount /save dans ton script de backup (sois systématique, soit si la commande mountpoint indique qu'il n'est pas monté). Ça paliera peut-être un éventuel manque de détection automatique de la présence du disque dur via udev.
      Si tu lances ton script en tant qu'utilisateur normal, pense à ajouter l'option user aux options de montage de ton disque.

      Python 3 - Apprendre à programmer dans l'écosystème Python → https://www.dunod.com/EAN/9782100809141

  • # Proposition

    Posté par  . Évalué à 1.

    Hello,

    Juste pour être sûr d'avoir le disque, faire un mount -a juste avant le rsync, puis vérifier la présent d'un flag (ex: [ -f /save/.backup ] && { …. le rsync … }

  • # Mise en veille disque ?

    Posté par  . Évalué à 2.

    Bonjour,

    Ton disque dur ne se mettrait pas en veille automatiquement par hasard ? Et du coup se retrouve démonté au lancement du rsync.

    As-tu essayé de rajouter mount /save, histoire d'enfoncer le clou, avant les rsync dans ton script ? (ou alors un automount via systemd)

  • # Réponse

    Posté par  . Évalué à 1.

    Bonjour à tous,

    Je penche en effet pour une mise en veille du disque. Je me suis aperçu hier, en lancant un df dans la soirée que le point de montage n'était plus la. Il s'est remonté tout seul ensuite.

    J'ai ajouté un mount /save, je vous dis ce qu'il en est sous peu.

    Par contre, une idée du pourquoi j'aurai ce nouveau comportement ?
    Mise à jour du système ? Disque qui commence à fatiguer ?

  • # Réglé

    Posté par  . Évalué à 4.

    Pour info, problème réglé. Il y avait un faux contact dans le cable USB visiblement… Je l'ai changé et depuis tout refonctionne à merveille !
    Désolé pour le dérangement (mais j'ai appris des choses) ;)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.