Почему rsync не завоевал популярность в мире Windows? [закрыто]


97

Похоже, что rsync является стандартом де-факто для эффективного резервного копирования и синхронизации файлов в Unix / Linux.

У кого-нибудь есть мысли о том, почему это не могло бы завоевать популярность в мире Windows?

Почему он не стал универсальным «протоколом» для синхронизации файлов?


4
Это потому, что там нет приличного порта, и потому, что люди Windows привыкли к нему просто работает. Существующие не совсем порты - это большая PITA.
RomanSt

1
Windows уже обеспечивает дельта-синхронизацию через DFS и RDC, которую можно централизованно управлять, массово развертывать, настраивать и т. Д.
Panagiotis Kanavos,

@ p.campbell, есть cwrsync для windows
Pacerier

Ответы:


48

Я бы сказал, в основном потому, что люди в окнах не знают об этом. Rsync - это утилита командной строки, которая согласуется с философией Unix, предусматривающей множество предустановленных небольших инструментов. Философия Windows основана на приложениях с графическим интерфейсом, которые загружаются и устанавливаются отдельно. Не существует гладкой точки интеграции, где rsync был бы очевиден или имел бы смысл, а запуск команд в системе Windows в лучшем случае утомителен.

Кроме того, rsync действительно великолепен, когда он является частью более крупного приложения (скажем, для консолидации и анализа журналов), или как автоматизированная архивная система (легко реализуемая с помощью cronjob). Windows просто не имеет других инструментов в своей экосистеме, чтобы сделать использование rsync действительно жизнеспособным.

Наконец, я бы сказал, что rsync слишком чертовски сложен. У любого, кого я знаю, кто регулярно использует его, есть заранее установленная группа флагов (у меня -avuz), которая обычно делает то, что они хотят, но на страницах man / документации перечисляются десятки переключателей командной строки, некоторые из которых объединяют другие переключатели. Например (из [man-страницы] [1]):

-a, --archive : режим архива; равно -rlptgoD (нет -H, -A, -X)

Это быстрый способ сказать, что вы хотите рекурсию и хотите сохранить почти все (при этом -H - заметное упущение). Единственное исключение из вышеприведенной эквивалентности - это когда указывается --files-from, в этом случае -r не подразумевается.

Пользователи Windows, как правило, ожидают, что окна и меню, и что одно приложение должно быть решением «все в одном», а не просто самостоятельной частью цепочки инструментов.


11
Я полностью с тобой согласен ! Страницы руководства - худший способ понять rsync и многие другие приложения.
Антуан Бенкемун

2
На самом деле, все наоборот. Люди UNIX / Linux не знают, что Windows предоставляет DFS и RDC, по крайней мере, с 2006 года. Его легко настроить, управлять, развертывать на целых доменах (т. Е. На сотнях или тысячах рабочих столов с десятками или сотнями клиентов).
Панагиотис Канавос

3
@PanagiotisKanavos За исключением того, что DFS отличается от rsync. NFS (или ряд других протоколов) доступны в ОС на базе Linux, но rsync обычно используется для поэтапного резервного копирования, разовых передач и т. Д. Яблоки и апельсины.
Андрей Белый

5
@Pacerier: «Командная строка - это командная строка»? Вы либо крайне терпимы, либо знаете только одного, а не других. Для любого нормального человека, который знает Bash в Linux / Mac (или любой другой оболочке Unix), cmd.exe настолько поврежден, что сказать, что он «в лучшем случае утомителен», все еще преуменьшение.
mivk

2
«И запуск команд в системе Windows в лучшем случае утомителен». - либо вы мало что сделали, ни разу не слышали о Powershell, фанатеях по Linux или обо всем вышеперечисленном. Это ничем не отличается от того, как это делается в Linux в наши дни.
Алан Б

63

Я удивлен , что никто не упомянул DeltaCopy , который rsync упакован в Windows GUI. Он даже может установить себя как rsyncd-совместимый сервис.


