0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как инкрементно копировать (синхронизировать) папки с Linux на Windows

Как инкрементно копировать (синхронизировать) папки с Linux на Windows?


Во-первых, rsync это утилита использующася только в Linux-системах. Для того, чтобы она работала в windows, её нужно устрановить там и настроить, например через cygwin. Во-вторых, почему вы пытаетесь отправлять файлы на localhost ? Localhost — это внутренний адрес-петля 127.0.0.1. При попытке отправить файлы туда, находясь в linux, вы пытаетесь подключиться с сервера на самого себя, т.е на сам сервер.

Как сделать синхронизацию папки c Linux на Windows?

Для того чтобы отправить файлы в windows c помощью rsync самый лучший способ — это смонтировать файловую систему локального windows-компьютера на сервер через ssh-туннель по smb. Тогда не потребуется устанавливать rsync на сам Windows и это решает проблему с доступом между сервером и домашним компьютером.

Для этого нужно подключаясь к серверу с локального компьютера сделать проброс R-типа. Пробрасывать нужно localhost:445. Затем, нужно чтобы в системе на сервере был установлен пакет cifs-utils. Расшариваете на локальном компьютере нужную папку, затем создаете точку монтирования на сервере, и монтируете туда уже c localhost. Кстати, на нашем сайте есть генератор-скриптов для бэкапов сайта, и в нем реализована генерация такого скрипта.

Пример скрипта для синхронизации папок

Давайте посмотрим на примере такого скрипта подобное копирование:

start /b d:plink.exe -pw rootpassword root@example.com -N -R 445:localhost:445
d:plink.exe -pw rootpassword root@example.com -C «mkdir /tmp/win&&mount -t cifs -o rw,nounix,soft,intr,username=user,password=windowspass //localhost/backup /tmp/win»
d:plink.exe -pw rootpassword root@example.com -C «rsync -a —no-p —no-o —no-o —no-t /var/www/example.com/ /tmp/win && umount /tmp/win&&rmdir /tmp/win»
taskkill /f /im plink.exe

В первой строке запускаем в фоне программу plink.exe (консольный ssh-клиент для Windows). Подключаемся на удаленный сервер example.com и туннелируем порт 445 с локальной машины на lo-интерфейс сервера. После подключения по ssh сервер будет «думать», что у него на localhost:445 есть windows-шара или запущен smb, сервер.

start /b d:plink.exe -pw rootpassword root@example.com -N -R 445:localhost:445

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

d:plink.exe -pw rootpassword root@example.com -C «mkdir /tmp/win&&mount -t cifs -o rw,nounix,soft,intr,username=user,password=windowspass //localhost/backup /tmp/win»

Ну и здесь мы выполняем непосредственно синхронизацию папки сайта в эту папку. Все файлы отправляются на локальный компьютер, за это отвечает монтирование шары и туннель. Команде rsync передаем опции не сохранять атрибуты файлов — владельца и права, поскольку windows всё равно ничего не знает о таких атрибутах и не умеет с ними работать. По окончании синхронизации отмонтируем локальную шару от сервера.

d:plink.exe -pw rootpassword root@example.com -C «rsync -a —no-p —no-o —no-o —no-t /var/www/example.com/ /tmp/win && umount /tmp/win&&rmdir /tmp/win»

Здесь мы «убиваем» SSH-cессию, запущенную в фоне в самом начале.

taskkill /f /im plink.exe

Если вы поймете как это работает, то сможете аналогично использовать это на своих серверах. Или просто сделайте скрипт через наш сервис (вкладка rsync для бэкапа файлов) со своими данными и запустите его. Перед этим установите cifs-utils на сервер.

Admin

IT-cпециалист с высшим техническим образованием и 8-летним опытом системного администрирования. Подробней об авторе и контакты. Даю бесплатные консультации по информационным технологиям, работе компьютеров и других устройств, программ, сервисов и сайтов в интернете. Если вы не нашли нужную информацию, то задайте свой вопрос!

Читайте так же:
Драйвера для синхронизации highscreen

как синхронизировать папки между сервером node.js и приложением node.js

Клиентское приложение node.js должно синхронизировать папку с удаленным сервером node.js. Оба работают на windows. Синхронизация должна быть только односторонней, от сервера к клиенту, и какой-то способ узнать, когда она будет завершена, был бы хорош. Пропускная способность не является ключевым фактором, весь файл может быть повторно загружен, если есть частичное изменение. Что касается частоты, то, например, 15-минутные попытки пакетного обновления будут в порядке вещей.

