¿Por qué no se ha dado cuenta de rsync en el mundo de Windows? [cerrado]

97

Parece que rsync es el estándar de facto para una copia de seguridad y sincronización de archivos eficiente en Unix / Linux.

¿Alguien tiene alguna idea de por qué no habría sido popular en el mundo de Windows?

¿Por qué no se ha convertido en un 'protocolo' universal para la sincronización de archivos?

p.campbell
fuente
44
Es porque no hay un puerto decente y porque la gente de Windows está acostumbrada a It Just Works. Los puertos no del todo existentes son una gran PITA.
RomanSt
1
Windows ya proporciona sincronización delta a través de DFS y RDC que se puede administrar de forma centralizada, desplegar masivamente, configurar, etc.
Panagiotis Kanavos
@ p.campbell, hay cwrsync para windows
Pacerier

Respuestas:

48

Diría principalmente porque las personas en Windows no lo saben. Rsync es una utilidad de línea de comandos que es consistente con la filosofía de Unix de tener muchas herramientas pequeñas preinstaladas. La filosofía de Windows se basa en las aplicaciones GUI que se descargan e instalan por separado. No hay un punto de integración fluido donde rsync sea obvio o tenga mucho sentido, y ejecutar comandos en un sistema Windows es tedioso en el mejor de los casos.

Además, rsync realmente brilla cuando es parte de una aplicación más grande (por ejemplo, para consolidar y analizar registros), o como un sistema de archivo automatizado (implementado fácilmente con un cronjob). Windows simplemente no tiene las otras herramientas en su ecosistema para hacer que el uso de rsync sea realmente viable.

Finalmente, diría que rsync es demasiado complicado. Cualquier persona que conozca que lo use regularmente tiene un grupo preestablecido de banderas (el mío es -avuz) que generalmente hace lo que quiere, pero las páginas de manual / documentación enumeran docenas de interruptores de línea de comandos, algunos de ellos amalgamaciones de otros interruptores. Por ejemplo (de la [página de manual] [1]):

-a, --archivo : modo de archivo; es igual a -rlptgoD (no -H, -A, -X)

Es una forma rápida de decir que desea recurrencia y desea preservar casi todo (con -H siendo una omisión notable). La única excepción a la equivalencia anterior es cuando se especifica --files-from, en cuyo caso -r no está implícito.

Los usuarios de Windows generalmente esperan, bueno, ventanas y menús, y tener una sola aplicación sea una solución todo en uno, no solo una pieza independiente de una cadena de herramientas.

HEDMON
fuente
11
Estoy totalmente de acuerdo contigo ! Las páginas de manual son la peor forma de entender rsync y muchas otras aplicaciones.
Antoine Benkemoun el
2
En realidad, es al revés. La gente de UNIX / Linux no sabe que Windows proporciona DFS y RDC desde 2006 al menos. Es fácil de configurar, administrar e implementar en dominios completos (es decir, cientos o miles de escritorios con docenas o cientos de clientes).
Panagiotis Kanavos
3
@PanagiotisKanavos Excepto que DFS es diferente a rsync. NFS (o una serie de otros protocolos) están disponibles en el sistema operativo basado en Linux, pero rsync se usa generalmente para copias de seguridad por etapas, una vez fuera de las transferencias, etc. Manzanas y naranjas.
Andrew White
55
@Pacerier: "¿La línea de comando es la línea de comando"? Eres extremadamente tolerante o solo conoces a uno y no a los demás. Para cualquier persona normal que conozca Bash en Linux / Mac (o cualquiera de los otros shells de Unix), cmd.exe está tan paralizado que decir que es "tedioso en el mejor de los casos" sigue siendo un eufemismo.
mivk
2
"y ejecutar comandos en un sistema Windows es tedioso en el mejor de los casos". - o no has hecho mucho de eso, nunca has oído hablar de Powershell, eres fanático de Linux o todo lo anterior. En realidad no es diferente de hacerlo en Linux en estos días.
Alan B
63

