Pourquoi rsync ne s'est-il pas fait remarquer dans le monde Windows? [fermé]

97

Il semble que rsync soit le standard de facto pour une sauvegarde et une synchronisation efficaces des fichiers sous Unix / Linux.

Quelqu'un a-t-il une idée de la raison pour laquelle cela n'aurait pas été retenu dans le monde Windows?

Pourquoi n'est-il pas devenu un «protocole» universel pour la synchronisation de fichiers?

p.campbell
la source
4
C'est parce qu'il n'y a pas de port correct et que les gens de Windows sont habitués à It Just Works. Les pas-tout-ports existants sont un gros PITA.
RomanSt
1
Windows fournit déjà une synchronisation delta via DFS et RDC pouvant être gérée de manière centralisée, déployée massivement, configurée, etc.
Panagiotis Kanavos
@ p.campbell, cwrsync pour windows
Pacerier

Réponses:

48

Je dirais surtout parce que les gens dans Windows ne le savent pas. Rsync est un utilitaire de ligne de commande conforme à la philosophie unix qui consiste à avoir de nombreux petits outils préinstallés. La philosophie de Windows repose sur des applications graphiques téléchargées et installées séparément. Il n’existe pas de tâche d’intégration fluide dans laquelle rsync serait évident ou logique, et exécuter des commandes sur un système Windows est au mieux fastidieux.

De plus, rsync brille vraiment quand il fait partie d'une application plus grande (par exemple pour la consolidation et l'analyse de journaux), ou en tant que système d'archivage automatisé (implémenté facilement avec un cronjob). Windows n'a tout simplement pas les autres outils de son écosystème pour rendre l'utilisation de rsync réellement viable.

Enfin, je dirais que rsync est trop compliqué. Tous ceux que je connais qui l'utilisent régulièrement ont un groupe d'indicateurs prédéfini (le mien est -avuz) qui fait généralement ce qu'ils veulent, mais les pages de manuel / documentation répertorient des dizaines de commutateurs de ligne de commande, dont certains regroupent d'autres commutateurs. Par exemple (à partir de la [page de manuel] [1]):

-a, --archive : mode d'archivage; est égal à -rlptgoD (no -H, -A, -X)

C'est un moyen rapide de dire que vous voulez la récursion et que vous voulez préserver presque tout (avec -H une omission notable). La seule exception à l'équivalence ci-dessus concerne la spécification de --files-from. Dans ce cas, -r n'est pas impliqué.

Les utilisateurs de Windows s'attendent généralement à ce que les applications Windows et les menus soient bien configurés, et qu'une application unique soit une solution tout-en-un, et pas seulement un élément indépendant d'une chaîne d'outils.

HEDMON
la source
11
Je suis totalement d'accord avec vous ! Les pages de manuel sont le pire moyen de comprendre rsync et de nombreuses autres applications.
Antoine Benkemoun le
2
En fait, c'est l'inverse. Les gens sous UNIX / Linux ignorent que Windows fournit au moins DFS et RDC depuis 2006. Il est facile à configurer, gérer, déployer sur des domaines entiers (c.-à-d. Des centaines ou des milliers de bureaux avec des dizaines ou des centaines de clients).
Panagiotis Kanavos
3
@PanagiotisKanavos Sauf que DFS est différent de rsync. NFS (ou un certain nombre d'autres protocoles) est disponible sur les systèmes d'exploitation basés sur Linux, mais rsync est généralement utilisé pour les sauvegardes par étapes, les transferts uniques, etc. Pommes et oranges.
Andrew White
5
@Pacerier: "La ligne de commande est une ligne de commande"? Vous êtes extrêmement tolérant ou vous ne connaissez que l’un et pas les autres. Pour toute personne normale connaissant Bash sous Linux / Mac (ou n’importe lequel des autres shells Unix), cmd.exe est tellement paralysé qu’il est «sournois au mieux» de dire qu’il est «fastidieux au mieux».
mardi
2
"Et exécuter des commandes sur un système Windows est au mieux fastidieux." - Soit vous n'en avez pas fait grand-chose, vous n'avez jamais entendu parler de Powershell, vous êtes un fan de Linux ou tout ce qui précède. Ce n'est pas vraiment différent de le faire sous Linux ces jours-ci.
Alan B
63

Je suis surpris que personne n'ait mentionné DeltaCopy , qui est rsync dans une interface graphique Windows. Il peut même s’installer en tant que service compatible rsyncd.

Sekenre
la source
3
+1 Je ne peux pas voter assez pour cela. DeltaCopy nous permet de sauvegarder deux ou trois serveurs Linux sur notre serveur de sauvegarde Windows. Rsync sur Ubuntu directement dans le client DeltaCopy sous Windows.
Matt Everson
il ne semble pas jouer bien avec les autorisations de sécurité ntfs
JamesRyan
Peut-on extraire des fichiers via SSH, sans rsyncd sur la machine Linux distante?
Cees Timmerman
1
Lorsque rsync s'exécute sur ssh, il lance un processus rsync de l'autre côté. Vous n'avez pas besoin de configurer un serveur rsyncd autonome s'exécutant sur la télécommande, mais vous devez le faire installer.
Sekenre
DeltaCopy en tant que serveur sous Windows, script cron exécutant rsync sur une boîte Linux et rsnaphot pour réaliser des sauvegardes "Time Machine". Inestimable.
MGP
11

À mon avis, car il n'y a pas d'interface graphique décente.

Un autre argument peut être qu'il y a robocopy. Robocopy manque de nombreuses fonctionnalités intéressantes offertes par rsync, mais dans la plupart des situations, Robocopy est juste suffisant pour le travail à effectuer.

Ludwig Weinzierl
la source
4
robocopy ne fait rien pour optimiser les copies distantes, ce qui est la principale innovation de rsync. Je dirais que le fait de ne pas avoir une interface graphique pointue est la seule excuse pour ne pas l'essayer
Javier
2
Dans le monde Windows, travailler avec des fichiers "distants" implique souvent le partage du disque distant, puis des opérations de fichier "locales". Et pour cela, une photocopie suffit.
9

J'utilise intensivement le Cygwin rsync et cela fonctionne très bien.

Mais ...

C'est un bugger à installer et à configurer. Vous devez faire une installation complète de Cygwin pour obtenir un binaire et trois dll, et il n’est pas évident de savoir quels trois dll sont nécessaires. L'exécution en tant que service n'est pas évidente et la syntaxe de ligne de commande est complexe. Les non-nerds sont comme abandonner très vite.

De plus, cela gâche les autorisations au point où je règle toujours cygwin = nontsec et il se bloque régulièrement. Je comprends que le blocage est un problème connu de la DLL Cygwin plutôt que de rsync lui-même (ce qui n’est pas une critique des gars de Cygwin. Ce qu’ils ont accompli est presque miraculeux!).

Rsync est extrêmement utile si vous effectuez une sorte de réplication sur des liens WAN et que ma liste de tâches permet d'écrire une version native de Win32. Malheureusement, cela fait partie de ma liste de tâches depuis plusieurs années et nous ne sommes pas plus près du sommet. Je ne pense pas que l'écriture d'un wrapper d'interface graphique soit un grand pas en avant car elle ne résout pas certains des problèmes fondamentaux de la version Cygwin.

Si vous êtes intéressé, http://www.ratsauce.co.uk/notablog/UsingRsync.asp décrit les résultats de nombreuses heures de douleur pour que Cygwin rsync fonctionne sous Windows.

JR

John Rennie
la source
amen à cela, bien qu'il ait installé et fonctionné correctement sur mon système XP, Vista ne l'aimait pas du tout. Rsync est le métier, s'il y avait un port natif de Windows, je suis sûr que cela serait beaucoup plus utilisé.
gbjbaanb
L’installation de Git pour Windows donne les configurations configurées bash et CygWin prêtes à l’emploi. Vous pouvez même sélectionner une intégration de commandes unix dans CMD. Voilà, j'oublie d'utiliser PowerShell ou CMD)
it3xl
8

Je dirais que pour les synchronisations d'ordinateur à ordinateur plus petites, les gens utilisent Robocopy , SyncToy ou Foldershare (maintenant Live Sync). Pour les scénarios de partage de fichiers multimaître distribués dans les grandes entreprises, ils utilisent le système de fichiers distribués (DFS) . Ces outils gèrent très bien la plupart des scénarios de synchronisation, ne laissant que très peu d’avantages pour l’installation, l’apprentissage et l’utilisation d’une application recompilée * nix sous Windows.

Sean Earp
la source
7