3
+1 Я не могу высказать это достаточно. DeltaCopy - это способ резервного копирования нескольких серверов linux на наш сервер резервного копирования на базе Windows. Rsync в Ubuntu прямо в клиент DeltaCopy в Windows.
Мэтт Эверсон

похоже, что это не очень хорошо с разрешениями безопасности ntfs
JamesRyan

Может ли это тянуть файлы через SSH, без rsyncd на удаленной машине с Linux?
Сис Тиммерман

1
Когда rsync запускается через ssh, он запускает процесс rsync на другой стороне. Вам не нужно настраивать автономный rsyncd, работающий на удаленном компьютере, но вам нужно его установить.
Sekenre

DeltaCopy в качестве сервера для Windows, cron-скрипт, выполняющий rsync для linux box и rsnaphot для создания резервных копий «Time Machine». Бесценный.
MGP

11

На мой взгляд, потому что нет достойного GUI.

Другим аргументом может быть то, что есть робокопия. В Robocopy отсутствуют многие интересные функции, которые предлагает rsync, но в большинстве случаев robocopy просто достаточно для работы под рукой.


4
robocopy ничего не делает для оптимизации удаленных копий, что является основным нововведением rsync. я бы сказал, что отсутствие защелкивающегося графического интерфейса - единственное оправдание тому, что я его не пробовал
Хавьер

2
В мире Windows работа с «удаленными» файлами часто предполагает совместное использование удаленного диска, а затем выполнение «локальных» файловых операций. И для этого достаточно робокопии.

9

Я широко использую Cygwin rsync, и он работает очень хорошо.

Но ...

Это ошибка для установки и настройки. Вы должны выполнить полную установку Cygwin только для того, чтобы получить один двоичный файл и три библиотеки DLL, и неясно, какие три библиотеки DLL необходимы. Как запустить его как сервис, не очевидно, а синтаксис командной строки сложен. Нердики любят сдаваться очень быстро.

Также он портит права доступа до точки, где я всегда устанавливаю cygwin = nontsec, и он регулярно зависает. Я понимаю, что зависание - это известная проблема с Cygwin dll, а не с самим rsync (что не является критикой парней Cygwin. То, чего они достигли, мало чем удивительно!).

Rsync чрезвычайно полезен, если вы выполняете какую-либо репликацию по каналам глобальной сети, и я в своем списке задач написать собственную версию Win32. К сожалению, это было в моем списке задач в течение нескольких лет и не ближе к вершине. Я не думаю, что написание оболочки с графическим интерфейсом является большим шагом вперед, поскольку не решает некоторые фундаментальные проблемы с версией Cygwin.

Если кому-то интересно, http://www.ratsauce.co.uk/notablog/UsingRsync.asp описывает результаты моих многих часов мучительных попыток заставить Cygwin rsync работать на Windows.

JR


Кстати, несмотря на то, что на моей системе XP она отлично работала и работала, Vista не нравилась вообще. Rsync - это бизнес, если бы у него был собственный порт для Windows, я уверен, что он будет использоваться гораздо чаще.
gbjbaanb

Установка Git для Windows выдает настроенные bash и CygWin из коробки. Вы даже можете выбрать интеграцию Unix-команд с CMD. Вуаля, я забываю использовать PowerShell или CMD)
it3xl

8

Я бы сказал, что для синхронизации между компьютерами люди используют Robocopy , SyncToy или Foldershare (теперь Live Sync). Для сценариев общего доступа к файлам с распределенным мультимастерингом крупных предприятий они используют распределенную файловую систему (DFS) . Эти инструменты прекрасно справляются с большинством сценариев синхронизации, оставляя очень мало преимуществ для установки, обучения и использования перекомпилированного приложения * nix в Windows.


7

Что бы ваш средний пользователь Windows , использовать его для ?


3
+1 за правдивость - резервная копия пользователя Windows в основном «перетаскивает его на отдельный / внешний
жесткий

17
Я редко отмечаю ответы вниз, и я не собираюсь отмечать их, но с каких пор ServerFault стал форумом для обычных пользователей Windows? Для системного администратора репликация вне площадки становится все более важной. Крупные компании, вероятно, просто купят DPM для использования через свои соединения T3. Нам, скромным типам, нужно что-то, что будет работать со скоростью загрузки ADSL, и rsync делает это очень хорошо.
Джон Ренни

3
@Джон: да, но люди не собираются использовать rsync, если они не знают, что он существует. rsync использовался и был полезен для "типичных" * пользователей nix целую вечность, и поэтому любой * системный администратор nix, достойный его внимания, знает об этом. На винде? Не так много. Windows (и, возможно, что более важно, была нацелена на другую аудиторию, которая не интересовалась такими инструментами или не использовала их). А поскольку системные администраторы Windows обычно начинаются как пользователи Windows , на используемые ими инструменты влияют то, какие инструменты Пользователи Windows используют. Вы смешиваете две разные проблемы ( почему это не популярно, против того, чтобы это было полезно )
jalf

Я только что ответил на первое, я не
отрицаю,

Да, но есть много серверов Windwos, которые также необходимо резервировать.
килтек

4

IMO:

rsync гораздо реже устанавливается на компьютерах, с которыми можно встретиться в мире Windows, в то время как часто устанавливается Resource Kit с robocopy (или, по крайней мере, он входит в «утвержденный» список программного обеспечения, которое можно установить в производственной системе).

Как уже отмечали другие, робокопия, как правило, более чем адекватна коже, какой бы кошка не была под рукой. Это может быть не так хорошо, как rsync, но это хороший инструмент.

Нехватка графического интерфейса может быть фактором, но даже несмотря на то, что для robocopy доступен внешний интерфейс, я обнаружил, что большинство людей выясняют необходимые переключатели robocopy и помещают его в файл .bat.


В Windows 2008 (и, я полагаю, выше) robocopy входит в комплект ОС, поэтому больше не нужно его устанавливать.
Мрденный

Я этого не осознавал. Спасибо за информацию ... мы по крайней мере на год отошли от 2008 года в нашей среде, и я не успеваю с тех пор, как ушел из администрирования AD
Даморг

Robocopy устанавливается по умолчанию в Vista и Windows 7, а также, возможно, в их PE-компонентах.
Оскар Дюверборн

Robocopy не будет передавать только ИЗМЕНЕННЫЕ части файлов, поэтому большие файлы с небольшими изменениями копируются очень медленно по сравнению с тем, что делает rsync.
JustinP

4

Я использую robocopy в Windows - который предустановлен в Windows Vista и Windows 7 и подходит для любой ситуации резервного копирования, с которой я столкнулся до сих пор.


2

Я думаю, что он просто не имеет графического интерфейса. Для простых задач синхронизации Microsoft даже предлагает Sync Toy, и rsync может сделать гораздо больше ...


На самом деле для этого есть графический интерфейс: sepiola.org/en/home Я однажды говорил с разработчиками Sepiola, и они сказали мне, что они только что создали графический интерфейс для rsync.

2
Я понизил это, потому что это предполагает, что системные администраторы Windows теряются без графического интерфейса. Что не совсем верно; большинство хороших администраторов хорошо работают с утилитами командной строки.
Quux

2

Для этого существует прекрасно работающая система rsync для Windows , которая не требует установки Cygwin. Я использую его для резервного копирования различных частей моих данных на разные диски. Полезно исключить определенные каталоги, но, вероятно, это делают и другие утилиты.

Нестор


Он по-прежнему использует Cygwin, что означает, что он может связываться с другими приложениями, которые могут использовать Cygwin. Обычно лучше просто установить Cygwin в этих случаях.
Дламблин