Me sorprende que nadie haya mencionado DeltaCopy , que está empaquetado con rsync en una GUI de Windows. Incluso puede instalarse como un servicio compatible con rsyncd.

Sekenre
fuente
3
+1 No puedo votar esto lo suficiente. DeltaCopy es cómo respaldamos un par de servidores Linux en nuestro servidor de respaldo basado en Windows. Rsync en Ubuntu directamente en el cliente DeltaCopy en Windows.
Matt Everson el
no parece jugar bien con los permisos de seguridad ntfs
JamesRyan
¿Puede extraer archivos mediante SSH, sin rsyncd en la máquina remota de Linux?
Cees Timmerman
1
Cuando rsync se ejecuta sobre ssh, inicia un proceso rsync en el otro lado. No necesita configurar un rsyncd independiente que se ejecute en el control remoto, pero sí debe tenerlo instalado.
Sekenre
DeltaCopy como servidor en Windows, secuencia de comandos cron que ejecuta rsync en un cuadro de Linux y rsnaphot para lograr copias de seguridad de "Time Machine". No tiene precio.
Pop
11

En mi opinión, porque no hay una GUI decente.

Otro argumento puede ser que hay robocopy. A Robocopy le faltan muchas características interesantes que ofrece rsync, pero en la mayoría de las situaciones, robocopy es suficiente para el trabajo en cuestión.

Ludwig Weinzierl
fuente
44
robocopy no hace nada para optimizar las copias remotas, que es la principal innovación de rsync. Yo diría que no tener una interfaz gráfica de usuario de click-puntiaguda es la única excusa para no intentarlo
Javier
2
En el mundo de Windows, trabajar con archivos "remotos" a menudo implica compartir el disco remoto y luego realizar operaciones de archivos "locales". Y para eso robocopy es suficiente.
9

Yo uso el Cygwin rsync ampliamente y funciona muy bien.

Pero ...

Es un bugger para instalar y configurar. Debe realizar una instalación completa de Cygwin solo para obtener un binario y tres dlls, y no es obvio qué tres dlls son necesarios. Cómo ejecutarlo como un servicio no es obvio y la sintaxis de la línea de comandos es compleja. A los no nerds les gusta rendirse muy rápido.

También desordena los permisos hasta el punto en que siempre configuro cygwin = nontsec, y se cuelga regularmente. Entiendo que el bloqueo es un problema conocido con Cygwin dll en lugar de rsync en sí (lo cual no es una crítica a los chicos de Cygwin. ¡Lo que han logrado es poco menos que milagroso!).

Rsync es extremadamente útil si realiza algún tipo de replicación a través de enlaces WAN, y está en mi lista de tareas pendientes para escribir una versión nativa de Win32. Lamentablemente, ha estado en mi lista de tareas por varios años y no está más cerca de la cima. No creo que solo escribir un contenedor GUI sea un gran paso adelante, ya que no aborda algunos de los problemas fundamentales con la versión Cygwin.

Si alguien está interesado, http://www.ratsauce.co.uk/notablog/UsingRsync.asp describe los resultados de mis muchas horas de dolor haciendo que Cygwin rsync funcione en Windows.

JR

John Rennie
fuente
Amen a eso, aunque se instaló y funcionó bien en mi sistema XP, a Vista no le gustó en absoluto. Rsync es el negocio, si hubiera un puerto nativo para Windows, estoy seguro de que se usaría mucho más.
gbjbaanb 03 de
La instalación de Git para Windows proporciona bash y CygWin configurados listos para usar. Incluso puede seleccionar una integración de comandos de Unix para CMD. Voila, me olvido de usar PowerShell o CMD)
it3xl
8

Yo diría que para sincronizaciones de computadora a computadora más pequeñas, las personas usan Robocopy , SyncToy o Foldershare (ahora Live Sync). Para los escenarios de uso compartido de archivos multimaster distribuidos de gran empresa, están utilizando el Sistema de archivos distribuido (DFS) . Esas herramientas manejan bien la mayoría de los escenarios de sincronización, dejando muy pocos beneficios para instalar, aprender y usar una aplicación * nix recompilada en Windows.

