Поиск способа копирования файла, который не блокирует копируемый файл

Я агрегирую вместе данные, которые генерируются в куче разрозненных источников, в смешанной среде различных версий windows (xp / 7) и одного linux (centos). Данные доступны через общие сетевые ресурсы. Данные производятся различным программным обеспечением на каждом положении, создающ и добавляющ к файлам на меняя интервалах. Большинство источников данных являются закрытыми системами, к которым у меня нет административного доступа, что действительно усложняет ситуацию.

Я необходимо периодически подключаться к общим сетевым ресурсам и собирать данные в центральное расположение, используемое для дальнейшего распространения. Данные генерируются и собираются 24/7, в течение нескольких недель. Это будет работать с Windows 2008 сервер.

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

к сожалению, использование vss не вариант, поскольку они не являются томами, которые являются общими.

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

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

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

15
задан Steve
22.03.2023 9:08 Количество просмотров материала 2914
Распечатать страницу

4 ответа

Не уверен, что если XXCOPY может делать то, что вы хотите, так что вы можете прочитать сообщение о его доступ к закрытым файлы. В противном случае, это звучит как XCOPY (и RoboCopy) на стероидах. Не бесплатно для использования в бизнесе, хотя он по-прежнему поддерживается (последняя версия выпущена 27.12.2013)

Addition: документация говорит, что XXCOPY сам не блокирует файл, в то время как он копирует его.

2
отвечен JSanchez 2023-03-23 16:56

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

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

1
отвечен Julian Knight 2023-03-23 19:13

просто добавить еще один вариант, я нашел FastCopy скопировать файлы в общий режим чтения/записи.

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

1
отвечен Steve 2023-03-23 21:30

попробуйте shadowspawn (с robocopy). Это достаточно хорошо.

shadowspawn

Edit: я только что понял, что это 2 года. Простите!

-1
отвечен user4958337 2023-03-23 23:47

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх