Rsync : résoudre l’erreur “is your shell clean?”

Lors de l’utilisation de la commande rsync, il est possible d’obtenir le message d’erreur suivant :

TERM environment variable not set.
protocol version mismatch -- is your shell clean?
(see the rsync man page for an explanation)
rsync error: protocol incompatibility (code 2) at compat.c(173) [sender=3.0.7]Code language: CSS (css)
rsync logo

Il s’agit la plupart du temps du fichier /~.bashrc qui n’est pas propre puisqu’il renvoie des informations au terminal.

Cela peut être dû à une commande qui donne des informations sur la date ou le système ou toute autre commande qui se lance à la connexion.

Rsync ne s’attend pas à cela et bloque.

La solution : pas d’output via .bashrc

La solution est assez simple : il suffit de nettoyer les commandes du .bashrc qui renvoient du texte ou en redirigeant le résultat de ces commandes vers /dev/null.

Le fichier .bashrc n’est pas la bonne place pour générer du texte dans le terminal. Les commandes doivent être déplacées dans le fichier .bash_profile.

Ainsi, vous n’aurez plus à sacrifier l’output quand vous vous connectez ou à éditer .bashrc quand vous voulez utiliser rsync.

Vous souhaitez enrichir votre site avec de nouvelles fonctionnalités ? Ensemble, donnons vie à vos idées, simplement et efficacement.

Parlons de vos besoins spécifiques »

Matt

Développeur certifié WordPress & WooCommerce chez Codeable, administrateur système et enseignant-chercheur, je mets mon expertise au service de vos projets web.

Ma priorité : des sites performants, fiables et sécurisés, pensés pour offrir la meilleure expérience utilisateur. J’accompagne chaque client avec écoute et pédagogie, pour transformer vos idées en solutions concrètes et durables.

Profitez de solutions WordPress et WooCommerce sur-mesure, pensées pour optimiser durablement votre site.
Explorez les leviers pour booster l’impact de votre site web.

2 pensées sur “Rsync : résoudre l’erreur “is your shell clean?””

  1. Bonjour,

    Merci pour l’astuce, je rencontre ce problème et je n’arrive pas à le résoudre.

    J’ai créé un fichier bash et je ne vois pas ce qu’il y a à nettoyer sur /~.bashrc.

    Je continue de chercher

    Reply
    • Bonjour Widee,

      Tu dois avoir une commande ou un bout de code qui génére du texte dans le bash.

      Quel est le contenu de ton fichier <.bashrc?

      Reply

Opinions