Sean Earp
fuente
7

¿Cuál sería su promedio de usuario de Windows utilizarlo para ?

jalf
fuente
3
+1 por ser cierto: la copia de seguridad del usuario de Windows es principalmente "arrastrarla y
soltarla en
17
Raramente marco las respuestas hacia abajo, y no voy a marcarlas, pero ¿desde cuándo ServerFault ha sido un foro para usuarios promedio de Windows? Para el administrador del sistema, la replicación externa se está volviendo cada vez más importante. Las grandes compañías probablemente solo comprarán DPM para usar sobre sus conexiones T3. Los tipos más humildes necesitamos algo que funcione a la velocidad de carga ADSL, y rsync lo hace muy bien.
John Rennie el
3
@John: sí, pero las personas no van a usar rsync a menos que sepan que existe. rsync se ha utilizado y es útil para usuarios "típicos" * nix durante años, por lo que cualquier * nix sysadmin que valga la pena lo sabe. En Windows No tanto. Windows es (y probablemente lo más importante, estaba dirigido a un público diferente, uno que no tenía interés en herramientas como esta, ni las usaba). Y dado que los administradores de sistemas de Windows generalmente comienzan como usuarios de Windows , las herramientas que usan están influenciadas por qué herramientas ventanas usuarios . usan va a mezclar dos preocupaciones diferentes ( por qué no es popular, vs será útil )
JALF
Acabo de responder a la primera, no estoy negando que sería útil
jalf
Sí, pero hay muchos servidores de Windwos que también necesitan una copia de seguridad.
kiltek
4

OMI:

Es mucho menos probable que rsync se instale en máquinas que se encuentran en el mundo de Windows, mientras que el Kit de recursos con robocopy a menudo se instala (o al menos está en una lista "aprobada" de software que se puede instalar en un sistema de producción).

Como otros han señalado, la robocopia generalmente es más que adecuada para la piel del gato que tenga a mano. Puede que no sea tan bueno como rsync pero es una buena herramienta.

La falta de GUI puede ser un factor, pero a pesar de que hay un front-end disponible para robocopy, creo que la mayoría de las personas descubren los interruptores robocopy necesarios y los pegan en un archivo .bat.

damorg
fuente
Con Windows 2008 (y hasta supongo), la robocopia viene incluida con el sistema operativo, por lo que ya no es necesario instalarla.
mrdenny el
No me di cuenta de esto. Gracias por la información ... estamos al menos a un año de distancia de 2008 en nuestro entorno y no he seguido el ritmo desde que me mudé de la administración de AD.
damorg 02 de
Robocopy también se instala de forma predeterminada en Vista y Windows 7, y posiblemente también en sus contrapartes de PE.
Oskar Duveborn 03 de
Robocopy no transferirá solo las partes CAMBIADAS de los archivos, por lo que los archivos grandes con pequeños cambios se copian muy lentamente en comparación con lo que hace rsync.
JustinP
4

Utilizo robocopy en Windows, que viene preinstalado en Windows Vista y Windows 7, y está a la altura de cualquier situación de copia de seguridad que haya encontrado hasta ahora.

Sam
fuente
2

Supongo que simplemente no tiene una GUI. Para tareas de sincronización fáciles, Microsoft incluso ofrece Sync Toy, y rsync podría hacer mucho más ...

hermano azul
fuente
En realidad, hay una GUI para ello: sepiola.org/en/home Hablé con los desarrolladores de Sepiola una vez y me dijeron que acababan de hacer una GUI alrededor de rsync.
2
Desestimé esto porque sugiere que los administradores de sistemas de Windows se pierden sin una GUI. Lo cual no es realmente cierto; la mayoría de los buenos administradores están bien con las utilidades de línea de comandos.
quux
2

Por lo que es, hay un rsync perfectamente funcional para Windows que no necesita instalación de Cygwin. Lo he estado usando para hacer copias de seguridad de diferentes partes de mis datos en diferentes unidades. Es útil excluir directorios particulares, pero probablemente otras utilidades también lo hagan.