Qu'est - ce que l' utilisateur utiliser votre moyenne Windows , il pour ?

jalf
la source
3
+1 pour être vrai - la sauvegarde de l'utilisateur Windows est généralement "faites glisser et déposez-le sur un disque dur séparé / externe"
LiraNuna
17
Je marque rarement les réponses, et je ne vais pas le faire, mais depuis quand ServerFault est-il un forum pour les utilisateurs Windows moyens? Pour l'administrateur système, la réplication hors site devient de plus en plus importante. Les grandes entreprises vont probablement simplement acheter DPM pour utiliser leurs connexions T3. Nous, les types plus modestes, avons besoin de quelque chose qui fonctionne à la vitesse de téléchargement ADSL, et rsync le fait très bien.
John Rennie
3
@ John: oui, mais les gens n'utiliseront pas rsync à moins de savoir qu'il existe. rsync a été utilisé, et utile, pour les utilisateurs "typiques" * nix pendant des siècles, de sorte que tout * administrateur système digne de ce nom est au courant. Sur Windows? Pas tellement. Windows est (et probablement plus important encore, était destiné à un public différent, un utilisateur qui n’intéressait ni n’utilisait d’outil de ce type. Etant donné que les administrateurs système de Windows sont généralement des utilisateurs de Windows , ceux-ci sont influencés par ceux-ci. Les utilisateurs de Windows utilisent.Vous
mélangez
Je viens de répondre à la question précédente, je ne nie pas que ce serait utile
jalf
Oui, mais de nombreux serveurs Windwos doivent également être sauvegardés.
Kiltek
4

OMI:

Il est beaucoup moins probable que rsync soit installé sur des machines que l'on rencontre dans le monde Windows alors que le Kit de ressources avec robocopy est souvent installé (ou du moins qu'il se trouve sur une liste "approuvée" de logiciels pouvant être installés sur un système de production).

Comme d'autres l'ont fait remarquer, le robocopy est généralement plus que suffisant pour peler le chat, quel qu'il soit. Ce n'est peut-être pas aussi bien que rsync mais c'est un bon outil.

Le manque d’interface graphique peut être un facteur, mais même s’il existe une interface pour robocopy, j’aperçois que la plupart des gens comprennent les commutateurs robocopy nécessaires et les insèrent dans un fichier .bat.

damorg
la source
Avec Windows 2008 (et plus encore, je suppose), robocopy est inclus dans le système d’exploitation, il n’est donc plus nécessaire de l’installer.
mrdenny le
Je n'ai pas réalisé cela. Merci pour les infos ... nous sommes dans au moins un an en 2008 et je n'ai pas suivi depuis mon départ de l'administration AD.
Damorg
Robocopy est également installé par défaut sous Vista et Windows 7, et éventuellement dans leurs homologues PE.
Oskar Duveborn
Robocopy ne transfère pas uniquement les parties CHANGÉES des fichiers. Par conséquent, les gros fichiers contenant de petites modifications sont copiés très lentement par rapport à ce que rsync fait.
JustinP
4

J'utilise robocopy dans Windows - qui est préinstallé dans Windows Vista et Windows 7, et résout toutes les situations de sauvegarde rencontrées jusqu'à présent.

Sam
la source
2

Je suppose que cela n’a tout simplement pas d’interface graphique. Pour des tâches de synchronisation faciles, Microsoft propose même Sync Toy et rsync pourrait faire bien plus encore ...

frère bleu
la source
En fait, il existe une interface graphique pour cela: sepiola.org/fr/home J'ai parlé avec les développeurs de Sepiola une fois et ils m'ont dit qu'ils venaient de créer une interface graphique autour de rsync.
2
J'ai voté contre, car cela suggère que les administrateurs système de Windows sont perdus sans interface graphique. Ce qui n'est pas vraiment vrai la plupart des bons administrateurs conviennent aux utilitaires en ligne de commande.
Quux
2

Pour le reste, il existe un rsync parfaitement fonctionnel pour Windows qui ne nécessite pas l’installation de Cygwin. Je l'utilise pour sauvegarder différentes parties de mes données sur différents lecteurs. Il est utile d’exclure des répertoires particuliers, mais d’autres utilitaires le font probablement également.

Nestor

Nestor
la source
Il utilise toujours Cygwin, ce qui signifie que sa dll pourrait interférer avec d’autres applications susceptibles d’utiliser Cygwin. Il est généralement préférable d'installer Cygwin dans ces cas-là.
dlamblin
2

