Как синхронизировать два диска на компьютере. Удобная синхронизация файлов

Долго пробовал и работал с разными программами. Требовалось для синхронизации данных с компов и внешних жестких. Сначала в ручном варианте, по мере работы задача усложнялась, как и увеличивалось количество синхронизируемых папок и файлов и способов синхронизации. С чего начинал и до чего дошел:
1). Microsoft SyncToy 2.1.
"+" - бесплатная, простая, довольно удобная
"-" - несколько раз скидывалась и начинала синхронизировать не что нужно и не в том направлении (очевидно было связано с тем, что увеличивалось количество и объем синхронизируемой информации). В очередной раз, после подобного глюка, долго читал, искал и в итоге остановил свой выбор на самописных программах
2) самый простой вариант xStarter - кстати позволяет делать много чего и опять же из написанных действий / скриптов и т.д. собрать собственно сразу же exe файл, который можно при желании сделать и службой. Однако намучившись с переписыванием, допиливанием и прочим (у меня просто много "планов" синхронизации направлений и мест получения и т.д.) перешел на Allway Sync.
Кстати dropbox и т.д. не подходили по причине - не люблю большого брата и параною в себе
3) Allway Sync.
"+" - Все хорошо, удобно и т.д. Что особенно понравилось это синхронизации между одним источником и несколькими местами "получения". Работает как часы, НО
"-" - Не работает (по крайней мере когда я с ней работал) по потокам, а вернее по одному потоку по очереди, то бишь есть, например, несколько заданий: синхронизировать несколько разных, не связанных папок с жесткого диска на компе на внешний жесткий, и в итоге она запускает все это параллельно, в итоге если б все было в один поток, то закончилось бы все намного быстрее, так же это привело к катастрофическим результатам, из-за которых потом пришлось отказаться от нее, об этом будет написано далее; пару раз глюкнула, но это было не критично, критично станет когда объем будет большой. И в итоге когда я дошел до того, что в одной из папок стало под 150,000 файлов и с объем папки не маленький, то Allway Sync просто не выдерживал, когда запускал в автоматическом режиме при подключении жёсткого диска синхронизацию. Пришлось задания запускать вручную и по очереди. Жутко не нравилось но терпел ровно того момента, пока он не перестал синхронизировать просто одну папку. В итоге перешел к GoodSync.
4) GoodSync. Долго не мог привыкнуть к нему, который казался после Allway Sync (который был понятен на интуитивном уровне) жутко не удобным, не информативным и т.д. Привыкание шло долго, и не всегда удачно. Не нравилось, что только одни источник и одно место-получатель. В Allway Sync былы разнонаправленные "многоконечные" задания, тут же пришлось дробить / дублировать задания. Из сразу замеченных плюсов понравилось то, что теперь все задания выполнялись по очереди. Долго не мог найти (если не через мастер делать задания) привязку к конкретному внешнему жесткому диску. По некоторым настройкам нет нормального описания, и не всегда понятно что делают. Некоторые вещи беспокоят до сих пор, но ровно из-за того, что похоже пока сам не настроил, но времени на тесты терять не охота, и они абсолютно не критичные. Так же удобная вещь для копирования большого количества данных, когда синхронизация была не нужна или не применялась, а скопировать надо быстро и данные почти одинаковые. Со временем очень привык и стал нравится, ошибок не допускает, количество файлов обрабатывает без проблем и пока еще не ошибался (уже пару лет), есть возможность "быстрого" анализа, сверка md5,копирование атрибутов и т.д. В общем мой выбор - GoodSync

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

Нажмите, чтобы раскрыть...

1) Вопрос - может быть срабатывает фильтр? Он есть в общих настройках программы (общий для всех) и так же есть в каждом задании отдельно свой.
2) Так же при сравнении, если есть антивирус, он так же блокирует файлы, если считает, что с вирусом или подозрительный
3) Поставь настройку "Копировать заблокированные файлы"
У меня никаких проблем с синхронизацией с использованием GoodSync ни разу не было. Но вот с настройками поразбираться пришлось. Кстати по этой программе есть довольно вменяемый мануал с FAQ. И чем замечал, что он часть данных не синхронизировал? И попробуй еще включи md5. Будет ощутимо дольше, но зато проверишь и плюс этот способ надежней. По крайней мере я думаю встречал такое - что открываешь фотографию, а она открывается только на половину, т.к. "протухла". От этого при синхронизации по крайней мере обезопасишься. А то у нас был случай - бэкапился архив базы данных, а в итоге файл оказался битый (т.к. просто копировался, вернее записался, неправильно)

После статьи о исключительно ручном методе синхронизации папок посыпались просьбы найти и описать «ленивое» решение этого вопроса. Держите — бесплатная программа для автоматической синхронизации папок под названием Allway Sync .