Какой подход или библиотека были бы предпочтительнее сказать, передавая xml представления содержимого папки и загружая каждый измененный файл?

2 ответа

  • SharedObject в node.js между сервером и клиентами

В принципе, мне нужно sharedObject в node.js. При работе с сервером flash media, таким как red5 и клиент flash, вы можете изначально использовать sharedObject, который уведомляет подключенный клиент(ы) об обновлении через syncevents, на стороне клиента вы можете подключиться к sharedobjects и.

Существует ли какой-либо способ обмена данными (включая объекты) между клиентом и сервером в node.js? Раньше я полагался на модуль под названием now.js, который был разработан для этой цели , но проект был прекращен , и я пытаюсь найти замену. Есть ли какой-либо другой способ плавно.

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

Клиент собирает список файлов, которые у него есть в данный момент, и некоторую идентифицирующую информацию о версии для каждого файла (номер версии, CRC, дата создания файла orig).

Клиент отправляет этот список на сервер в запросе ajax.

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

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

Когда клиент завершит загрузку, он может создать собственное уведомление о завершении процесса.

В этом процессе есть несколько ключевых аспектов. Во-первых, важна какая-то идентифицирующая информация о версии. Самая простая схема здесь заключается в том, что сервер отслеживает монотонно увеличивающийся номер версии для каждого файла, так что каждый раз, когда файл изменяется на сервере, этот номер версии увеличивается. Когда файл передается клиенту, клиент также знает, что номер версии и номер версии не могут быть потеряны. Если хранить отдельный номер версии неудобно, можно использовать файл modification date/time,, но клиенту придется быть очень осторожным при обновлении собственных файлов, чтобы установить дату/время модификации точно так, как это должно соответствовать дате/времени сервера, а не просто принимать дату/время, в которое он был в последний раз записан локально на клиенте, потому что это не последнее время модификации сервера.

Номера версий также могут храниться в имени файла в виде идентифицируемого суффикса, такого как core-scripts-v11. В этом случае фактическое имя файла для внешнего мира будет core-scripts, но оно будет храниться в репозитории как core-scripts-v11, чтобы указать, что это версия 11. Если этот файл будет изменен на новую версию, эта новая версия станет core-scripts-v12. Любое сравнение этого со списком файлов клиента потребует сравнения как основного имени, так и версий отдельно, а не только необработанных имен файлов.

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

  • Модуль FTP для Node.js, который может синхронизировать файлы?
Читайте так же:
Можно ли синхронизировать яндекс диск с гугл диском

Я ищу модуль для Node.js-предпочтительно доступный через npm, который может синхронизировать файлы с сервером FTP. Модуль ftp имеет все основные функции, но написание полномасштабной системы синхронизации поверх него кажется большой работой.

Я пытаюсь синхронизировать данные между приложением android и сервером php. В своем приложении я использую json веб-сервисов для получения данных с php сервера. Теперь всякий раз, когда в базу данных сервера php добавляются новые поля, мое приложение должно немедленно отражать их. Это своего рода.

Вы ищете клон для dropbox, который будет отслеживать файлы на предмет изменений и так далее, поэтому могу ли я предложить:

Похожие вопросы:

может ли кто-нибудь предложить способ связи между приложением Air(Action script) и сервером node.js? напр. Связь между PHP и Flash(сценарий действия) приложением с использованием AMFPHP BlazeDS для.

Клиент разговаривает с Django, а django использует node.js для выполнения некоторой работы, связанной с javascript, чтобы дать клиенту ответ http. Интересно, как мне установить связь (?) между.

Этот вопрос следует за предыдущим: должен ли я использовать Node.js вместо Rails для реального времени WebApps? Вопрос : Каков наилучший способ связи между приложением Rails и приложением Node.js.

В принципе, мне нужно sharedObject в node.js. При работе с сервером flash media, таким как red5 и клиент flash, вы можете изначально использовать sharedObject, который уведомляет подключенный.

Существует ли какой-либо способ обмена данными (включая объекты) между клиентом и сервером в node.js? Раньше я полагался на модуль под названием now.js, который был разработан для этой цели , но.