Oh, vous avez visiblement manqué l'utilitaire "Unison". Je soutiens d'importantes infrastructures "temps réel" US / EUR et je dois dire que tout le monde a des problèmes très similaires ... comment se répliquer et pouvoir être actif-actif tout le temps ... si vous ne vous en souciez pas à propos de la persistance de session alors cette chose est la bombe ... la meilleure chose que j'ai trouvée dans les suppléments de solaris :-)

dounoit
la source
2

Le plus simple à utiliser / installer l’application graphique rsync que j’ai trouvée pour Windows est grSync .

( Captures d'écran: http://www.opbyte.it/grsync/screenshot.html )

S'il était plus populaire, peut-être que rsync serait utilisé davantage.

l0c0b0x
la source
0

Je pense que rsync peut être utilisé sous cygwin dans le monde Windows :) cygwin est facile à installer et à utiliser. Cependant, pour les utilisateurs ordinaires qui aiment les interfaces graphiques, il n’est pas très courant. nous avons donc deux barrières:

1) manque d'interface graphique

2) même s'il y avait une interface graphique dans tcl / tk par exemple, la nécessité d'installer cygwin est un obstacle.

et rsync n’est pas un logiciel propriétaire qui veut se vendre et a donc du mal à éliminer les obstacles devant ses clients potentiels. Comme Joel le dit: éliminer une barrière double votre base d'utilisateurs. Nous sommes donc confrontés à des obstacles pour les utilisateurs Windows - par conséquent, une petite base d'utilisateurs sur la plate-forme Windows.

utilisateur11722
la source
0

J'utilise robocopy pour un comportement semblable à rsync dans Windows.

Fondamentalement, j'ai écrit un fichier backup.bat que j'ai sur un lecteur externe. Je lance régulièrement le fichier pour sauvegarder mes ordinateurs de bureau sur le lecteur externe. Ensuite, je range le lecteur externe dans un coffre ignifuge.

Scott
la source
0

Exactement la même raison taret bzip2sont inouïes. Cela ne correspond pas beaucoup à Windows. compresser un répertoire et le parcourir via SMB convient mieux à Windows et semble presque aussi rapide dans de nombreux cas. Ce n'est pas vraiment mon rêve d'un monde meilleur, mais c'est une réalité à laquelle il faut s'attaquer. La plupart des machines Windows n'ont pas de couche Unix installée. Contrairement à Mac OS X.

Dlamblin
la source
0

De nouvelles versions de rsync sont en développement. Je suis tombé récemment sur wikipedia par le biais de yintersync . Il semble assez complet en tant qu'interface graphique pour rsync sous Windows et supporte aussi parfaitement les clichés instantanés pour la réplication de fichiers en direct.

J'ai récemment testé cela sur mon système de travail avec de bons résultats. Il a un programmateur intégré et des rapports par courrier électronique. Cela peut aider rsync à attraper enfin la foule des fenêtres

Geoff Goat
la source
0

Le manque de gui n'est pas vraiment un problème. xacls, robocopy, net, sc sont très utiles et n’ont aucune interface graphique. Je crois que si rsync n’est pas utilisé, c’est plutôt dû au fait que:

  1. Windows manque d'un véritable shell et d'un vrai langage de script. Et les gens qui utilisent batch utilisent aussi robocopy.
  2. Depuis 95, Windows est livré avec un outil graphique facile à utiliser (nommé "Porte document" dans la version française). Depuis Windows 2000 (ou XP?), Il existe un menu "Synchroniser" dans l’explorateur.
Benoit
la source
La définition de "réel" est? ^^
Oskar Duveborn le
Un vrai shell permet de personnaliser plus qu’une invite, la taille de la fenêtre ou une mosaïque. Il offre la possibilité d'effectuer toutes les tâches souhaitées (gestion des comptes d'utilisateurs, réglage de la configuration du système, ...). Un vrai langage de script permet de définir l'environnement (avez-vous déjà essayé d'utiliser la commande "date" dans un environnement multi-pays?) Et peut être utilisé dans une invite interractive (contrairement à vbs / js).
Benoit
PowerShell répond à toutes vos exigences et fait partie de Windows depuis 2006. Il s’intègre à .NET, je le préfère donc dans certains cas à Bash.
James