Зачем нужна синхронизация папок

Этим вопросом меня удивили некоторые пользователи в комментариях и почте — отвечаю им. Она может понадобиться…

  • если хотите подстраховаться после переноса какой-либо системной папки или временных данных на другой диск
  • если не хватило времени закончить какой-то проект на работе/дома (пришли домой/на работу, воткнули флешку и работаете уже с автоматически обновлёнными данными)
  • если нужно хранить резервную копию важных данных на внешнем носителе информации (жёсткий диск, ssd-накопитель , флешка…)
  • если нужно быстро и без потерь обеспечить обмен данными между несколькими компьютерами
  • для облегчения и ускорения ручного копирования данных между папками и дисками

Автоматическая синхронизация папок

Программа Allway Sync, как уверяют нас сами производители, «использует инновационные алгоритмы синхронизации Ваших данных между настольными ПК, ноутбуками, USB-накопителями, удаленными серверами FTP/SFTP и WebDAV, различными онлайн-хранилищами данных и т. д. Поддерживаются сжатие данных и шифрование. Она сочетает в себе пуленепробиваемую надежность с чрезвычайно простым интерфейсом.»

Что же, заинтриговать нас у них получилось, правда? Давайте проверим их заявление на практике.

Установка Allway Sync

Ничего страшного или запутанного в ней нет. Только два нюанса — НЕ снимайте галку на установку специальной службы (нужна для автоматического отслеживания изменений в папках)…

…а также определитесь — нужен ли Вам ярлык на рабочем столе и для всех ли пользователей Вашего компьютера Вы устанавливаете программу…



Настройка Allway Sync и работа в ней

Сразу после установки программы нужно научить её своему языку…

Остальные настройки программы покажу по мере её испытания. Итак, по умолчанию у нас уже есть какая-то задача под названием «New Job 1» — кликаем по вкладке правой кнопкой мыши и создаём свою личную новую задачу…

После этого можно таким же образом переименовать или удалить какую-либо задачу. С этим разобрались — идём дальше и указываем папки для синхронизации…

…определяемся с направлением синхронизации (ссылка «Изменить» между стрелками в середине)…

(по умолчанию стоит общая синхронизация)

Если у Вас, как и у меня в данном случае, вторая папка живёт на флешке — рекомендую нажать кнопочку «Настроить…» и установить галочку для привязки программы к характеристикам накопителя…

Как видите — всё грамотно и понятно нам поясняют буквально на каждом шагу в этой чудной программе.

Первичная ручная синхронизация

Жму кнопку «Анализировать», читаю предупреждение и игнорирую его…

…после чего, наконец-то, синхронизирую папки…

Открыв во вкладках проводника сразу обе подопытных папки, проверил результат работы программы Allway Sync — всё чётко и без ошибок (сколько в одной папке файлов, столько и во второй).

Всё это хорошо, но это была обычная ручная синхронизация — где же автоматическая? Рассказываю.

Автоматическая синхронизация данных

Заходим в настройки нашей задачи, в которые можно попасть несколькими путями…

  • пункт «Вид» в меню программы и «Настройки…»
  • правой кнопкой мыши по вкладке задачи и в контекстном меню пункт «Свойства»
  • в английской раскладке клавиатуры нажмите «горячие» клавиши Ctrl+O (последовательно, без плюса)

(кстати, тут и автозапуск программы можно включить)

…в самом низу списка настроек, что слева в окне, ищем свою задачу и переходим в «Автоматическая синхронизация»…

…а уж тут настраиваете её под себя любимого, как угодно — при подключении накопителя к компьютеру, через определённый промежуток времени, при запуске приложения, перед выходом…

Разнообразие условий автоматической синхронизации папок в этой программе просто поражает — авторы предугадали большинство желаний пользователей.

Выставил первое условие («При подключении съёмного устройства») и вытащив флешку из ноутбука удалил три фотографии в тестовой папке. После подключения накопителя к компьютеру — данные автоматически моментально синхронизировались…

…и три фотки испарились из папки на флешке — что и требовалось от программы автоматической синхронизации.

Между прочим, если вдруг запутались в направлениях синхронизации и случайно «потеряли» нужные файлы, то не огорчайтесь — их можно вернуть…

Синхронизация файлов – это процесс, в результате которого две или более папок содержат . При добавлении, удалении или изменении какого-либо файла в одной папке, при синхронизации он будет добавлен, удален или изменен во всех остальных папках.

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

Фактическим результатом синхронизации файлов является синхронизация одной и той же версии файла с наиболее свежей датой его создания или изменения во всех синхронизируемых папках.

Как синхронизировать файлы и папки?

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

В настоящее время наблюдается бурное развитие облачных сервисов, которые в борьбе за пользователей предоставляют разнообразные дополнительные услуги. В среднем сервисы предлагают до 10 ГБ бесплатного облачного пространства для синхронизации файлов. Данного объема вполне достаточно для хранения наиболее важной информации.

Самыми популярными сервисами хранения данных являются Dropbox, SkyDrive, Яндекс Диск, SugarSync, Облако Mail.ru и Диск Google.
Для того, чтобы синхронизировать все устройства, необходимо установить на каждое их них специальную программу, которую можно скачать на одном из сервисов. Данная программа создаст папку пользователя, в которой будут храниться все документы. Они будут закачиваться в специальное хранилище в интернете, из которого будут доступны пользователю в любой точке мира.

С помощью синхронизации можно обеспечить идентичность файлов на разных устройствах, которые подключены к одному и тому же облачному сервису. Например, при изменениях информации в одном из файлов на сервере, этот файл автоматически обновится на всех компьютерах, подключенных к сервису синхронизации.

Выгоды синхронизации данных

Главная выгода синхронизации – защита данных. Даже при поломке компьютера или утере флэш-карты, документы будут находится в сохранности на сервере.

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

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

Хотя без ложки дегтя конечно же не обошлось. Программа платная, стоит 600 рублей. Бесплатная же версия после 30 дней использования допускает синхронизацию всего лишь 100 файлов и 3 заданий.

Вообще конечно в случае хорошего ПО 600 рублей не жалко. С другой стороны я все-таки попытался найти что-нибудь аналогичное за просто так. 🙂

И нашел. — бесплатное программное обеспечение для синхронизации файлов и каталогов.

Использует инновационные алгоритмы чтобы синхронизовать Ваши данные между персональными компьютерами, ноутбуками, USB флэш драйвами и т. д. Allway Sync соединяет в себе железную надежность и чрезвычайно простой пользовательский интерфейс.

Тут интерфейс не так приятен, да и сам сайт на русский язык переведен довольно скверно. Также программа не умеет синхронизировать данные по FTP, WebDAV или SFTP. Зато нужной функции синхронизацией с USB флешкой она обладает. Делает это не хуже, чем GoodSync и при этом совершенно бесплатно.

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

1. После запуска программы будет создано новое задание. Соотственно надо выбрать папки для синхронизации. В моем случае это "C:\Workfiles" в левой части и "Z:" в правой. Почему именно "Z" расскажу позже.

2. Можно провести ручной анализ и первую синхронизацию, нажав соответствующие кнопки, дабы убедиться, что все корректно работает.

  • При подключении съемного устройства
  • Через определенный промежуток времени

Соответственно синхронизация будет происходить в тот момент, когда вы вставите флешку в компьютер, а также Allway Sync будет постоянно отслеживать файловые изменения каждый раз по прошествии указанного времени со времени последней проверки. Если файлы окажутся разными, то начнется синхронизация.

Есть там и еще несколько вариантов времени синхронизации, выбираете те, что удобны лично вам. На самом деле уже одной включенной опции "При подключении съемного устройства" будет вполне достаточно.

Нажимаем "OK" для сохранения настроек.

4. Чтобы программа загружалась каждый раз при включении компьютера в вверхнем меню выбираем "Вид -> Настройки… -> Приложение" и ставим галочку "Запуск приложения в панели задач при включении компьютера".

Вот настройка и завершена. А мне тут принесли какой-то документ на другой флешке. Так, что тут у нас. Опа! Все мои рабочий сверхсекретные файлы синхронизировались с чужой флешкой!

Чтобы этого не происходило и надо сменить букву диска вашей рабочей флешки. У меня это "Z", хотя диск "Х" тоже неплохо звучит. 🙂

Для смены буквы диска вставьте в компьютер вашу флешку, с которой будет производиться синхронизация. Затем откройте "Пуск -> Панель управления -> Администрирование -> Управление компьютером -> Управление дисками". Найдите там флешку, кликнете правой кнопкой, выберите пункт "Изменить букву диска или путь к диску" и выберите любую букву, но лучше ближе к концу списка.

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

После этого через меню Allway Sync "Файл -> Экспортировать" можно сохранить настройки программы и заданий, чтобы импортировать их на других компьютерах, с которыми требуется синхронизация.

Теперь за важные файлы я не переживаю. Они продублированы 3 раза: на флешке, на домашнем компьютере и на рабочем ноутбуке. К тому же данные синхронизированы и у меня всегда есть актуальная копия. Так что ни потеря флешки, на смерть жетского диска, ни системные сбои мне не страшны! 🙂

Чтение каталога осуществляется по команде get-childitem. Чтобы учитывались вложенные папки, к ней добавляется опция -recurse, а чтобы отличать файлы от папок, используется функция PSIsContainer (). Если она возвращает значение True, то элемент - папка, в ином случае - обычный файл:

$source = ¨c:files¨

$srcfolder = get-childitem $source -recurse | where-object {$_.psiscontainer}

$srcfiles = get-childitem $source -recurse | where-object {!$_.pciscontainer}

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

В первом цикле проверяется, существуют ли в папке для резервного хранения исходные каталоги, и если их еще нет, то они создаются посредством команды new-item.

foreach ($folder in $srcfolders)

$srcpath = $source -replace ¨\¨,¨\¨ -replace ¨:¨,¨:¨

$dstpath = $folder.fullname -replace $srcpath,$destination

if ($dstpath -ne ¨¨) {

if (! (test-path $dstpath))

¨Создание папки ‘$dstpath’.¨

new-item $dstpath -type directory | out-null

Очень похожий цикл выполняется и при сравнении результирующего и исходного списка папок, тем самым создается точная структура вложенных папок. Два других цикла обрабатывают файлы: первый копирует обновленные объекты из исходной в результирующую папку, второй - отсутствующие в исходном каталоге - из итогового. Узнать, обновился ли файл, можно по его хэш-коду. Заметим, что, поскольку файлы открываются в режиме «только чтение», они не блокируются от использования другими программами. Впрочем, по правилам хорошего тона файл по окончании вычисления хэш-кода необходимо закрывать функцией Close ():

$md5 = new-object system.security.cryptography.md5cryptoserviceprovider

$fs = new-object system.io.filestream ($file,$mode,$access)

$hash = $md5.computehash ($fs) # хэш-код файла

$fs.close ()

Затирать более новый файл его старой копией бессмысленно, и потому добавим команды для сравнения дат изменения. При обратном перемещении отсутствующих в исходной папке файлов никаких проверок не требуется, достаточно просто исполнить инструкцию copy-item. Скрипт целиком приводится в листинге - ему передаются пути к исходной и результирующей папкам (не забудьте добавить закрывающие слэши, например c:filessource), а далее всю работу он выполняет самостоятельно и на экран лишь выводит информацию, что именно происходит. Заметим, даже если вы предварительно не создали итоговую папку, то скрипт создаст ее самостоятельно:

if (! (test-path $destination))

new-item $destination -type directory -force | out-null

Итак, этот скрипт поможет скопировать отсутствующие на флэшке фотографии, таблицы, текстовые документы и др., не тратя время на ручное пофайловое сравнение. Чтобы использовать его, на Рабочем столе можно создать несложный BAT-файл, указав в нем команду вида powershell.backup.ps1 c:filessrc d:backup (путь к скрипту обычно требуется приводить целиком). В дальнейшем несложно синхронизировать папки, щелкая на этом пакетном файле. Напомним, что разрешает исполнение неподписанных скриптов команда Set-ExecutionPolicy RemoteSigned, исполненная от имени «Администратора».

Хранить копии важных файлов в совершенно незащищенном виде, пожалуй, не совсем верно с точки зрения безопасности. Система Windows 7, несмотря на все усилия Microsoft, остается уязвимой к вирусам, червям и прочим зловредам. До документов, которые постоянно лежат, по сути, в открытом доступе, они добираются без проблем. К счастью, в операционной системе появилось весьма полезное средство - виртуальные диски, которые монтируются и отключаются на лету. Они подходят и для резервирования каких-либо важных файлов, обращаться к которым может ограниченное число пользователей.

Виртуальный диск представлен в системе как файл формата VHD (Virtual HardDisk), имеющий полную структуру и содержание, сходные с теми, что у жесткого диска. Создается он с помощью встроенной в Windows 7 служебной программы для управления компьютером, которая запускается через модуль compmgmt.msc. В окне этой программы нужно щелкнуть на строке «Управление дисками» и выбрать в меню команду «Действие Создать виртуальный диск». Для нового виртуального диска задается размер, а затем том форматируется. На последнем этапе можно назначить букву диска или привязать VHD-файл к NTFS-папке.

Последний способ интересен тем, что копировать допускается в определенную папку независимо от того, где находится виртуальный том. Отмонтировав виртуальный том в утилите для управления компьютером, можно быть уверенным, что до самой последней копии важных документов ни вирусы, ни любопытные пользователи не доберутся. Сам виртуальный том, т. е. файл с расширением VHD, можно скопировать на резервный носитель. Дополнительная мера безопасности - шифрование виртуального тома, доступное с помощью BitLocker пользователям максимальной и бизнес-версии Windows 7. При подключении такого защищенного тома (а его можно использовать и на других ПК, причем даже там, где BitLocker не установлен) Windows попросит указать логин и пароль.