Я ищу модуль для Node.js-предпочтительно доступный через npm, который может синхронизировать файлы с сервером FTP. Модуль ftp имеет все основные функции, но написание полномасштабной системы.

Я пытаюсь синхронизировать данные между приложением android и сервером php. В своем приложении я использую json веб-сервисов для получения данных с php сервера. Теперь всякий раз, когда в базу.

Windows Server 2012 R2. Work Folders – синхронизация файлов между устройствами

Начинаем знакомиться с новыми возможностями и ключевыми усовершенствованиями, которые нас ожидают в новом обновлении серверной линейки Microsoft — Windows Server 2012 R2, До даты официального выпуска осталось чуть больше месяца (а это, напомним, случится 18 октября 2013 года). Сегодня речь пойдет о новом функционале Windows Server 2012 R2 под названием Work Folders.

Нередка ситуация, когда работник для работы с корпоративными данными используется больше чем два устройства (например, ноутбук и планшет). В этой ситуации, чтобы пользователи всегда работали с актуальными версиями своих данных, перед ИТ-службой встает задача синхронизации файлов. Для этих целей можно воспользоваться SkyDrive, DropBox или походим сервисом. Однако не всегда возможно хранить данные в «облаке», хотя бы из соображений конфиденциальности и безопасности. Новая функция Windows Server 2012 R2 Work Folders (или «Рабочие папки») – позволяет пользователям синхронизировать свои личные файлы в корпоративной сети с любыми своими устройствами. По сути, Work Folders является аналогом Dropbox для корпоративных пользователей.

Читайте так же:
Что делать если не могу синхронизировать айфон с компьютером

Благодаря «Рабочим папкам» на платформе Windows Server 2012 R2 возможно организовать функциональный и безопасный сервис репликации файлов пользователей между несколькими устройствами. Work Folders на базе файлового сервера позволяет организовать «корпоративный SkyDrive. Помимо всего прочего, к пользовательским данным на корпоративном файловом сервере можно применять такие политики, как квотирование (Quota), блокировка запрещенных типов файлов (File Screening), а также динамический контроль доступа (Dynamic Access Control) и т.д., т.е. полный комплекс мер по обеспечению защиты информации.

Как и Dropbox, Work Folders позволяет хранить копии файлов на стороне сервера и клиента, и при каждом подключении клиента к серверу выполняется синхронизация данных. Благодаря данной функции пользователь может синхронизировать свои рабочие папки со своим мобильным устройством (ноутбуком, планшетом и т.д.) и осуществлять редактирование документов, даже без подключения к корпоративной сети (offline). При следующем соединении с корпоративной сетью клиент Work Folders осуществит синхронизацию изменений.

На данный момент технологию Work Folders поддерживают только устройства под управлением Windows 8.1, в которую клиент Work Folders уже встроен. В ближайшем будущем будет добавлена поддержка популярных мобильных устройств: девайсов на Windows 7, Windows 8, Android, а также iOS.

Служба синхронизации Work Folder должна работать на Windows 2012 R2 с установленной ролью файлового сервера. Work Folder также возможно интегрировать со службой Active Directory Rights Management Services, позволяющей обеспечить защиту пользовательских данных.

Настройка Work Folder на Windows Server 2012 R2

Функционал Work Folders в Windows Server 2012 R2 входит в состав роли File and Storage Services и включить его можно с помощью консоли Server Manager или PowerShell.

При установке функционала Work Folders также будет установлен сервер IIS Web Core, являющийся обязательным компонентом технологии и необходимый для обслуживания клиентов.

1_work_folder_windows_2012_r2

После установки функции, нужно открыть консоль Server Manager ->File Server -> Work Folders и указать каталог, в котором будут храниться «Рабочие папки» пользователей.

2_path_to_work_folder

желательно папку Work Folders сразу расшарить по сети. Права по сети — полный доступ, NTFS права не назначаем .

Следующий шаг – выбор структуры папок. Имена подпапкок (каталоги конечных пользователей сервиса) могут содержать только имена пользователей (псевдонимы) или их полные email адреса.

3_user_folder_structure

есть смысл в тестовом варианте выбрать User Alias.

Затем нужно указать список пользователей и групп, имеющих доступ к данной папке. Если нужно, чтобы у администратора сервера не было доступа к данным пользователей, отметьте флажок «Disable inherited permissions and grant users exclusive access to their files».