Néstor

Néstor
fuente
Todavía usa Cygwin, lo que significa que dll podría meterse con otras aplicaciones que podrían usar Cygwin. En general, es mejor instalar Cygwin en estos casos.
dlamblin
2

Oh, chicos, obviamente os habéis perdido la utilidad "Unison". He estado apoyando algunas de las principales infraestructuras "en tiempo real" de EE. UU. / EUR y tengo que decir que todos tienen problemas muy similares ... cómo replicarse y poder estar activo-activo todo el tiempo ... si no le importa sobre la persistencia de la sesión, entonces esta cosa es la bomba ... lo mejor que he encontrado en Solaris extras :-)

dounoit
fuente
0

Creo que rsync se puede usar con Cygwin en Windows World :) Cygwin es fácil de instalar y usar, sin embargo, para los usuarios comunes que aman las GUI, no es muy común. entonces obtenemos dos barreras:

1) falta de interfaz gráfica de usuario

2) incluso si hubiera una interfaz gráfica de usuario en tcl / tk, por ejemplo, la necesidad de instalar cygwin es una barrera.

y rsync no es un software patentado que quiere venderse solo y, por lo tanto, lucha por eliminar las barreras ante posibles clientes. Como Joel dice: eliminar una barrera duplica su base de usuarios. Entonces, aquí tenemos barreras para los usuarios de Windows, como consecuencia, una pequeña base de usuarios en la plataforma Windows.

usuario11722
fuente
0

Yo uso robocopy para el comportamiento de rsync en Windows.

Básicamente, escribí un archivo backup.bat que tengo en un disco externo. Regularmente ejecuto el archivo para hacer una copia de seguridad de mis escritorios en la unidad externa. Luego guardo el disco externo en una caja fuerte a prueba de fuego.

Scott
fuente
0

Exactamente la misma razón tary bzip2son desconocidos. No encaja bien en Windows. comprimir un directorio y trasladarlo a través de SMB encaja mejor en Windows, y parece casi tan rápido en numerosos casos. Ese no es realmente mi sueño para un mundo mejor, pero es una realidad con la que lidiar. La mayoría de las máquinas con Windows no tienen ninguna capa de Unix instalada. A diferencia de Mac OS X.

dlamblin
fuente
0

Hay algunas nuevas rsync guis en desarrollo. Uno que encontré recientemente a través de wikipedia es yintersync . Se ve bastante completo como una interfaz gráfica de usuario para rsync en Windows y, de forma bastante clara, también admite instantáneas para replicar archivos en vivo.

Recientemente he probado esto en mi sistema dr de trabajo con buenos resultados. Tiene un programador incorporado y reportes por correo electrónico. Esto puede ayudar a rsync a captar finalmente a la multitud de Windows

Geoff Goat
fuente
0

La falta de gui no es realmente un problema. xacls, robocopy, net, sc son muy útiles y no tienen ninguna interfaz gráfica de usuario. Creo que si no se usa rsync, se debe más al hecho de que:

  1. Windows carece de un shell real y un lenguaje de script real. Y las personas que usan lotes también usan robocopy.
  2. Desde 95, Windows viene con una herramienta gráfica fácil de usar (llamada "documento Porte" en la versión francesa). Desde Windows 2000 (o XP?), Hay un menú "sincronizar" en el explorador.
Benoit
fuente
La definición de "real" es? ^^
Oskar Duveborn 03 de
Un shell real permite personalizar más que el indicador, el tamaño de las ventanas o el mosaico. Ofrece la capacidad de realizar todas las tareas que desee (administrar cuentas de usuario, ajustar la configuración del sistema, ...). Un lenguaje de secuencias de comandos real permite definir el entorno (¿Alguna vez ha intentado utilizar el comando "fecha" en un entorno de varios países?) Y puede utilizarse en un mensaje interactivo (a diferencia de vbs / js).
Benoit el
PowerShell satisface todos sus requisitos y ha sido parte de Windows desde 2006. Se integra con .NET, por lo que en algunos casos prefiero Bash.
James