2

О, ребята, вы, ребята, очевидно, скучали по утилите "Унисон". Я поддерживаю некоторые основные инфраструктуры США / EUR в режиме реального времени, и я должен сказать, что у всех очень похожие проблемы ... как размножаться и иметь возможность быть активными постоянно ... если вам все равно о продолжительности сеанса, то это бомба ... лучшее, что я нашел в дополнениях соляриса :-)


2

Самым простым в использовании / установке rsync-приложения с графическим интерфейсом, которое я нашел для Windows, была grSync .

( Снимки экрана: http://www.opbyte.it/grsync/screenshot.html ).

Если бы это было более популярно, возможно, Rsync будет использоваться больше.


0

Я верю, что rsync можно использовать под Cygwin в Windows World :) Cygwin прост в установке и использовании, однако для обычных пользователей, которые любят GUI, это не очень распространено. Таким образом, мы получаем два барьера:

1) отсутствие графического интерфейса

2) даже если в tcl / tk был, например, внешний интерфейс с графическим интерфейсом - необходимость установки cygwin является барьером.

и rsync не является проприетарным программным обеспечением, которое хочет продавать себя и, следовательно, изо всех сил пытается устранить барьеры перед потенциальными клиентами. Как говорит Джоэл: устранение одного барьера удваивает вашу пользовательскую базу. Так что здесь у нас есть барьеры для пользователей Windows - как следствие, небольшая база пользователей на платформе Windows.


0

Я использую robocopy для rsync-подобного поведения в Windows.

По сути, я написал файл backup.bat, который у меня есть на внешнем диске. Я регулярно запускаю файл для резервного копирования своих рабочих столов на внешний диск. Затем я храню внешний диск в несгораемом сейфе.



0

Точно такая же причина tarи bzip2неслыханно. Это очень плохо вписывается в Windows. архивирование каталога и перенос его по SMB лучше вписывается в Windows и во многих случаях кажется почти таким же быстрым. Это не совсем моя мечта о лучшем мире, но это реальность, с которой приходится бороться. На большинстве машин Windows не установлен слой Unix. В отличие от Mac OS X.


0

В разработке есть несколько новых rsync. Одна из тех, с которыми я недавно столкнулся в Википедии, - это yintersync . Он выглядит довольно всеобъемлющим, как графический интерфейс для rsync в Windows, и довольно аккуратно также поддерживает теневые копии для репликации живых файлов.

Я недавно проверил это на моей системе работы с хорошими результатами. Он имеет встроенный планировщик и отчеты по электронной почте. Это может помочь rsync наконец подцепить толпу Windows


0

Отсутствие графического интерфейса на самом деле не проблема. xacls, robocopy, net, sc очень полезны и не имеют графического интерфейса. Я считаю, что если rsync не используется, это связано с тем, что:

  1. В Windows отсутствует настоящая оболочка и настоящий язык сценариев. И люди, которые используют партию, также используют робокопию.
  2. Начиная с 95 года, Windows поставляется с простым в использовании графическим инструментом (по-французски называется «Документ Porte»). Начиная с Windows 2000 (или XP?), В проводнике есть меню «синхронизация».

Определение "настоящий" есть? ^^
Оскар Дюверборн

Настоящая оболочка позволяет настраивать больше, чем подсказку, размер окна или плитку. Он предлагает возможность выполнять любые задачи, которые вы хотите (управление учетными записями пользователей, настройка конфигурации системы, ...). Настоящий язык сценариев позволяет определять среду (пытались ли вы когда-нибудь использовать команду date в среде нескольких стран?) И может использоваться в интерактивном режиме (в отличие от vbs / js).
Бенуа

PowerShell удовлетворяет всем вашим требованиям и является частью Windows с 2006 года. Он интегрируется с .NET, поэтому в некоторых случаях я предпочитаю его Bash.
Джеймс
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.