4_ork_folder_permission

Можно группу не создавать. В тестовом варианте работает и с обычной учетной записью.

Далее необходимо указать будут ли на клиентских устройствах применяться политики защиты данных, такие как шифрование (на клиенте Windows 8.1 используется EFS) и защита данных паролем.

5_work_folder_win_2012_r2_security_policy

EFS можно и не отмечать.Дома стояла Windows 8.1 со бновлениями за 02-2015, синхронизация сработала.

«Рабочие папки» синхронизируется посредством веб сервера IIS по протоколу HTTPS, поэтому для работы придется настроить на IIS шифрование SSL/TLS. После окончания работы мастера, нужно создать новый сертификат типа Web Server Template, содержащий FQDN имя сервера.

6_iis_certificat

Совет.

  1. Если для подключения предполагается использовать внешний домен, необходимо в соответствующей DNS зоне создать CNAME/ A запись.
  2. Для предоставления удаленного доступа к Work Folders возможно воспользоваться DirectAccess или новой функцией Windows Server 2012 R2 — Web Application Proxy

Сертификат нужно выпустить на Enterprise CA. Важно чтобы ваш клиентский компьютер доверял сертификату.

Как выпустить сертификат:

В консоли CA назначаем на шаблон ВЕБ СЕРВЕР права учетной записи компьютера и учетной записи пользователя Enfoll и Read.

WF -01

Заходим в консоль НА КОМПЬЮТЕРЕ КОТОРЫЙ БУДЕТ СЕРВЕРОМ Work Folders и делаем запрос на сертификат.

Certificates — Personal — New Reqest.

Выбираем Web Server и кнопку Properties.

Заполняем поля CN и DNS.

В поле DNS всавляем ВСЕ возможные имена сертификата.

(*.myfirma.ru, workfolders.myfirma.ru, server1.domen.local, server1):

ОБЯЗАТЕЛЬНО сделайте у вашего провайдера в редакторе ДНС запись тип «А»о внешнем имени подключения. workfolders.myfirma.ru

Если все совсем плохо, тогда попробуйте выпустить сертификат на внешний IP адрес и подключаться вроде как https://200.100.15.45 (возможно сработает).

WF -02

Вставляем Frendli name:

WF -03

делаем отметку что ключ можно экспортировать (может пригодится):

WF -04

Если все хорошо, то будет активна кнопка Enroll

WF -05

И отметив Web Server сертификат можно выпустить:

WF -06

Сертификат будет помещен Certificates — Local Computer — Personal.

Обязательная отметка — Нарисованный «ключик» на самом сертификате (левый верхний уголок).

Если что то пойдет не так, то выпускаем запрос на сертификат, потом импортируем запрос Submin new Request.

Далее сертификат импортируем на наш сервер в Certificates — Local Computer — Personal

WF -07 WF -08

После этого на IIS сертификат можно будет использовать.

Данный сертификат необходимо выбрать в качестве SSLсертификата на сайте IIS.

Читайте так же:
Как отрегулировать ширину экрана компьютера

7_ssl_cert_work_folder

Я опубликовал сервер через TMG по 443 порту.

для этого создал свое определение протокола на 443 порту:

WF -09

WF -10

Внутренний IP адрес сервера в сети:

WF -11

Настройка Work Folder на клиенте

Следующий этап – настройка клиента Work Folder на пользовательском девайсе. Отметим, что для работы «Рабочих папок», клиент не обязательно должен состоять в тот же домене Windows, что и сервер Work Folder.

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

8_work_folder_config_windows8_1

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

9_accept_sec_policy_work_folder

После этого в панели управления появится информация о «Рабочих папках» (объем доступного пространства на сервер, время последней синхронизации, ошибки и т.д.).

Синхронизация немного запаздывает, примерно на 2-5 мин задержка — обычное дело.

10_work_folder_on_windows_8_1

Содержимое «Рабочих папок» доступно их проводника Windows или любого файлового менеджера (по умолчанию Work Folders хранятся в каталоге c:usersusernameWorkFolders).

11_work_folder_on_client

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

Настройка Work Folder с помощью групповой политики

Настроить Work Folder на клиентах возможно также с помощью групповой политик. Это удобно в случае необходимости массовой использования данной технологии на ПК домена. Интересующая нас политика находится в разделе Users Configurations-> Policies > Administrative Templates > Windows Components > Work Folders и называется Specify Work Folders settings. Чтобы задать сервер «Рабочих папок», активируйте эту политику и укажите URL путь к серверу.

12_group_policy_work_folder

Чтобы клиенты настраивали оставшиеся параметры Work Folders автоматически, также активируйте политику Force automatic setup for all users (раздел GPO: Computer Configurations> Policies > Administrative Templates > Windows Components > Work Folders.

Функционал Work Folder разработан Microsoft в рамках общего ИТ тренда под названием BYOD (Bring Your OwnDevice), в концепции которого пользователи могут использоваться свои личные мобильные устройства для прозрачного и безопасного доступа к корпоративным ресурсам. Одно из главных преимуществ концепции BYOD для копаний – отсутствие необходимости обеспечения сотрудников устройствами доступа (ноутбуки, телефоны, планшетные компьютеры), все, что нужно от компании – предоставить пользователям удобные службы удаленного подключений к корпоративной сети и сервисы предоставления корпоративных ресурсов

Читайте так же:
Как синхронизировать iphone с компьютером без потери музыки

Девять функций серверов QNAP, которые могут быть необходимы вашему бизнесу

Ваш бизнес — уже больше, чем пяток компьютеров, но все еще не настолько большой, чтобы выделять под него стойку, заполненную серверами. И информация хранится не только централизовано, но и распределена по компьютерам. Например — проекты в дизайн-бюро хранятся на локальных компьютерах и бэкапятся на сервер. Здесь вам может очень пригодиться объединение расшаренных папок.

Вы создаете одну папку-портал на NAS-е, и папки с других серверов и компьютеров, которые вы объединяете, будут просто вложены в неё, как обычные директории. Таким образом, вы навсегда избавляетесь от ковыряния в сети в попытках вспомнить, на каком хосте какая директория расположена.

6. Виртуальные диски

Обратная функция — виртуальные диски, благодаря которой вы можете подключить любую iSCSI цель в сети в качестве отдельного тома в файловом сервере QNAP. Эти виртуальные диски не могут участвовать в создании RAID-массивов, но с их помощью вы можете расширить пространство сервера и физически вынести с него данные в любое другое место.

Подключение виртуального диска

Виртуальный диск

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

7. RTRR — репликация в реальном времени

Каким бы надежным ни было резервное копирование, оно всегда имеет одну уязвимость — повреждение исходных данных, которые еще не были сохранены, но уже были изменены. И если вы делаете резервную копию каждый день в пять часов, то страшнее всего, если данные теряются в 4-59, а все ваши изменения за день теряются. Эту проблему можно решить, используя репликацию в реальном времени.

Репликация в реальном времени

RTRR

Название говорит само за себя — сервер QNAP отслеживает изменения на удаленной папке и синхронизирует с локальной папкой. Если перед вами ставится задача — синхронизировать данные на двух NAS-ах QNAP, то можете использовать встроенный программный сервер RTRR. Для работы же с любой другой машиной используется FTP/FTPs соединение.

8. Хранение резервных копий в интернете

Современному бизнесу пророчат тотальный переход в «облака», а облачным сервисам приписывают небывалые преимущества. Один из облачных сервисов, который может вам пригодиться, это — сохранение резервных копий в интернете. Нет, мы говорим не о MegaUpload и прочих сервисах, а о таких, где вам гарантируют конфиденциальность, безопасность и возможность хранения больших объёмов информации. Насколько больших? Храните неограниченное количество файлов объёмом до 5 Тб каждый! Вы можете выбрать регион, в котором хранятся ваши данные и никогда его не покидают. На сегодняшний день в списке нет «оффшорных» зон, хотя присутствуют Ирландия, Северная Калифорния, Северная Вирджиния, Сингапур и Токио.

Хранение данных в интернете

Стоимость хранения рассчитывается сложным образом и учитывает количество занятого пространства, уровень надежности их хранения, передачу данных, выполнение команд копирования, удаления и перелистывания категорий. На сайте http://aws.amazon.com/s3/ есть специальный тарифный калькулятор, который поможет понять, сколько вам будет стоить надежное хранение данных.

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

В качестве альтернативы Amazon S3, серверы QNAP поддерживают сервис ElephantDrive, предлагающий неограниченное место на диске за 25 долларов в месяц.

голоса
Рейтинг статьи
Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector